| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 #import "ios/chrome/browser/ui/network_activity_indicator_manager.h" | 5 #import "ios/chrome/browser/ui/network_activity_indicator_manager.h" |
| 6 | 6 |
| 7 #import <UIKit/UIKit.h> | 7 #import <UIKit/UIKit.h> |
| 8 | 8 |
| 9 #include "base/mac/scoped_nsobject.h" | |
| 10 #include "testing/gtest_mac.h" | 9 #include "testing/gtest_mac.h" |
| 11 #include "testing/platform_test.h" | 10 #include "testing/platform_test.h" |
| 12 | 11 |
| 12 #if !defined(__has_feature) || !__has_feature(objc_arc) |
| 13 #error "This file requires ARC support." |
| 14 #endif |
| 15 |
| 13 namespace { | 16 namespace { |
| 14 | 17 |
| 15 NSString* const kNetworkActivityKeyOne = | 18 NSString* const kNetworkActivityKeyOne = |
| 16 @"NetworkActivityIndicatorManagerTest.NetworkActivityIndicatorKeyOne"; | 19 @"NetworkActivityIndicatorManagerTest.NetworkActivityIndicatorKeyOne"; |
| 17 NSString* const kNetworkActivityKeyTwo = | 20 NSString* const kNetworkActivityKeyTwo = |
| 18 @"NetworkActivityIndicatorManagerTest.NetworkActivityIndicatorKeyTwo"; | 21 @"NetworkActivityIndicatorManagerTest.NetworkActivityIndicatorKeyTwo"; |
| 19 | 22 |
| 20 class NetworkActivityIndicatorManagerTest : public PlatformTest { | 23 class NetworkActivityIndicatorManagerTest : public PlatformTest { |
| 21 public: | 24 public: |
| 22 NetworkActivityIndicatorManagerTest() | 25 NetworkActivityIndicatorManagerTest() |
| 23 : manager_([[NetworkActivityIndicatorManager alloc] init]) {} | 26 : manager_([[NetworkActivityIndicatorManager alloc] init]) {} |
| 24 | 27 |
| 25 protected: | 28 protected: |
| 26 void ExpectNetworkActivity(NSUInteger groupOneCount, | 29 void ExpectNetworkActivity(NSUInteger groupOneCount, |
| 27 NSUInteger groupTwoCount) { | 30 NSUInteger groupTwoCount) { |
| 28 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], | 31 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], |
| 29 groupOneCount); | 32 groupOneCount); |
| 30 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], | 33 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], |
| 31 groupTwoCount); | 34 groupTwoCount); |
| 32 EXPECT_EQ([manager_ numTotalNetworkTasks], groupOneCount + groupTwoCount); | 35 EXPECT_EQ([manager_ numTotalNetworkTasks], groupOneCount + groupTwoCount); |
| 33 if (groupOneCount + groupTwoCount > 0U) { | 36 if (groupOneCount + groupTwoCount > 0U) { |
| 34 EXPECT_TRUE([[UIApplication sharedApplication] | 37 EXPECT_TRUE([[UIApplication sharedApplication] |
| 35 isNetworkActivityIndicatorVisible]); | 38 isNetworkActivityIndicatorVisible]); |
| 36 } else { | 39 } else { |
| 37 EXPECT_FALSE([[UIApplication sharedApplication] | 40 EXPECT_FALSE([[UIApplication sharedApplication] |
| 38 isNetworkActivityIndicatorVisible]); | 41 isNetworkActivityIndicatorVisible]); |
| 39 } | 42 } |
| 40 } | 43 } |
| 41 base::scoped_nsobject<NetworkActivityIndicatorManager> manager_; | 44 NetworkActivityIndicatorManager* manager_; |
| 42 }; | 45 }; |
| 43 | 46 |
| 44 TEST_F(NetworkActivityIndicatorManagerTest, TestNumNetworkTasksForGroup) { | 47 TEST_F(NetworkActivityIndicatorManagerTest, TestNumNetworkTasksForGroup) { |
| 45 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 0U); | 48 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 0U); |
| 46 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], 0U); | 49 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], 0U); |
| 47 [manager_ startNetworkTasks:2U forGroup:kNetworkActivityKeyOne]; | 50 [manager_ startNetworkTasks:2U forGroup:kNetworkActivityKeyOne]; |
| 48 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 2U); | 51 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 2U); |
| 49 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], 0U); | 52 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyTwo], 0U); |
| 50 [manager_ startNetworkTasks:3U forGroup:kNetworkActivityKeyTwo]; | 53 [manager_ startNetworkTasks:3U forGroup:kNetworkActivityKeyTwo]; |
| 51 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 2U); | 54 EXPECT_EQ([manager_ numNetworkTasksForGroup:kNetworkActivityKeyOne], 2U); |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 138 ExpectNetworkActivity(5U, 4U); | 141 ExpectNetworkActivity(5U, 4U); |
| 139 [manager_ stopNetworkTasks:2U forGroup:kNetworkActivityKeyTwo]; | 142 [manager_ stopNetworkTasks:2U forGroup:kNetworkActivityKeyTwo]; |
| 140 ExpectNetworkActivity(5U, 2U); | 143 ExpectNetworkActivity(5U, 2U); |
| 141 [manager_ stopNetworkTasks:5U forGroup:kNetworkActivityKeyOne]; | 144 [manager_ stopNetworkTasks:5U forGroup:kNetworkActivityKeyOne]; |
| 142 ExpectNetworkActivity(0U, 2U); | 145 ExpectNetworkActivity(0U, 2U); |
| 143 [manager_ clearNetworkTasksForGroup:kNetworkActivityKeyTwo]; | 146 [manager_ clearNetworkTasksForGroup:kNetworkActivityKeyTwo]; |
| 144 ExpectNetworkActivity(0U, 0U); | 147 ExpectNetworkActivity(0U, 0U); |
| 145 } | 148 } |
| 146 | 149 |
| 147 } // namespace | 150 } // namespace |
| OLD | NEW |