From ace14e2877f57e22ff48adaecc3315318b7f6901 Mon Sep 17 00:00:00 2001 From: gaaclarke <30870216+gaaclarke@users.noreply.github.com> Date: Fri, 11 Dec 2020 09:40:07 -0800 Subject: [PATCH] Stopped mocking the a flutter engine to make sure we delete the (flutter/engine#23013) FlutterViewController. --- .../Source/FlutterViewControllerTest.mm | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterViewControllerTest.mm b/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterViewControllerTest.mm index 9f4348dd681..06007d72c4d 100644 --- a/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterViewControllerTest.mm +++ b/engine/src/flutter/shell/platform/darwin/ios/framework/Source/FlutterViewControllerTest.mm @@ -101,15 +101,22 @@ typedef enum UIAccessibilityContrast : NSInteger { } - (void)testBinaryMessenger { - id engine = OCMClassMock([FlutterEngine class]); - FlutterViewController* vc = [[FlutterViewController alloc] initWithEngine:engine - nibName:nil - bundle:nil]; - XCTAssertNotNil(vc); - id messenger = OCMProtocolMock(@protocol(FlutterBinaryMessenger)); - OCMStub([engine binaryMessenger]).andReturn(messenger); - XCTAssertEqual(vc.binaryMessenger, messenger); - OCMVerify([engine binaryMessenger]); + __weak FlutterViewController* weakVC; + @autoreleasepool { + id engine = OCMClassMock([FlutterEngine class]); + FlutterViewController* vc = [[FlutterViewController alloc] initWithEngine:engine + nibName:nil + bundle:nil]; + XCTAssertNotNil(vc); + weakVC = vc; + id messenger = OCMProtocolMock(@protocol(FlutterBinaryMessenger)); + OCMStub([engine binaryMessenger]).andReturn(messenger); + XCTAssertEqual(vc.binaryMessenger, messenger); + OCMVerify([engine binaryMessenger]); + // This had to be added to make sure the view controller is deleted. + [engine stopMocking]; + } + XCTAssertNil(weakVC); } #pragma mark - Platform Brightness