Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit b457e2d

Browse files
authored
Refactor make_mock_engine into fl_test (#21585)
1 parent ed0f477 commit b457e2d

6 files changed

+26
-48
lines changed

shell/platform/linux/fl_basic_message_channel_test.cc

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,9 @@
99
#include "flutter/shell/platform/linux/fl_engine_private.h"
1010
#include "flutter/shell/platform/linux/public/flutter_linux/fl_basic_message_channel.h"
1111
#include "flutter/shell/platform/linux/public/flutter_linux/fl_standard_message_codec.h"
12+
#include "flutter/shell/platform/linux/testing/fl_test.h"
1213
#include "flutter/shell/platform/linux/testing/mock_renderer.h"
1314

14-
// Creates a mock engine that responds to platform messages.
15-
static FlEngine* make_mock_engine() {
16-
g_autoptr(FlDartProject) project = fl_dart_project_new();
17-
g_autoptr(FlMockRenderer) renderer = fl_mock_renderer_new();
18-
g_autoptr(FlEngine) engine = fl_engine_new(project, FL_RENDERER(renderer));
19-
g_autoptr(GError) engine_error = nullptr;
20-
EXPECT_TRUE(fl_engine_start(engine, &engine_error));
21-
EXPECT_EQ(engine_error, nullptr);
22-
23-
return static_cast<FlEngine*>(g_object_ref(engine));
24-
}
25-
2615
// Called when the message response is received in the SendMessage test.
2716
static void echo_response_cb(GObject* object,
2817
GAsyncResult* result,

shell/platform/linux/fl_binary_messenger_test.cc

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,9 @@
1010
#include "flutter/shell/platform/linux/fl_binary_messenger_private.h"
1111
#include "flutter/shell/platform/linux/fl_engine_private.h"
1212
#include "flutter/shell/platform/linux/public/flutter_linux/fl_binary_messenger.h"
13+
#include "flutter/shell/platform/linux/testing/fl_test.h"
1314
#include "flutter/shell/platform/linux/testing/mock_renderer.h"
1415

15-
// Creates a mock engine that responds to platform messages.
16-
static FlEngine* make_mock_engine() {
17-
g_autoptr(FlDartProject) project = fl_dart_project_new();
18-
g_autoptr(FlMockRenderer) renderer = fl_mock_renderer_new();
19-
g_autoptr(FlEngine) engine = fl_engine_new(project, FL_RENDERER(renderer));
20-
g_autoptr(GError) engine_error = nullptr;
21-
EXPECT_TRUE(fl_engine_start(engine, &engine_error));
22-
EXPECT_EQ(engine_error, nullptr);
23-
24-
return static_cast<FlEngine*>(g_object_ref(engine));
25-
}
26-
2716
// Checks sending nullptr for a message works.
2817
TEST(FlBinaryMessengerTest, SendNullptrMessage) {
2918
g_autoptr(FlEngine) engine = make_mock_engine();

shell/platform/linux/fl_key_event_plugin_test.cc

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,9 @@
1111
#include "flutter/shell/platform/linux/fl_engine_private.h"
1212
#include "flutter/shell/platform/linux/public/flutter_linux/fl_basic_message_channel.h"
1313
#include "flutter/shell/platform/linux/public/flutter_linux/fl_standard_message_codec.h"
14+
#include "flutter/shell/platform/linux/testing/fl_test.h"
1415
#include "flutter/shell/platform/linux/testing/mock_renderer.h"
1516

16-
// Creates a mock engine that responds to platform messages.
17-
static FlEngine* make_mock_engine() {
18-
g_autoptr(FlDartProject) project = fl_dart_project_new();
19-
g_autoptr(FlMockRenderer) renderer = fl_mock_renderer_new();
20-
g_autoptr(FlEngine) engine = fl_engine_new(project, FL_RENDERER(renderer));
21-
g_autoptr(GError) engine_error = nullptr;
22-
EXPECT_TRUE(fl_engine_start(engine, &engine_error));
23-
EXPECT_EQ(engine_error, nullptr);
24-
25-
return static_cast<FlEngine*>(g_object_ref(engine));
26-
}
27-
2817
const char* expected_value = nullptr;
2918

3019
// Called when the message response is received in the send_key_event test.

shell/platform/linux/fl_method_channel_test.cc

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,9 @@
1111
#include "flutter/shell/platform/linux/public/flutter_linux/fl_basic_message_channel.h"
1212
#include "flutter/shell/platform/linux/public/flutter_linux/fl_method_channel.h"
1313
#include "flutter/shell/platform/linux/public/flutter_linux/fl_standard_method_codec.h"
14+
#include "flutter/shell/platform/linux/testing/fl_test.h"
1415
#include "flutter/shell/platform/linux/testing/mock_renderer.h"
1516

16-
// Creates a mock engine that responds to platform messages.
17-
static FlEngine* make_mock_engine() {
18-
g_autoptr(FlDartProject) project = fl_dart_project_new();
19-
g_autoptr(FlMockRenderer) renderer = fl_mock_renderer_new();
20-
g_autoptr(FlEngine) engine = fl_engine_new(project, FL_RENDERER(renderer));
21-
g_autoptr(GError) engine_error = nullptr;
22-
EXPECT_TRUE(fl_engine_start(engine, &engine_error));
23-
EXPECT_EQ(engine_error, nullptr);
24-
25-
return static_cast<FlEngine*>(g_object_ref(engine));
26-
}
27-
2817
// Called when when the method call response is received in the InvokeMethod
2918
// test.
3019
static void method_response_cb(GObject* object,

shell/platform/linux/testing/fl_test.cc

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11
// Copyright 2013 The Flutter Authors. All rights reserved.
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
4+
// FLUTTER_NOLINT
5+
6+
#include "gtest/gtest.h"
47

58
#include "flutter/shell/platform/linux/testing/fl_test.h"
69

10+
#include "flutter/shell/platform/linux/fl_engine_private.h"
11+
#include "flutter/shell/platform/linux/testing/mock_renderer.h"
12+
713
static uint8_t hex_digit_to_int(char value) {
814
if (value >= '0' && value <= '9')
915
return value - '0';
@@ -39,3 +45,14 @@ gchar* bytes_to_hex_string(GBytes* bytes) {
3945
g_string_append_printf(hex_string, "%02x", data[i]);
4046
return g_string_free(hex_string, FALSE);
4147
}
48+
49+
FlEngine* make_mock_engine() {
50+
g_autoptr(FlDartProject) project = fl_dart_project_new();
51+
g_autoptr(FlMockRenderer) renderer = fl_mock_renderer_new();
52+
g_autoptr(FlEngine) engine = fl_engine_new(project, FL_RENDERER(renderer));
53+
g_autoptr(GError) engine_error = nullptr;
54+
EXPECT_TRUE(fl_engine_start(engine, &engine_error));
55+
EXPECT_EQ(engine_error, nullptr);
56+
57+
return static_cast<FlEngine*>(g_object_ref(engine));
58+
}

shell/platform/linux/testing/fl_test.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
#ifndef FLUTTER_SHELL_PLATFORM_LINUX_FL_TEST_H_
66
#define FLUTTER_SHELL_PLATFORM_LINUX_FL_TEST_H_
77

8+
#include "flutter/shell/platform/linux/public/flutter_linux/fl_engine.h"
9+
810
#include <glib.h>
911
#include <stdint.h>
1012

@@ -18,6 +20,9 @@ GBytes* hex_string_to_bytes(const gchar* hex_string);
1820
// Helper function to convert GBytes into a hexadecimal string (e.g. "01feab")
1921
gchar* bytes_to_hex_string(GBytes* bytes);
2022

23+
// Creates a mock engine that responds to platform messages.
24+
FlEngine* make_mock_engine();
25+
2126
G_END_DECLS
2227

2328
#endif // FLUTTER_SHELL_PLATFORM_LINUX_FL_TEST_H_

0 commit comments

Comments
 (0)