/* * Copyright 2018 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #include <gtest/gtest.h> #include <sched.h> #include <processgroup/sched_policy.h> #include <system/graphics.h> #include "libsurfaceflinger_unittest_main.h" // ------------------------------------------------------------------------ // To pass extra command line arguments to the Google Test executable from // atest, you have to use this somewhat verbose syntax: // // clang-format off // // atest libsurfaceflinger_unittest -- --module-arg libsurfaceflinger_unittest:native-test-flag:<--flag>[:<value>] // // For example: // // atest libsurfaceflinger_unittest -- --module-arg libsurfaceflinger_unittest:native-test-flag:--no-slow // // clang-format on // ------------------------------------------------------------------------ // Set to true if "--no-slow" is passed to the test. bool g_noSlowTests = false; int main(int argc, char **argv) { ::testing::InitGoogleTest(&argc, argv); // The SurfaceFlinger implementation assumes that threads resume // execution as quickly as possible once they become unblocked. // (These same calls are made in main_surfaceflinger.cpp) setpriority(PRIO_PROCESS, 0, HAL_PRIORITY_URGENT_DISPLAY); set_sched_policy(0, SP_FOREGROUND); for (int i = 1; i < argc; i++) { if (strcmp(argv[i], "--no-slow") == 0) { g_noSlowTests = true; } } return RUN_ALL_TESTS(); }