OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/bind_helpers.h" | 5 #import "base/mac/bind_objc_block.h" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/bind_helpers.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
10 | 11 |
11 namespace { | 12 namespace { |
12 | 13 |
13 void Increment(int* value) { | 14 TEST(BindObjcBlockTest, TestScopedClosureRunnerExitScope) { |
14 (*value)++; | |
15 } | |
16 | |
17 TEST(BindHelpersTest, TestScopedClosureRunnerExitScope) { | |
18 int run_count = 0; | 15 int run_count = 0; |
| 16 int* ptr = &run_count; |
19 { | 17 { |
20 base::ScopedClosureRunner runner(base::Bind(&Increment, &run_count)); | 18 base::ScopedClosureRunner runner(base::BindBlock(^{ |
| 19 (*ptr)++; |
| 20 })); |
21 EXPECT_EQ(0, run_count); | 21 EXPECT_EQ(0, run_count); |
22 } | 22 } |
23 EXPECT_EQ(1, run_count); | 23 EXPECT_EQ(1, run_count); |
24 } | 24 } |
25 | 25 |
26 TEST(BindHelpersTest, TestScopedClosureRunnerRelease) { | 26 TEST(BindObjcBlockTest, TestScopedClosureRunnerRelease) { |
27 int run_count = 0; | 27 int run_count = 0; |
| 28 int* ptr = &run_count; |
28 base::Closure c; | 29 base::Closure c; |
29 { | 30 { |
30 base::ScopedClosureRunner runner(base::Bind(&Increment, &run_count)); | 31 base::ScopedClosureRunner runner(base::BindBlock(^{ |
| 32 (*ptr)++; |
| 33 })); |
31 c = runner.Release(); | 34 c = runner.Release(); |
32 EXPECT_EQ(0, run_count); | 35 EXPECT_EQ(0, run_count); |
33 } | 36 } |
34 EXPECT_EQ(0, run_count); | 37 EXPECT_EQ(0, run_count); |
35 c.Run(); | 38 c.Run(); |
36 EXPECT_EQ(1, run_count); | 39 EXPECT_EQ(1, run_count); |
37 } | 40 } |
38 | 41 |
39 } // namespace | 42 } // namespace |
OLD | NEW |