blob: 80dba8485a5225f8f07931d2098ef3769924db2d [file] [log] [blame]
// 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 <FlutterMacOS/FlutterMacOS.h>
#import <XCTest/XCTest.h>
@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