Flutter Engine
Loading...
Searching...
No Matches
FlutterEngineTestUtils.h
Go to the documentation of this file.
1
// Copyright 2013 The Flutter Authors. All rights reserved.
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
#ifndef FLUTTER_SHELL_PLATFORM_DARWIN_MACOS_FRAMEWORK_SOURCE_FLUTTERENGINETESTUTILS_H_
6
#define FLUTTER_SHELL_PLATFORM_DARWIN_MACOS_FRAMEWORK_SOURCE_FLUTTERENGINETESTUTILS_H_
7
8
#import "
flutter/shell/platform/darwin/macos/framework/Headers/FlutterEngine.h
"
9
10
#import <OCMock/OCMock.h>
11
12
#include "
flutter/testing/autoreleasepool_test.h
"
13
#include "
flutter/testing/test_dart_native_resolver.h
"
14
#include "gtest/gtest.h"
15
16
namespace
flutter::testing
{
17
18
class
FlutterEngineTest
:
public
AutoreleasePoolTest
{
19
public
:
20
FlutterEngineTest
();
21
22
FlutterEngine
*
GetFlutterEngine
() {
return
engine_; };
23
24
void
SetUp
()
override
;
25
void
TearDown
()
override
;
26
27
void
AddNativeCallback
(
const
char
*
name
, Dart_NativeFunction function);
28
29
static
void
IsolateCreateCallback
(
void
*
user_data
);
30
31
void
ShutDownEngine
();
32
33
private
:
34
inline
static
std::shared_ptr<TestDartNativeResolver> native_resolver_;
35
36
FlutterDartProject
* project_;
37
FlutterEngine
* engine_;
38
39
FML_DISALLOW_COPY_AND_ASSIGN
(
FlutterEngineTest
);
40
};
41
42
// Returns a mock FlutterEngine that is able to work in environments
43
// without a real pasteboard.
44
//
45
// Callers MUST call [mockEngine shutDownEngine] when finished with the returned engine.
46
id
CreateMockFlutterEngine
(NSString* pasteboardString);
47
48
class
MockFlutterEngineTest
:
public
AutoreleasePoolTest
{
49
public
:
50
MockFlutterEngineTest
();
51
52
void
SetUp
()
override
;
53
void
TearDown
()
override
;
54
55
id
GetMockEngine
() {
return
engine_mock_; }
56
57
void
ShutDownEngine
();
58
59
~MockFlutterEngineTest
() {
60
[engine_mock_ shutDownEngine];
61
[engine_mock_ stopMocking];
62
}
63
64
private
:
65
id
engine_mock_;
66
67
FML_DISALLOW_COPY_AND_ASSIGN
(
MockFlutterEngineTest
);
68
};
69
70
}
// namespace flutter::testing
71
72
#endif
// FLUTTER_SHELL_PLATFORM_DARWIN_MACOS_FRAMEWORK_SOURCE_FLUTTERENGINETESTUTILS_H_
autoreleasepool_test.h
flutter::FlutterEngine
Definition
flutter_engine.h:21
flutter::testing::AutoreleasePoolTest
Definition
autoreleasepool_test.h:32
flutter::testing::FlutterEngineTest
Definition
FlutterEngineTestUtils.h:18
flutter::testing::FlutterEngineTest::SetUp
void SetUp() override
Definition
FlutterEngineTestUtils.mm:45
flutter::testing::FlutterEngineTest::IsolateCreateCallback
static void IsolateCreateCallback(void *user_data)
Definition
FlutterEngineTestUtils.mm:68
flutter::testing::FlutterEngineTest::GetFlutterEngine
FlutterEngine * GetFlutterEngine()
Definition
FlutterEngineTestUtils.h:22
flutter::testing::FlutterEngineTest::AddNativeCallback
void AddNativeCallback(const char *name, Dart_NativeFunction function)
Definition
FlutterEngineTestUtils.mm:72
flutter::testing::FlutterEngineTest::TearDown
void TearDown() override
Definition
FlutterEngineTestUtils.mm:57
flutter::testing::FlutterEngineTest::FlutterEngineTest
FlutterEngineTest()
flutter::testing::FlutterEngineTest::ShutDownEngine
void ShutDownEngine()
Definition
FlutterEngineTestUtils.mm:63
flutter::testing::MockFlutterEngineTest
Definition
FlutterEngineTestUtils.h:48
flutter::testing::MockFlutterEngineTest::GetMockEngine
id GetMockEngine()
Definition
FlutterEngineTestUtils.h:55
flutter::testing::MockFlutterEngineTest::~MockFlutterEngineTest
~MockFlutterEngineTest()
Definition
FlutterEngineTestUtils.h:59
flutter::testing::MockFlutterEngineTest::TearDown
void TearDown() override
Definition
FlutterEngineTestUtils.mm:98
flutter::testing::MockFlutterEngineTest::MockFlutterEngineTest
MockFlutterEngineTest()
flutter::testing::MockFlutterEngineTest::SetUp
void SetUp() override
Definition
FlutterEngineTestUtils.mm:94
flutter::testing::MockFlutterEngineTest::ShutDownEngine
void ShutDownEngine()
Definition
FlutterEngineTestUtils.mm:104
FML_DISALLOW_COPY_AND_ASSIGN
#define FML_DISALLOW_COPY_AND_ASSIGN(TypeName)
Definition
macros.h:27
FlutterDartProject
Definition
FlutterDartProject.h:20
FlutterEngine.h
flutter::testing
Definition
native_assets_unittests.cc:10
flutter::testing::CreateMockFlutterEngine
id CreateMockFlutterEngine(NSString *pasteboardString)
Definition
FlutterEngineTestUtils.mm:76
flutter::name
DEF_SWITCHES_START aot vmservice shared library name
Definition
switch_defs.h:27
test_dart_native_resolver.h
user_data
void * user_data
Definition
texture_registrar_unittests.cc:27
shell
platform
darwin
macos
framework
Source
FlutterEngineTestUtils.h
Generated on Thu Nov 6 2025 16:11:26 for Flutter Engine by
1.9.8