blob: 01eb7eab90c69763b8b9bad404f8212867e3d366 [file] [log] [blame]
Lloyd Piquee967d482018-08-31 11:04:49 -07001// Copyright 2018 The Android Open Source Project
Lloyd Piquef58625d2017-12-19 13:22:33 -08002//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15cc_test {
16 name: "libsurfaceflinger_unittest",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -080017 defaults: ["surfaceflinger_defaults"],
Lloyd Piquef58625d2017-12-19 13:22:33 -080018 test_suites: ["device-tests"],
Lloyd Piquee967d482018-08-31 11:04:49 -070019 sanitize: {
20 // Using the address sanitizer not only helps uncover issues in the code
21 // covered by the tests, but also covers some of the tricky injection of
22 // fakes the unit tests currently do.
Lloyd Pique70d91362018-10-18 16:02:55 -070023 //
24 // Note: If you get an runtime link error like:
25 //
26 // CANNOT LINK EXECUTABLE "/data/local/tmp/libsurfaceflinger_unittest": library "libclang_rt.asan-aarch64-android.so" not found
27 //
28 // it is because the address sanitizer shared objects are not installed
29 // by default in the system image.
30 //
31 // You can either "make dist tests" before flashing, or set this
32 // option to false temporarily.
Lloyd Piquee967d482018-08-31 11:04:49 -070033 address: true,
34 },
Lloyd Piquef58625d2017-12-19 13:22:33 -080035 srcs: [
36 ":libsurfaceflinger_sources",
Lloyd Pique067fe1e2018-12-06 19:44:13 -080037 "libsurfaceflinger_unittest_main.cpp",
Valerie Hau64499682019-04-10 11:04:29 -070038 "CachingTest.cpp",
Mikael Pessa2e1608f2019-07-19 11:25:35 -070039 "CompositionTest.cpp",
Ady Abraham50c202a2019-03-14 11:44:38 -070040 "DispSyncSourceTest.cpp",
Dominik Laskowskie9ef7c42018-03-12 19:34:30 -070041 "DisplayIdentificationTest.cpp",
Marin Shalamanov0f10d0d2020-08-06 20:04:06 +020042 "DisplayIdGeneratorTest.cpp",
Lloyd Piquef58625d2017-12-19 13:22:33 -080043 "DisplayTransactionTest.cpp",
Marin Shalamanov07b1ff32020-10-07 16:57:22 +020044 "DisplayDevice_GetBestColorModeTest.cpp",
45 "DisplayDevice_SetProjectionTest.cpp",
Lloyd Pique24b0a482018-03-09 18:52:26 -080046 "EventThreadTest.cpp",
Alec Mouriadebf5c2021-01-05 12:57:36 -080047 "FpsReporterTest.cpp",
Marin Shalamanove8a663d2020-11-24 17:48:00 +010048 "FpsTest.cpp",
Adithya Srinivasanf279e042020-08-17 14:56:27 -070049 "FrameTimelineTest.cpp",
Lloyd Pique4603f3c2020-02-11 12:06:56 -080050 "HWComposerTest.cpp",
Ana Krulecf2c006d2019-06-21 15:37:07 -070051 "OneShotTimerTest.cpp",
Marin Shalamanov1bc43ee2020-11-20 16:56:52 +010052 "LayerHistoryTest.cpp",
Marin Shalamanov2045d5b2020-12-28 18:11:41 +010053 "LayerInfoTest.cpp",
Evan Rosky1f6d6d52018-12-06 10:47:26 -080054 "LayerMetadataTest.cpp",
Ady Abraham55fa7272020-09-30 19:19:27 -070055 "MessageQueueTest.cpp",
Marin Shalamanov07b1ff32020-10-07 16:57:22 +020056 "SurfaceFlinger_CreateDisplayTest.cpp",
57 "SurfaceFlinger_DestroyDisplayTest.cpp",
58 "SurfaceFlinger_GetDisplayNativePrimariesTest.cpp",
59 "SurfaceFlinger_HandleTransactionLockedTest.cpp",
60 "SurfaceFlinger_NotifyPowerBoostTest.cpp",
61 "SurfaceFlinger_OnHotplugReceivedTest.cpp",
62 "SurfaceFlinger_OnInitializeDisplaysTest.cpp",
63 "SurfaceFlinger_SetDisplayStateTest.cpp",
64 "SurfaceFlinger_SetPowerModeInternalTest.cpp",
65 "SurfaceFlinger_SetupNewDisplayDeviceInternalTest.cpp",
Ana Krulec0c8cd522018-08-31 12:27:28 -070066 "SchedulerTest.cpp",
Ana Krulec434c22d2018-11-28 13:48:36 +010067 "SchedulerUtilsTest.cpp",
Ady Abraham60e42ea2020-03-09 19:17:31 -070068 "SetFrameRateTest.cpp",
Alec Mouri0a1cc962019-03-14 12:33:02 -070069 "RefreshRateConfigsTest.cpp",
Ana Krulecc84d09b2019-11-02 23:10:29 +010070 "RefreshRateSelectionTest.cpp",
Ana Krulec4593b692019-01-11 22:07:25 -080071 "RefreshRateStatsTest.cpp",
Kevin DuBoisbb27bcd2019-04-02 14:34:35 -070072 "RegionSamplingTest.cpp",
Yiwei Zhang16faa5d2018-11-13 18:12:59 -080073 "TimeStatsTest.cpp",
Mikael Pessa90092f42019-08-26 17:22:04 -070074 "FrameTracerTest.cpp",
Ady Abrahamb491c902020-08-15 15:47:56 -070075 "TimerTest.cpp",
Valerie Haud251afb2019-03-29 14:19:02 -070076 "TransactionApplicationTest.cpp",
Adithya Srinivasanb238cd52021-02-04 17:54:05 +000077 "TransactionFrameTracerTest.cpp",
Adithya Srinivasanb9a7dab2021-01-14 23:49:46 +000078 "TransactionSurfaceFrameTest.cpp",
Kevin DuBoisa41be6a2019-09-09 11:06:33 -070079 "StrongTypingTest.cpp",
Kevin DuBoise4f27a82019-11-12 11:41:41 -080080 "VSyncDispatchTimerQueueTest.cpp",
Kevin DuBoiscc27b502019-11-13 09:40:07 -080081 "VSyncDispatchRealtimeTest.cpp",
Dominik Laskowskia93a5312020-07-23 15:10:03 -070082 "VsyncModulatorTest.cpp",
Kevin DuBois1678e2c2019-08-22 12:26:24 -070083 "VSyncPredictorTest.cpp",
Kevin DuBoisb2501ba2019-11-12 14:20:29 -080084 "VSyncReactorTest.cpp",
Ady Abrahamc581d3c2020-08-06 17:34:27 -070085 "VsyncConfigurationTest.cpp",
Lloyd Piquecbe00012018-02-02 15:40:42 -080086 "mock/DisplayHardware/MockComposer.cpp",
Michael Wright5d22d4f2018-06-21 02:50:34 +010087 "mock/DisplayHardware/MockPowerAdvisor.cpp",
Lloyd Piquecbe00012018-02-02 15:40:42 -080088 "mock/MockEventThread.cpp",
Adithya Srinivasan01189672020-10-20 14:23:05 -070089 "mock/MockFrameTimeline.cpp",
Ady Abraham8cb21882020-08-26 18:22:05 -070090 "mock/MockFrameTracer.cpp",
Lloyd Piquecbe00012018-02-02 15:40:42 -080091 "mock/MockMessageQueue.cpp",
92 "mock/MockNativeWindowSurface.cpp",
93 "mock/MockSurfaceInterceptor.cpp",
Alec Mourifb571ea2019-01-24 18:42:10 -080094 "mock/MockTimeStats.cpp",
Ady Abraham8cb21882020-08-26 18:22:05 -070095 "mock/MockVsyncController.cpp",
96 "mock/MockVSyncTracker.cpp",
Lloyd Piquecbe00012018-02-02 15:40:42 -080097 "mock/system/window/MockNativeWindow.cpp",
Lloyd Piquef58625d2017-12-19 13:22:33 -080098 ],
99 static_libs: [
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800100 "android.hardware.graphics.composer@2.1",
101 "android.hardware.graphics.composer@2.2",
102 "android.hardware.graphics.composer@2.3",
103 "android.hardware.graphics.composer@2.4",
104 "android.hardware.power@1.0",
105 "android.hardware.power@1.1",
106 "android.hardware.power@1.2",
107 "android.hardware.power@1.3",
Lloyd Pique70d91362018-10-18 16:02:55 -0700108 "libcompositionengine_mocks",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800109 "libcompositionengine",
Adithya Srinivasanf279e042020-08-17 14:56:27 -0700110 "libframetimeline",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800111 "libgmock",
Lloyd Pique1ebe0902019-10-04 14:47:13 -0700112 "libgui_mocks",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800113 "liblayers_proto",
Mikael Pessa2e1608f2019-07-19 11:25:35 -0700114 "libperfetto_client_experimental",
Lloyd Pique3823e7b2018-10-18 16:58:10 -0700115 "librenderengine_mocks",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800116 "librenderengine",
117 "libserviceutils",
118 "libtimestats",
119 "libtimestats_proto",
120 "libtrace_proto",
Mikael Pessa2e1608f2019-07-19 11:25:35 -0700121 "perfetto_trace_protos",
122 ],
123 shared_libs: [
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800124 "android.hardware.configstore-utils",
125 "android.hardware.configstore@1.0",
126 "android.hardware.configstore@1.1",
127 "android.hardware.graphics.allocator@2.0",
128 "android.hardware.graphics.allocator@3.0",
129 "android.hardware.graphics.common@1.2",
Jeongik Cha830c5002021-01-28 00:49:48 +0900130 "android.hardware.power-V1-cpp",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800131 "libbase",
132 "libbinder",
133 "libcutils",
134 "libEGL",
135 "libfmq",
136 "libGLESv1_CM",
137 "libGLESv2",
138 "libgui",
139 "libhidlbase",
140 "libinput",
141 "liblog",
142 "libnativewindow",
143 "libprocessgroup",
144 "libprotobuf-cpp-lite",
Alec Mouri37384342020-01-02 17:23:37 -0800145 "libprotoutil",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800146 "libstatslog",
Alec Mouri8e2f31b2020-01-16 22:04:35 +0000147 "libstatssocket",
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800148 "libSurfaceFlingerProp",
149 "libsync",
150 "libui",
151 "libutils",
152 "libstatspull",
Lloyd Piquef58625d2017-12-19 13:22:33 -0800153 ],
154 header_libs: [
Vishnu Nairdf6a4f62020-11-11 20:25:34 -0800155 "android.hardware.graphics.composer@2.1-command-buffer",
156 "android.hardware.graphics.composer@2.2-command-buffer",
157 "android.hardware.graphics.composer@2.3-command-buffer",
158 "android.hardware.graphics.composer@2.4-command-buffer",
Lloyd Piquef58625d2017-12-19 13:22:33 -0800159 "libsurfaceflinger_headers",
160 ],
161}