| // Build the unit tests, | 
 |  | 
 | // Build the binary to $(TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) | 
 | // to integrate with auto-test framework. | 
 | cc_test { | 
 |     name: "libgui_test", | 
 |     test_suites: ["device-tests"], | 
 |  | 
 |     clang: true, | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     srcs: [ | 
 |         "BLASTBufferQueue_test.cpp", | 
 |         "BufferItemConsumer_test.cpp", | 
 |         "BufferQueue_test.cpp", | 
 |         "CpuConsumer_test.cpp", | 
 |         "EndToEndNativeInputTest.cpp", | 
 |         "DisplayedContentSampling_test.cpp", | 
 |         "FillBuffer.cpp", | 
 |         "GLTest.cpp", | 
 |         "IGraphicBufferProducer_test.cpp", | 
 |         "Malicious.cpp", | 
 |         "MultiTextureConsumer_test.cpp", | 
 |         "RegionSampling_test.cpp", | 
 |         "StreamSplitter_test.cpp", | 
 |         "SurfaceTextureClient_test.cpp", | 
 |         "SurfaceTextureFBO_test.cpp", | 
 |         "SurfaceTextureGLThreadToGL_test.cpp", | 
 |         "SurfaceTextureGLToGL_test.cpp", | 
 |         "SurfaceTextureGL_test.cpp", | 
 |         "SurfaceTextureMultiContextGL_test.cpp", | 
 |         "Surface_test.cpp", | 
 |         "TextureRenderer.cpp", | 
 |     ], | 
 |  | 
 |     shared_libs: [ | 
 |         "android.hardware.configstore@1.0", | 
 |         "android.hardware.configstore-utils", | 
 |         "libSurfaceFlingerProp", | 
 |         "libbase", | 
 |         "liblog", | 
 |         "libEGL", | 
 |         "libGLESv1_CM", | 
 |         "libGLESv2", | 
 |         "libbinder", | 
 |         "libcutils", | 
 |         "libgui", | 
 |         "libhidlbase", | 
 |         "libinput", | 
 |         "libui", | 
 |         "libutils", | 
 |         "libnativewindow" | 
 |     ], | 
 |  | 
 |     header_libs: ["libsurfaceflinger_headers"], | 
 | } | 
 |  | 
 | // Build the tests that need to run with both 32bit and 64bit. | 
 | cc_test { | 
 |     name: "libgui_multilib_test", | 
 |     test_suites: ["device-tests"], | 
 |  | 
 |     clang: true, | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     srcs: [ | 
 |         "DisplayEventStructLayout_test.cpp", | 
 |     ], | 
 |  | 
 |     shared_libs: [ | 
 |         "libgui", | 
 |     ], | 
 |  | 
 |     compile_multilib: "both", | 
 |  | 
 |     header_libs: ["libsurfaceflinger_headers"], | 
 | } | 
 |  | 
 | // Build a separate binary to $(TARGET_OUT_DATA_NATIVE_TESTS)/$(LOCAL_MODULE) | 
 | // This test has a main method, and requires a separate binary to be built. | 
 | // To add move tests like this, just add additional cc_test statements, | 
 | // as opposed to adding more source files to this one. | 
 | cc_test { | 
 |     name: "SurfaceParcelable_test", | 
 |     test_suites: ["device-tests"], | 
 |  | 
 |     clang: true, | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     srcs: [ | 
 |         "SurfaceParcelable_test.cpp", | 
 |     ], | 
 |  | 
 |     shared_libs: [ | 
 |         "liblog", | 
 |         "libbinder", | 
 |         "libcutils", | 
 |         "libgui", | 
 |         "libui", | 
 |         "libutils", | 
 |         "libbufferhubqueue",  // TODO(b/70046255): Remove these once BufferHub is integrated into libgui. | 
 |         "libpdx_default_transport", | 
 |     ], | 
 |  | 
 |     header_libs: [ | 
 |         "libdvr_headers", | 
 |     ], | 
 | } | 
 |  | 
 | cc_test { | 
 |     name: "SamplingDemo", | 
 |  | 
 |     clang: true, | 
 |     cflags: [ | 
 |         "-Wall", | 
 |         "-Werror", | 
 |     ], | 
 |  | 
 |     srcs: [ | 
 |         "SamplingDemo.cpp", | 
 |     ], | 
 |  | 
 |     shared_libs: [ | 
 |         "libbinder", | 
 |         "libcutils", | 
 |         "libgui", | 
 |         "liblog", | 
 |         "libui", | 
 |         "libutils", | 
 |     ] | 
 | } |