Home | History | Annotate | Download | only in browser
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #import <Cocoa/Cocoa.h>
      6 
      7 #include "base/memory/scoped_nsobject.h"
      8 #include "chrome/app/chrome_command_ids.h"
      9 #import "chrome/browser/app_controller_mac.h"
     10 #include "chrome/test/testing_browser_process.h"
     11 #include "testing/platform_test.h"
     12 
     13 class AppControllerTest : public PlatformTest {
     14  private:
     15   ScopedTestingBrowserProcess browser_process_;
     16 };
     17 
     18 TEST_F(AppControllerTest, DockMenu) {
     19   scoped_nsobject<AppController> ac([[AppController alloc] init]);
     20   NSMenu* menu = [ac applicationDockMenu:NSApp];
     21   NSMenuItem* item;
     22 
     23   EXPECT_TRUE(menu);
     24   EXPECT_NE(-1, [menu indexOfItemWithTag:IDC_NEW_WINDOW]);
     25   EXPECT_NE(-1, [menu indexOfItemWithTag:IDC_NEW_INCOGNITO_WINDOW]);
     26   for (item in [menu itemArray]) {
     27     EXPECT_EQ(ac.get(), [item target]);
     28     EXPECT_EQ(@selector(commandFromDock:), [item action]);
     29   }
     30 }
     31