@@ -4623,6 +4623,9 @@ TEST_F(ShellTest, RuntimeStageBackendDefaultsToSkSLWithoutImpeller) {
4623
4623
DestroyShell (std::move (shell), task_runners);
4624
4624
}
4625
4625
4626
+ // TODO(dnfield): Enable GL and Vulkan after
4627
+ // https://github.com/flutter/flutter/issues/140419
4628
+ #if SHELL_ENABLE_METAL
4626
4629
TEST_F (ShellTest, RuntimeStageBackendWithImpeller) {
4627
4630
ASSERT_FALSE (DartVMRef::IsInstanceRunning ());
4628
4631
Settings settings = CreateSettingsForFixture ();
@@ -4640,36 +4643,30 @@ TEST_F(ShellTest, RuntimeStageBackendWithImpeller) {
4640
4643
4641
4644
fml::AutoResetWaitableEvent latch;
4642
4645
4643
- std::optional< impeller::Context::BackendType> impeller_backend;
4646
+ impeller::Context::BackendType impeller_backend;
4644
4647
fml::TaskRunner::RunNowOrPostTask (
4645
4648
shell->GetTaskRunners ().GetPlatformTaskRunner (),
4646
4649
[platform_view = shell->GetPlatformView (), &latch, &impeller_backend]() {
4647
4650
auto impeller_context = platform_view->GetImpellerContext ();
4648
- // TODO(dnfield): Enable GL and Vulkan after
4649
- // https://github.com/flutter/flutter/issues/140419
4650
- #if SHELL_ENABLE_METAL
4651
4651
EXPECT_TRUE (impeller_context);
4652
4652
impeller_backend = impeller_context->GetBackendType ();
4653
- #endif
4654
4653
latch.Signal ();
4655
4654
});
4656
4655
latch.Wait ();
4657
4656
4658
4657
AddNativeCallback (
4659
4658
" NotifyNative" , CREATE_NATIVE_ENTRY ([&](auto args) {
4660
4659
auto backend = UIDartState::Current ()->GetRuntimeStageBackend ();
4661
- if (impeller_backend.has_value ()) {
4662
- switch (impeller_backend.value ()) {
4663
- case impeller::Context::BackendType::kMetal :
4664
- EXPECT_EQ (backend, impeller::RuntimeStageBackend::kMetal );
4665
- break ;
4666
- case impeller::Context::BackendType::kOpenGLES :
4667
- EXPECT_EQ (backend, impeller::RuntimeStageBackend::kOpenGLES );
4668
- break ;
4669
- case impeller::Context::BackendType::kVulkan :
4670
- EXPECT_EQ (backend, impeller::RuntimeStageBackend::kVulkan );
4671
- break ;
4672
- }
4660
+ switch (impeller_backend) {
4661
+ case impeller::Context::BackendType::kMetal :
4662
+ EXPECT_EQ (backend, impeller::RuntimeStageBackend::kMetal );
4663
+ break ;
4664
+ case impeller::Context::BackendType::kOpenGLES :
4665
+ EXPECT_EQ (backend, impeller::RuntimeStageBackend::kOpenGLES );
4666
+ break ;
4667
+ case impeller::Context::BackendType::kVulkan :
4668
+ EXPECT_EQ (backend, impeller::RuntimeStageBackend::kVulkan );
4669
+ break ;
4673
4670
}
4674
4671
latch.Signal ();
4675
4672
}));
@@ -4682,6 +4679,7 @@ TEST_F(ShellTest, RuntimeStageBackendWithImpeller) {
4682
4679
4683
4680
DestroyShell (std::move (shell), task_runners);
4684
4681
}
4682
+ #endif // SHELL_ENABLE_METALƒ
4685
4683
4686
4684
} // namespace testing
4687
4685
} // namespace flutter
0 commit comments