1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "sql/test/error_callback_support.h" 6 7 #include "testing/gtest/include/gtest/gtest.h" 8 9 namespace sql { 10 11 void CaptureErrorCallback(int* error_pointer, int error, sql::Statement* stmt) { 12 *error_pointer = error; 13 } 14 15 ScopedErrorCallback::ScopedErrorCallback( 16 sql::Connection* db, 17 const sql::Connection::ErrorCallback& cb) 18 : db_(db) { 19 // Make sure someone isn't trying to nest things. 20 EXPECT_FALSE(db_->has_error_callback()); 21 db_->set_error_callback(cb); 22 } 23 24 ScopedErrorCallback::~ScopedErrorCallback() { 25 db_->reset_error_callback(); 26 } 27 28 } // namespace 29