Commit 44c4433a authored by Nazerke's avatar Nazerke Committed by Commit Bot

[iOS][coordinator] Modernize Activity Overlay Coordinator.

This CL modernizes the ActivityOverlayCoordinator to use the superclass
-initWithBaseViewController:browser:  initializer.

Also this CL updates unit tests for Activity Overlay Coordinator.

Bug: 1029346
Change-Id: I3e16373e7096355c7be9b1a7b1df53f1de4cb0c0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2019030
Commit-Queue: Nazerke Kalidolda <nazerke@google.com>
Auto-Submit: Nazerke Kalidolda <nazerke@google.com>
Reviewed-by: default avatarMark Cogan <marq@chromium.org>
Cr-Commit-Position: refs/heads/master@{#736921}
parent 0a9c8204
...@@ -4190,8 +4190,9 @@ NSString* const kBrowserViewControllerSnackbarCategory = ...@@ -4190,8 +4190,9 @@ NSString* const kBrowserViewControllerSnackbarCategory =
[self.activityOverlayCoordinator stop]; [self.activityOverlayCoordinator stop];
self.activityOverlayCoordinator = nil; self.activityOverlayCoordinator = nil;
} else if (!self.activityOverlayCoordinator) { } else if (!self.activityOverlayCoordinator) {
self.activityOverlayCoordinator = self.activityOverlayCoordinator = [[ActivityOverlayCoordinator alloc]
[[ActivityOverlayCoordinator alloc] initWithBaseViewController:self]; initWithBaseViewController:self
browser:self.browser];
[self.activityOverlayCoordinator start]; [self.activityOverlayCoordinator start];
} }
} }
......
...@@ -63,6 +63,7 @@ source_set("unit_tests") { ...@@ -63,6 +63,7 @@ source_set("unit_tests") {
":selector_coordinator", ":selector_coordinator",
"//base", "//base",
"//base/test:test_support", "//base/test:test_support",
"//ios/chrome/browser/main:test_support",
"//ios/chrome/test:test_support", "//ios/chrome/test:test_support",
"//testing/gtest", "//testing/gtest",
"//third_party/ocmock", "//third_party/ocmock",
......
...@@ -10,6 +10,15 @@ ...@@ -10,6 +10,15 @@
// Coordinator for displaying an activity indicator overlay over the current // Coordinator for displaying an activity indicator overlay over the current
// context. // context.
@interface ActivityOverlayCoordinator : ChromeCoordinator @interface ActivityOverlayCoordinator : ChromeCoordinator
// Unavailable, use -initWithBaseViewController:browser:.
- (instancetype)initWithBaseViewController:(UIViewController*)viewController
NS_UNAVAILABLE;
// Unavailable, use -initWithBaseViewController:browser:.
- (instancetype)initWithBaseViewController:(UIViewController*)viewController
browserState:(ChromeBrowserState*)browserState
NS_UNAVAILABLE;
@end @end
#endif // IOS_CHROME_BROWSER_UI_ELEMENTS_ACTIVITY_OVERLAY_COORDINATOR_H_ #endif // IOS_CHROME_BROWSER_UI_ELEMENTS_ACTIVITY_OVERLAY_COORDINATOR_H_
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
#import "ios/chrome/browser/ui/elements/activity_overlay_coordinator.h" #import "ios/chrome/browser/ui/elements/activity_overlay_coordinator.h"
#include "base/test/task_environment.h"
#include "ios/chrome/browser/main/test_browser.h"
#import "ios/chrome/browser/ui/elements/activity_overlay_view_controller.h" #import "ios/chrome/browser/ui/elements/activity_overlay_view_controller.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
#import "testing/gtest_mac.h" #import "testing/gtest_mac.h"
...@@ -18,12 +20,15 @@ using ActivityOverlayCoordinatorTest = PlatformTest; ...@@ -18,12 +20,15 @@ using ActivityOverlayCoordinatorTest = PlatformTest;
// Tests that invoking start and stop on the coordinator presents and dismisses // Tests that invoking start and stop on the coordinator presents and dismisses
// the activity overlay view, respectively. // the activity overlay view, respectively.
TEST_F(ActivityOverlayCoordinatorTest, StartAndStop) { TEST_F(ActivityOverlayCoordinatorTest, StartAndStop) {
base::test::TaskEnvironment task_environment_;
__weak UIView* overlay_view; __weak UIView* overlay_view;
@autoreleasepool { @autoreleasepool {
UIViewController* base_view_controller = [[UIViewController alloc] init]; UIViewController* base_view_controller = [[UIViewController alloc] init];
std::unique_ptr<Browser> browser_ = std::make_unique<TestBrowser>();
ActivityOverlayCoordinator* coordinator = ActivityOverlayCoordinator* coordinator =
[[ActivityOverlayCoordinator alloc] [[ActivityOverlayCoordinator alloc]
initWithBaseViewController:base_view_controller]; initWithBaseViewController:base_view_controller
browser:browser_.get()];
EXPECT_EQ(0u, [base_view_controller.childViewControllers count]); EXPECT_EQ(0u, [base_view_controller.childViewControllers count]);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment