diff options
Diffstat (limited to 'chromium/base/callback_helpers_unittest.cc')
-rw-r--r-- | chromium/base/callback_helpers_unittest.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/chromium/base/callback_helpers_unittest.cc b/chromium/base/callback_helpers_unittest.cc index 82839963795..6c48d7ce4e5 100644 --- a/chromium/base/callback_helpers_unittest.cc +++ b/chromium/base/callback_helpers_unittest.cc @@ -14,6 +14,24 @@ void Increment(int* value) { (*value)++; } +TEST(CallbackHelpersTest, TestResetAndReturn) { + int run_count = 0; + + base::Closure cb = base::Bind(&Increment, &run_count); + EXPECT_EQ(0, run_count); + base::ResetAndReturn(&cb).Run(); + EXPECT_EQ(1, run_count); + EXPECT_FALSE(cb); + + run_count = 0; + + base::OnceClosure cb2 = base::BindOnce(&Increment, &run_count); + EXPECT_EQ(0, run_count); + base::ResetAndReturn(&cb2).Run(); + EXPECT_EQ(1, run_count); + EXPECT_FALSE(cb2); +} + TEST(CallbackHelpersTest, TestScopedClosureRunnerExitScope) { int run_count = 0; { |