Index: chrome/browser/ui/cocoa/browser_window_touch_bar_unittest.mm |
diff --git a/chrome/browser/ui/cocoa/browser_window_touch_bar_unittest.mm b/chrome/browser/ui/cocoa/browser_window_touch_bar_unittest.mm |
new file mode 100644 |
index 0000000000000000000000000000000000000000..92ac48ee8005a1af6a5daba32ef484f3d10bcb63 |
--- /dev/null |
+++ b/chrome/browser/ui/cocoa/browser_window_touch_bar_unittest.mm |
@@ -0,0 +1,58 @@ |
+// Copyright 2017 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#import <Cocoa/Cocoa.h> |
+ |
+#include "base/mac/mac_util.h" |
+#include "base/mac/scoped_nsobject.h" |
+#include "chrome/app/chrome_command_ids.h" |
+#import "chrome/browser/ui/cocoa/browser_window_touch_bar.h" |
+#include "chrome/browser/ui/cocoa/test/cocoa_profile_test.h" |
+#include "testing/gtest/include/gtest/gtest.h" |
+ |
+class BrowserWindowTouchBarUnitTest : public CocoaProfileTest { |
+ public: |
+ void SetUp() override { |
+ CocoaProfileTest::SetUp(); |
+ ASSERT_TRUE(browser()); |
+ browserWindowTouchBar_.reset( |
+ [[BrowserWindowTouchBar alloc] initWithBrowser:browser()]); |
+ } |
+ |
+ void TearDown() override { CocoaProfileTest::TearDown(); } |
+ |
+ base::scoped_nsobject<BrowserWindowTouchBar> browserWindowTouchBar_; |
+}; |
+ |
+TEST_F(BrowserWindowTouchBarUnitTest, TouchBarItems) { |
+ if (!base::mac::IsAtLeastOS10_12()) |
+ return; |
+ |
+ NSTouchBar* touchBar = [browserWindowTouchBar_ makeTouchBar]; |
+ NSArray* touchBarItemIds = [touchBar itemIdentifiers]; |
+ EXPECT_TRUE([touchBarItemIds containsObject:@"BackForwardTouchId"]); |
+ EXPECT_TRUE([touchBarItemIds containsObject:@"ReloadOrStopTouchId"]); |
+ EXPECT_TRUE([touchBarItemIds containsObject:@"SearchTouchId"]); |
+ EXPECT_TRUE([touchBarItemIds containsObject:@"NewTabTouchId"]); |
+ EXPECT_TRUE([touchBarItemIds containsObject:@"StarTouchId"]); |
+} |
+ |
+TEST_F(BrowserWindowTouchBarUnitTest, ReloadOrStopTouchBarItem) { |
+ if (!base::mac::IsAtLeastOS10_12()) |
+ return; |
+ |
+ NSTouchBar* touchBar = [browserWindowTouchBar_ makeTouchBar]; |
+ [browserWindowTouchBar_ setIsPageLoading:NO]; |
+ NSTouchBarItem* item = |
+ [browserWindowTouchBar_ touchBar:touchBar |
+ makeItemForIdentifier:@"ReloadOrStopTouchId"]; |
+ |
+ EXPECT_EQ(IDC_RELOAD, [[item view] tag]); |
+ |
+ [browserWindowTouchBar_ setIsPageLoading:YES]; |
+ item = [browserWindowTouchBar_ touchBar:touchBar |
+ makeItemForIdentifier:@"ReloadOrStopTouchId"]; |
+ |
+ EXPECT_EQ(IDC_STOP, [[item view] tag]); |
+} |