132
132
TEST_F(InputPlatformProbe, stub_platform_not_picked_up_by_default)
136
136
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
137
137
mr::null_input_report(), *stub_prober_report);
139
EXPECT_THAT(platforms, ElementsAre(OfPtrType<mi::evdev::Platform>()));
139
EXPECT_THAT(platform, OfPtrType<mi::evdev::Platform>());
142
142
#ifdef MIR_BUILD_PLATFORM_MESA_X11
143
143
TEST_F(InputPlatformProbe, x11_platform_found_and_used_when_display_connection_works)
146
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
147
mr::null_input_report(), *stub_prober_report);
149
EXPECT_THAT(platforms, UnorderedElementsAre(OfPtrType<mi::evdev::Platform>(), OfPtrType<mi::X::XInputPlatform>()));
146
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
147
mr::null_input_report(), *stub_prober_report);
149
EXPECT_THAT(platform, OfPtrType<mi::X::XInputPlatform>());
152
TEST_F(InputPlatformProbe, when_multiple_x11_platforms_are_eligible_only_one_is_selected)
154
auto const real_lib = mtf::server_platform_path() + "server-mesa-x11.so." MIR_SERVER_GRAPHICS_PLATFORM_ABI_STRING;
155
auto const fake_lib = mtf::server_platform_path() + "server-mesa-x11.so.0";
157
ASSERT_THAT(real_lib, Ne(fake_lib));
158
remove(fake_lib.c_str());
159
ASSERT_THAT(link(real_lib.c_str(), fake_lib.c_str()), Eq(0));
162
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
163
mr::null_input_report(), *stub_prober_report);
165
EXPECT_THAT(platform, OfPtrType<mi::X::XInputPlatform>());
167
remove(fake_lib.c_str());
152
170
TEST_F(InputPlatformProbe, x11_input_platform_not_used_when_vt_specified)
154
172
ON_CALL(mock_options, is_set(StrEq(vt))).WillByDefault(Return(true));
156
174
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
157
175
mr::null_input_report(), *stub_prober_report);
159
EXPECT_THAT(platforms, ElementsAre(OfPtrType<mi::evdev::Platform>()));
177
EXPECT_THAT(platform, OfPtrType<mi::evdev::Platform>());
166
184
ON_CALL(mock_options, is_set(StrEq(platform_input_lib))).WillByDefault(Return(true));
167
185
platform_input_lib_value = mtf::server_input_platform("input-stub.so");
168
186
platform_input_lib_value_as_any = platform_input_lib_value;
170
188
mi::probe_input_platforms(mock_options, mt::fake_shared(stub_emergency), mt::fake_shared(mock_registry),
171
189
mr::null_input_report(), *stub_prober_report);
172
EXPECT_THAT(platforms, ElementsAre(OfPtrType<mtf::StubInputPlatform>()));
190
EXPECT_THAT(platform, OfPtrType<mtf::StubInputPlatform>());