List:Commits« Previous MessageNext Message »
From:uwendel Date:January 8 2008 3:47pm
Subject:PHP mysqlnd svn commit: r1195 - trunk/tests/ext/pdo_mysql
View as plain text  
Author: uwendel
Date: 2008-01-08 16:47:11 +0100 (Tue, 08 Jan 2008)
New Revision: 1195

Modified:
   trunk/tests/ext/pdo_mysql/pdo_mysql_commit.phpt
Log:
Nothing fancy, we have the "fancy" stuff in pdo_transaction_transitions.phpt and
pdo_mysql_begintransaction.phpt



Modified: trunk/tests/ext/pdo_mysql/pdo_mysql_commit.phpt
===================================================================
--- trunk/tests/ext/pdo_mysql/pdo_mysql_commit.phpt	2008-01-08 15:25:11 UTC (rev 1194)
+++ trunk/tests/ext/pdo_mysql/pdo_mysql_commit.phpt	2008-01-08 15:47:11 UTC (rev 1195)
@@ -28,6 +28,50 @@
 				$db->errorCode(), implode(' ', $db->errorInfo()));
 		}
 
+		// pdo_transaction_transitions should check this as well...
+		// ... just to be sure the most basic stuff really works we check it again...
+		if (1 !== ($tmp = $db->getAttribute(PDO::ATTR_AUTOCOMMIT)))
+			printf("[003] According to the manual we should be back to autocommit mode, got
%s/%s\n",
+				gettype($tmp), var_export($tmp, true));
+
+		if (true !== ($tmp = $db->beginTransaction()))
+			printf("[004] Expecting true, got %s/%s\n", gettype($tmp), $tmp);
+
+		$db->exec('INSERT INTO test(id, label) VALUES (100, "z")');
+
+		if (true !== ($tmp = $db->commit()))
+			printf("[005] No commit allowed? [%s] %s\n",
+				$db->errorCode(), implode(' ', $db->errorInfo()));
+
+		// a weak test without unicode etc. - lets leave that to dedicated tests
+		$stmt = $db->query('SELECT id, label FROM test WHERE id = 100');
+		$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+		if (!isset($rows[0]['label']) || ($rows[0]['label'] != 'z')) {
+			printf("[006] Record data is strange, dumping rows\n");
+			var_dump($rows);
+		}
+
+		// Ok, lets check MyISAM resp. any other non-transactional engine
+		// pdo_mysql_begin_transaction has more on this, quick check only
+		$db = MySQLPDOTest::factory();
+		MySQLPDOTest::createTestTable($db, 'MyISAM');
+
+		if (true !== ($tmp = $db->beginTransaction()))
+			printf("[007] Expecting true, got %s/%s\n", gettype($tmp), $tmp);
+
+		$db->exec('INSERT INTO test(id, label) VALUES (100, "z")');
+		if (true !== ($tmp = $db->commit()))
+			printf("[008] No commit allowed? [%s] %s\n",
+				$db->errorCode(), implode(' ', $db->errorInfo()));
+
+		// a weak test without unicode etc. - lets leave that to dedicated tests
+		$stmt = $db->query('SELECT id, label FROM test WHERE id = 100');
+		$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
+		if (!isset($rows[0]['label']) || ($rows[0]['label'] != 'z')) {
+			printf("[009] Record data is strange, dumping rows\n");
+			var_dump($rows);
+		}
+
 	} catch (PDOException $e) {
 		printf("[002] %s, [%s] %s\n",
 			$e->getMessage(),

Thread
PHP mysqlnd svn commit: r1195 - trunk/tests/ext/pdo_mysqluwendel8 Jan