This repository was archived by the owner on Feb 25, 2025. It is now read-only.
File tree 3 files changed +143
-71
lines changed
shell/platform/darwin/macos/framework/Source 3 files changed +143
-71
lines changed Original file line number Diff line number Diff line change 5
5
#import " flutter/shell/platform/darwin/macos/framework/Headers/FlutterEngine.h"
6
6
7
7
#import < OCMock/OCMock.h>
8
+
9
+ #include " flutter/testing/autoreleasepool_test.h"
8
10
#include " flutter/testing/test_dart_native_resolver.h"
9
11
#include " gtest/gtest.h"
10
12
@@ -36,6 +38,30 @@ class FlutterEngineTest : public ::testing::Test {
36
38
37
39
// Returns a mock FlutterEngine that is able to work in environments
38
40
// without a real pasteboard.
41
+ //
42
+ // Callers MUST call [mockEngine shutDownEngine] when finished with the returned engine.
39
43
id CreateMockFlutterEngine (NSString * pasteboardString);
40
44
45
+ class MockFlutterEngineTest : public AutoreleasePoolTest {
46
+ public:
47
+ MockFlutterEngineTest ();
48
+
49
+ void SetUp () override;
50
+ void TearDown () override;
51
+
52
+ id GetMockEngine () { return engine_mock_; }
53
+
54
+ void ShutDownEngine ();
55
+
56
+ ~MockFlutterEngineTest () {
57
+ [engine_mock_ shutDownEngine ];
58
+ [engine_mock_ stopMocking ];
59
+ }
60
+
61
+ private:
62
+ id engine_mock_;
63
+
64
+ FML_DISALLOW_COPY_AND_ASSIGN (MockFlutterEngineTest);
65
+ };
66
+
41
67
} // namespace flutter::testing
Original file line number Diff line number Diff line change @@ -67,4 +67,21 @@ id CreateMockFlutterEngine(NSString* pasteboardString) {
67
67
}
68
68
}
69
69
70
+ MockFlutterEngineTest::MockFlutterEngineTest () = default ;
71
+
72
+ void MockFlutterEngineTest::SetUp () {
73
+ engine_mock_ = CreateMockFlutterEngine (@" " );
74
+ }
75
+
76
+ void MockFlutterEngineTest::TearDown () {
77
+ [engine_mock_ shutDownEngine ];
78
+ [engine_mock_ stopMocking ];
79
+ engine_mock_ = nil ;
80
+ }
81
+
82
+ void MockFlutterEngineTest::ShutDownEngine () {
83
+ [engine_mock_ shutDownEngine ];
84
+ engine_mock_ = nil ;
85
+ }
86
+
70
87
} // namespace flutter::testing
You can’t perform that action at this time.
0 commit comments