| Index: sql/statement_unittest.cc
|
| diff --git a/sql/statement_unittest.cc b/sql/statement_unittest.cc
|
| index b6b6aa8b5f9b4c184271151d1f1e0ec2397bbd9a..e8e7b0182ced3e41592276b5545188e6a538b6fd 100644
|
| --- a/sql/statement_unittest.cc
|
| +++ b/sql/statement_unittest.cc
|
| @@ -120,3 +120,24 @@ TEST_F(SQLStatementTest, BasicErrorCallback) {
|
| EXPECT_EQ(SQLITE_MISMATCH, sqlite_error());
|
| reset_error();
|
| }
|
| +
|
| +TEST_F(SQLStatementTest, ResetWithoutClearingBoundVariables) {
|
| + ASSERT_TRUE(db().Execute("CREATE TABLE foo (a, b)"));
|
| + ASSERT_TRUE(db().Execute("INSERT INTO foo (a, b) VALUES (3, 12)"));
|
| + ASSERT_TRUE(db().Execute("INSERT INTO foo (a, b) VALUES (4, 13)"));
|
| +
|
| + sql::Statement s(db().GetUniqueStatement("SELECT b FROM foo ORDER BY a ASC"));
|
| + ASSERT_TRUE(s.Step());
|
| + EXPECT_EQ(12, s.ColumnInt(0));
|
| + ASSERT_TRUE(s.Step());
|
| + EXPECT_EQ(13, s.ColumnInt(0));
|
| + EXPECT_FALSE(s.Step());
|
| +
|
| + s.ResetWithoutClearingBoundVariables();
|
| + // Verify that we can get all rows again.
|
| + ASSERT_TRUE(s.Step());
|
| + EXPECT_EQ(12, s.ColumnInt(0));
|
| + ASSERT_TRUE(s.Step());
|
| + EXPECT_EQ(13, s.ColumnInt(0));
|
| + EXPECT_FALSE(s.Step());
|
| +}
|
|
|