blob: 3d7ed4f49235590b41ae5d0e5d91d845a25b7de8 [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include "shell/platform/android/flutter_main.h"
#include "third_party/googletest/googlemock/include/gmock/gmock-nice-strict.h"
namespace flutter {
namespace testing {
TEST(AndroidPlatformView, SelectsVulkanBasedOnApiLevel) {
Settings settings;
settings.enable_software_rendering = false;
settings.enable_impeller = true;
int api_level = android_get_device_api_level();
EXPECT_GT(api_level, 0);
if (api_level >= 29) {
EXPECT_EQ(FlutterMain::SelectedRenderingAPI(settings),
AndroidRenderingAPI::kImpellerVulkan);
} else {
EXPECT_EQ(FlutterMain::SelectedRenderingAPI(settings),
AndroidRenderingAPI::kSkiaOpenGLES);
}
}
TEST(AndroidPlatformView, SoftwareRenderingNotSupportedWithImpeller) {
Settings settings;
settings.enable_software_rendering = true;
settings.enable_impeller = true;
ASSERT_DEATH(FlutterMain::SelectedRenderingAPI(settings), "");
}
} // namespace testing
} // namespace flutter