From cc7da26f44c8359c186a7ce23298ee72d2a74896 Mon Sep 17 00:00:00 2001 From: Phillip Pan Date: Wed, 14 Jun 2023 17:14:02 -0700 Subject: [PATCH] test RCTHost doesn't leak memory (#37896) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/37896 Changelog: [Internal] example usage of the memory test utilities Reviewed By: cipolleschi Differential Revision: D46625917 fbshipit-source-id: 379a76e59fb58cc4e5972195df167c52170f5e4c --- .../react/bridgeless/iostests/RCTHostTests.mm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/react-native/ReactCommon/react/bridgeless/iostests/RCTHostTests.mm b/packages/react-native/ReactCommon/react/bridgeless/iostests/RCTHostTests.mm index be05d7a97ab..bffd646b0ba 100644 --- a/packages/react-native/ReactCommon/react/bridgeless/iostests/RCTHostTests.mm +++ b/packages/react-native/ReactCommon/react/bridgeless/iostests/RCTHostTests.mm @@ -7,6 +7,7 @@ #import +#import #import #import #import @@ -47,6 +48,8 @@ static ShimRCTInstance *shimmedRCTInstance; { [super setUp]; + RCTAutoReleasePoolPush(); + shimmedRCTInstance = [ShimRCTInstance new]; _mockHostDelegate = OCMProtocolMock(@protocol(RCTHostDelegate)); @@ -60,6 +63,14 @@ static ShimRCTInstance *shimmedRCTInstance; - (void)tearDown { + RCTAutoReleasePoolPop(); + + _subject = nil; + XCTAssertEqual(RCTGetRetainCount(_subject), 0); + + _mockHostDelegate = nil; + XCTAssertEqual(RCTGetRetainCount(_mockHostDelegate), 0); + [shimmedRCTInstance reset]; gLogCalledTimes = 0; gLogMessage = nil;