diff options
author | michaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-23 00:09:05 +0000 |
---|---|---|
committer | michaelbai@chromium.org <michaelbai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-23 00:09:05 +0000 |
commit | 44ad7d90529b53baf308b5fdbb8b8e5f654fe987 (patch) | |
tree | 23cbfb0c7133f359651f6827f788ce82291095f0 /sql/connection_unittest.cc | |
parent | 6a0335930245ffee564b966851e662af95f53296 (diff) | |
download | chromium_src-44ad7d90529b53baf308b5fdbb8b8e5f654fe987.zip chromium_src-44ad7d90529b53baf308b5fdbb8b8e5f654fe987.tar.gz chromium_src-44ad7d90529b53baf308b5fdbb8b8e5f654fe987.tar.bz2 |
Reset needs_rollback after rollback.
Fix issue that the transaction can not be started if the nesting_transaction rollback.
BUG=
TEST=Add a new test to cover this case. Also pass the existing tests.
Review URL: http://codereview.chromium.org/9839021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128352 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sql/connection_unittest.cc')
-rw-r--r-- | sql/connection_unittest.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sql/connection_unittest.cc b/sql/connection_unittest.cc index 9718ce0..58734ac 100644 --- a/sql/connection_unittest.cc +++ b/sql/connection_unittest.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -120,3 +120,12 @@ TEST_F(SQLConnectionTest, GetLastInsertRowId) { ASSERT_TRUE(s.Step()); EXPECT_EQ(12, s.ColumnInt(0)); } + +TEST_F(SQLConnectionTest, Rollback) { + ASSERT_TRUE(db().BeginTransaction()); + ASSERT_TRUE(db().BeginTransaction()); + EXPECT_EQ(2, db().transaction_nesting()); + db().RollbackTransaction(); + EXPECT_FALSE(db().CommitTransaction()); + EXPECT_TRUE(db().BeginTransaction()); +} |