Annotation of embedaddon/php/ext/pdo_mysql/tests/bug_45120.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #45120 (PDOStatement->execute() returns true then false for same statement)
                      3: --SKIPIF--
                      4: <?php
                      5: if (!extension_loaded('pdo') || !extension_loaded('pdo_mysql')) die('skip not loaded');
                      6: require dirname(__FILE__) . '/config.inc';
                      7: require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc';
                      8: PDOTest::skip();
                      9: ?>
                     10: --FILE--
                     11: <?php
                     12: require dirname(__FILE__) . '/config.inc';
                     13: require dirname(__FILE__) . '/../../../ext/pdo/tests/pdo_test.inc';
                     14: $db = PDOTest::test_factory(dirname(__FILE__) . '/common.phpt');
                     15: 
                     16: function bug_45120($db) {
                     17: 
                     18:        $stmt = $db->prepare("SELECT 1 AS 'one'");
                     19:        if (true !== $stmt->execute())
                     20:                printf("[001] Execute has failed: %s\n", var_export($stmt->errorInfo(), true));
                     21: 
                     22:        $res = $stmt->fetch(PDO::FETCH_ASSOC);
                     23:        if ($res['one'] != 1)
                     24:                printf("[002] Wrong results: %s\n", var_export($res, true));
                     25: 
                     26:        if (true !== $stmt->execute())
                     27:                printf("[003] Execute has failed: %s\n", var_export($stmt->errorInfo(), true));
                     28: 
                     29:        $res = $stmt->fetch(PDO::FETCH_ASSOC);
                     30:        if ($res['one'] != 1)
                     31:                printf("[004] Wrong results: %s\n", var_export($res, true));
                     32: 
                     33: }
                     34: 
                     35: print "Emulated Prepared Statements\n";
                     36: $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 1);
                     37: bug_45120($db);
                     38: 
                     39: print "Native Prepared Statements\n";
                     40: $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, 0);
                     41: bug_45120($db);
                     42: 
                     43: print "done!";
                     44: ?>
                     45: --EXPECT--
                     46: Emulated Prepared Statements
                     47: Native Prepared Statements
                     48: done!

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>