Loading libs/gui/tests/Android.mk +2 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk LOCAL_CLANG := true LOCAL_MODULE := libgui_test LOCAL_MODULE_TAGS := tests Loading libs/gui/tests/BufferQueue_test.cpp +10 −8 Original line number Diff line number Diff line Loading @@ -73,6 +73,8 @@ struct DummyConsumer : public BnConsumerListener { virtual void onSidebandStreamChanged() {} }; static const uint32_t TEST_DATA = 0x12345678u; // XXX: Tests that fork a process to hold the BufferQueue must run before tests // that use a local BufferQueue, or else Binder will get unhappy TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { Loading Loading @@ -122,7 +124,7 @@ TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); IGraphicBufferProducer::QueueBufferInput input(0, false, Loading @@ -136,7 +138,7 @@ TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading Loading @@ -239,7 +241,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnProducerSide) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); int newSlot; Loading @@ -258,7 +260,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnProducerSide) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading Loading @@ -297,7 +299,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnConsumerSide) { ASSERT_EQ(OK, item.mGraphicBuffer->lock( GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); int newSlot; Loading @@ -317,7 +319,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnConsumerSide) { uint32_t* dataOut; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, buffer->unlock()); } Loading @@ -340,7 +342,7 @@ TEST_F(BufferQueueTest, MoveFromConsumerToProducer) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); IGraphicBufferProducer::QueueBufferInput input(0, false, Loading @@ -360,7 +362,7 @@ TEST_F(BufferQueueTest, MoveFromConsumerToProducer) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading libs/gui/tests/CpuConsumer_test.cpp +8 −5 Original line number Diff line number Diff line Loading @@ -94,7 +94,7 @@ protected: mPendingFrames--; } virtual void onFrameAvailable() { virtual void onFrameAvailable(const BufferItem&) { Mutex::Autolock lock(mMutex); mPendingFrames++; mCondition.signal(); Loading Loading @@ -125,7 +125,7 @@ protected: mPendingFrames--; } virtual void onFrameAvailable() { virtual void onFrameAvailable(const BufferItem&) { Mutex::Autolock lock(mMutex); mPendingFrames++; mFrameCondition.signal(); Loading Loading @@ -457,9 +457,12 @@ void configureANW(const sp<ANativeWindow>& anw, const CpuConsumerTestParams& params, int maxBufferSlack) { status_t err; err = native_window_set_buffers_geometry(anw.get(), params.width, params.height, params.format); ASSERT_NO_ERROR(err, "set_buffers_geometry error: "); err = native_window_set_buffers_dimensions(anw.get(), params.width, params.height); ASSERT_NO_ERROR(err, "set_buffers_dimensions error: "); err = native_window_set_buffers_format(anw.get(), params.format); ASSERT_NO_ERROR(err, "set_buffers_format error: "); err = native_window_set_usage(anw.get(), GRALLOC_USAGE_SW_WRITE_OFTEN); Loading libs/gui/tests/IGraphicBufferProducer_test.cpp +23 −26 Original line number Diff line number Diff line Loading @@ -38,22 +38,22 @@ #define TEST_CONTROLLED_BY_APP false #define TEST_PRODUCER_USAGE_BITS (0) // TODO: Make these public constants in a header enum { namespace android { namespace { // Default dimensions before setDefaultBufferSize is called DEFAULT_WIDTH = 1, DEFAULT_HEIGHT = 1, const uint32_t DEFAULT_WIDTH = 1; const uint32_t DEFAULT_HEIGHT = 1; // Default format before setDefaultBufferFormat is called DEFAULT_FORMAT = HAL_PIXEL_FORMAT_RGBA_8888, const PixelFormat DEFAULT_FORMAT = HAL_PIXEL_FORMAT_RGBA_8888; // Default transform hint before setTransformHint is called DEFAULT_TRANSFORM_HINT = 0, }; const uint32_t DEFAULT_TRANSFORM_HINT = 0; namespace android { // TODO: Make these constants in header const int DEFAULT_CONSUMER_USAGE_BITS = 0; namespace { // Parameters for a generic "valid" input for queueBuffer. const int64_t QUEUE_BUFFER_INPUT_TIMESTAMP = 1384888611; const bool QUEUE_BUFFER_INPUT_IS_AUTO_TIMESTAMP = false; Loading Loading @@ -273,15 +273,12 @@ TEST_F(IGraphicBufferProducerTest, Disconnect_ReturnsError) { TEST_F(IGraphicBufferProducerTest, Query_Succeeds) { ASSERT_NO_FATAL_FAILURE(ConnectProducer()); // TODO: Make these constants in header const int DEFAULT_CONSUMER_USAGE_BITS = 0; int value = -1; int32_t value = -1; EXPECT_OK(mProducer->query(NATIVE_WINDOW_WIDTH, &value)); EXPECT_EQ(DEFAULT_WIDTH, value); EXPECT_EQ(DEFAULT_WIDTH, static_cast<uint32_t>(value)); EXPECT_OK(mProducer->query(NATIVE_WINDOW_HEIGHT, &value)); EXPECT_EQ(DEFAULT_HEIGHT, value); EXPECT_EQ(DEFAULT_HEIGHT, static_cast<uint32_t>(value)); EXPECT_OK(mProducer->query(NATIVE_WINDOW_FORMAT, &value)); EXPECT_EQ(DEFAULT_FORMAT, value); Loading @@ -302,7 +299,7 @@ TEST_F(IGraphicBufferProducerTest, Query_ReturnsError) { ASSERT_NO_FATAL_FAILURE(ConnectProducer()); // One past the end of the last 'query' enum value. Update this if we add more enums. const int NATIVE_WINDOW_QUERY_LAST_OFF_BY_ONE = NATIVE_WINDOW_CONSUMER_USAGE_BITS + 1; const int NATIVE_WINDOW_QUERY_LAST_OFF_BY_ONE = NATIVE_WINDOW_DEFAULT_DATASPACE + 1; int value; // What was out of range Loading Loading @@ -369,7 +366,7 @@ TEST_F(IGraphicBufferProducerTest, Queue_Succeeds) { EXPECT_EQ(DEFAULT_WIDTH, width); EXPECT_EQ(DEFAULT_HEIGHT, height); EXPECT_EQ(DEFAULT_TRANSFORM_HINT, transformHint); EXPECT_EQ(1, numPendingBuffers); // since queueBuffer was called exactly once EXPECT_EQ(1u, numPendingBuffers); // since queueBuffer was called exactly once } // Buffer was not in the dequeued state Loading libs/gui/tests/SRGB_test.cpp +9 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,10 @@ #define LOG_TAG "SRGB_test" //#define LOG_NDEBUG 0 // Ignore for this file because it flags every instance of // ASSERT_EQ(GL_NO_ERROR, glGetError()); #pragma clang diagnostic ignored "-Wsign-compare" #include "GLTest.h" #include <math.h> Loading Loading @@ -329,9 +333,9 @@ private: ANativeWindow_Buffer outBuffer; ARect outBufferBounds; mOutputSurface->lock(&outBuffer, &outBufferBounds); ASSERT_EQ(mLockedBuffer.width, outBuffer.width); ASSERT_EQ(mLockedBuffer.height, outBuffer.height); ASSERT_EQ(mLockedBuffer.stride, outBuffer.stride); ASSERT_EQ(mLockedBuffer.width, static_cast<uint32_t>(outBuffer.width)); ASSERT_EQ(mLockedBuffer.height, static_cast<uint32_t>(outBuffer.height)); ASSERT_EQ(mLockedBuffer.stride, static_cast<uint32_t>(outBuffer.stride)); if (mLockedBuffer.format == outBuffer.format) { memcpy(outBuffer.bits, mLockedBuffer.data, bufferSize); Loading Loading @@ -401,7 +405,8 @@ TEST_F(SRGBTest, GLRenderFromSRGBTexture) { // the debug surface if necessary } TEST_F(SRGBTest, RenderToSRGBSurface) { // XXX: Disabled since we don't currently expect this to work TEST_F(SRGBTest, DISABLED_RenderToSRGBSurface) { ASSERT_NO_FATAL_FAILURE(initShaders()); // By default, the first buffer we write into will be RGB Loading Loading
libs/gui/tests/Android.mk +2 −0 Original line number Diff line number Diff line Loading @@ -3,6 +3,8 @@ LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk LOCAL_CLANG := true LOCAL_MODULE := libgui_test LOCAL_MODULE_TAGS := tests Loading
libs/gui/tests/BufferQueue_test.cpp +10 −8 Original line number Diff line number Diff line Loading @@ -73,6 +73,8 @@ struct DummyConsumer : public BnConsumerListener { virtual void onSidebandStreamChanged() {} }; static const uint32_t TEST_DATA = 0x12345678u; // XXX: Tests that fork a process to hold the BufferQueue must run before tests // that use a local BufferQueue, or else Binder will get unhappy TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { Loading Loading @@ -122,7 +124,7 @@ TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); IGraphicBufferProducer::QueueBufferInput input(0, false, Loading @@ -136,7 +138,7 @@ TEST_F(BufferQueueTest, BufferQueueInAnotherProcess) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading Loading @@ -239,7 +241,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnProducerSide) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); int newSlot; Loading @@ -258,7 +260,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnProducerSide) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading Loading @@ -297,7 +299,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnConsumerSide) { ASSERT_EQ(OK, item.mGraphicBuffer->lock( GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); int newSlot; Loading @@ -317,7 +319,7 @@ TEST_F(BufferQueueTest, DetachAndReattachOnConsumerSide) { uint32_t* dataOut; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, buffer->unlock()); } Loading @@ -340,7 +342,7 @@ TEST_F(BufferQueueTest, MoveFromConsumerToProducer) { uint32_t* dataIn; ASSERT_EQ(OK, buffer->lock(GraphicBuffer::USAGE_SW_WRITE_OFTEN, reinterpret_cast<void**>(&dataIn))); *dataIn = 0x12345678; *dataIn = TEST_DATA; ASSERT_EQ(OK, buffer->unlock()); IGraphicBufferProducer::QueueBufferInput input(0, false, Loading @@ -360,7 +362,7 @@ TEST_F(BufferQueueTest, MoveFromConsumerToProducer) { uint32_t* dataOut; ASSERT_EQ(OK, item.mGraphicBuffer->lock(GraphicBuffer::USAGE_SW_READ_OFTEN, reinterpret_cast<void**>(&dataOut))); ASSERT_EQ(*dataOut, 0x12345678); ASSERT_EQ(*dataOut, TEST_DATA); ASSERT_EQ(OK, item.mGraphicBuffer->unlock()); } Loading
libs/gui/tests/CpuConsumer_test.cpp +8 −5 Original line number Diff line number Diff line Loading @@ -94,7 +94,7 @@ protected: mPendingFrames--; } virtual void onFrameAvailable() { virtual void onFrameAvailable(const BufferItem&) { Mutex::Autolock lock(mMutex); mPendingFrames++; mCondition.signal(); Loading Loading @@ -125,7 +125,7 @@ protected: mPendingFrames--; } virtual void onFrameAvailable() { virtual void onFrameAvailable(const BufferItem&) { Mutex::Autolock lock(mMutex); mPendingFrames++; mFrameCondition.signal(); Loading Loading @@ -457,9 +457,12 @@ void configureANW(const sp<ANativeWindow>& anw, const CpuConsumerTestParams& params, int maxBufferSlack) { status_t err; err = native_window_set_buffers_geometry(anw.get(), params.width, params.height, params.format); ASSERT_NO_ERROR(err, "set_buffers_geometry error: "); err = native_window_set_buffers_dimensions(anw.get(), params.width, params.height); ASSERT_NO_ERROR(err, "set_buffers_dimensions error: "); err = native_window_set_buffers_format(anw.get(), params.format); ASSERT_NO_ERROR(err, "set_buffers_format error: "); err = native_window_set_usage(anw.get(), GRALLOC_USAGE_SW_WRITE_OFTEN); Loading
libs/gui/tests/IGraphicBufferProducer_test.cpp +23 −26 Original line number Diff line number Diff line Loading @@ -38,22 +38,22 @@ #define TEST_CONTROLLED_BY_APP false #define TEST_PRODUCER_USAGE_BITS (0) // TODO: Make these public constants in a header enum { namespace android { namespace { // Default dimensions before setDefaultBufferSize is called DEFAULT_WIDTH = 1, DEFAULT_HEIGHT = 1, const uint32_t DEFAULT_WIDTH = 1; const uint32_t DEFAULT_HEIGHT = 1; // Default format before setDefaultBufferFormat is called DEFAULT_FORMAT = HAL_PIXEL_FORMAT_RGBA_8888, const PixelFormat DEFAULT_FORMAT = HAL_PIXEL_FORMAT_RGBA_8888; // Default transform hint before setTransformHint is called DEFAULT_TRANSFORM_HINT = 0, }; const uint32_t DEFAULT_TRANSFORM_HINT = 0; namespace android { // TODO: Make these constants in header const int DEFAULT_CONSUMER_USAGE_BITS = 0; namespace { // Parameters for a generic "valid" input for queueBuffer. const int64_t QUEUE_BUFFER_INPUT_TIMESTAMP = 1384888611; const bool QUEUE_BUFFER_INPUT_IS_AUTO_TIMESTAMP = false; Loading Loading @@ -273,15 +273,12 @@ TEST_F(IGraphicBufferProducerTest, Disconnect_ReturnsError) { TEST_F(IGraphicBufferProducerTest, Query_Succeeds) { ASSERT_NO_FATAL_FAILURE(ConnectProducer()); // TODO: Make these constants in header const int DEFAULT_CONSUMER_USAGE_BITS = 0; int value = -1; int32_t value = -1; EXPECT_OK(mProducer->query(NATIVE_WINDOW_WIDTH, &value)); EXPECT_EQ(DEFAULT_WIDTH, value); EXPECT_EQ(DEFAULT_WIDTH, static_cast<uint32_t>(value)); EXPECT_OK(mProducer->query(NATIVE_WINDOW_HEIGHT, &value)); EXPECT_EQ(DEFAULT_HEIGHT, value); EXPECT_EQ(DEFAULT_HEIGHT, static_cast<uint32_t>(value)); EXPECT_OK(mProducer->query(NATIVE_WINDOW_FORMAT, &value)); EXPECT_EQ(DEFAULT_FORMAT, value); Loading @@ -302,7 +299,7 @@ TEST_F(IGraphicBufferProducerTest, Query_ReturnsError) { ASSERT_NO_FATAL_FAILURE(ConnectProducer()); // One past the end of the last 'query' enum value. Update this if we add more enums. const int NATIVE_WINDOW_QUERY_LAST_OFF_BY_ONE = NATIVE_WINDOW_CONSUMER_USAGE_BITS + 1; const int NATIVE_WINDOW_QUERY_LAST_OFF_BY_ONE = NATIVE_WINDOW_DEFAULT_DATASPACE + 1; int value; // What was out of range Loading Loading @@ -369,7 +366,7 @@ TEST_F(IGraphicBufferProducerTest, Queue_Succeeds) { EXPECT_EQ(DEFAULT_WIDTH, width); EXPECT_EQ(DEFAULT_HEIGHT, height); EXPECT_EQ(DEFAULT_TRANSFORM_HINT, transformHint); EXPECT_EQ(1, numPendingBuffers); // since queueBuffer was called exactly once EXPECT_EQ(1u, numPendingBuffers); // since queueBuffer was called exactly once } // Buffer was not in the dequeued state Loading
libs/gui/tests/SRGB_test.cpp +9 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,10 @@ #define LOG_TAG "SRGB_test" //#define LOG_NDEBUG 0 // Ignore for this file because it flags every instance of // ASSERT_EQ(GL_NO_ERROR, glGetError()); #pragma clang diagnostic ignored "-Wsign-compare" #include "GLTest.h" #include <math.h> Loading Loading @@ -329,9 +333,9 @@ private: ANativeWindow_Buffer outBuffer; ARect outBufferBounds; mOutputSurface->lock(&outBuffer, &outBufferBounds); ASSERT_EQ(mLockedBuffer.width, outBuffer.width); ASSERT_EQ(mLockedBuffer.height, outBuffer.height); ASSERT_EQ(mLockedBuffer.stride, outBuffer.stride); ASSERT_EQ(mLockedBuffer.width, static_cast<uint32_t>(outBuffer.width)); ASSERT_EQ(mLockedBuffer.height, static_cast<uint32_t>(outBuffer.height)); ASSERT_EQ(mLockedBuffer.stride, static_cast<uint32_t>(outBuffer.stride)); if (mLockedBuffer.format == outBuffer.format) { memcpy(outBuffer.bits, mLockedBuffer.data, bufferSize); Loading Loading @@ -401,7 +405,8 @@ TEST_F(SRGBTest, GLRenderFromSRGBTexture) { // the debug surface if necessary } TEST_F(SRGBTest, RenderToSRGBSurface) { // XXX: Disabled since we don't currently expect this to work TEST_F(SRGBTest, DISABLED_RenderToSRGBSurface) { ASSERT_NO_FATAL_FAILURE(initShaders()); // By default, the first buffer we write into will be RGB Loading