// Copyright 2014 The Flutter 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 #import @interface RunnerTests : XCTestCase @end @implementation RunnerTests - (void)testMenu { NSMenu *applicationMenu = ((FlutterAppDelegate *)NSApplication.sharedApplication.delegate).applicationMenu; XCTAssertEqual(applicationMenu.numberOfItems, 11); XCTAssertEqualObjects([applicationMenu itemAtIndex:0].title, @"About flutter_gallery"); NSMenu *mainMenu = NSApplication.sharedApplication.mainMenu; XCTAssertEqual([mainMenu indexOfItemWithSubmenu:applicationMenu], 0); // The number of submenu items changes depending on what the OS decides to inject. // Just check there's at least one per menu item. XCTAssertGreaterThanOrEqual([mainMenu itemWithTitle:@"Edit"].submenu.numberOfItems, 1); XCTAssertGreaterThanOrEqual([mainMenu itemWithTitle:@"View"].submenu.numberOfItems, 1); XCTAssertGreaterThanOrEqual([mainMenu itemWithTitle:@"Window"].submenu.numberOfItems, 1); NSMenu *helpMenu = NSApplication.sharedApplication.helpMenu; XCTAssertNotNil(helpMenu); // Only the help menu search text box. XCTAssertEqual(helpMenu.numberOfItems, 0); } @end