From f09465d1119f58e293671ba7dc760f1edec50477 Mon Sep 17 00:00:00 2001 From: Stan Rokita Date: Wed, 2 Oct 2019 11:07:16 -0700 Subject: [PATCH] MH2 | Add makeFMQ helpers to HalProxy_test Bug: 136511617 Test: Ran the tests with success. Change-Id: Ide35e39529193696f3fb8d5898e9a3daf15b1630 --- sensors/2.0/multihal/tests/HalProxy_test.cpp | 70 +++++++++----------- 1 file changed, 32 insertions(+), 38 deletions(-) diff --git a/sensors/2.0/multihal/tests/HalProxy_test.cpp b/sensors/2.0/multihal/tests/HalProxy_test.cpp index ad1b96fc78..fa527c9209 100644 --- a/sensors/2.0/multihal/tests/HalProxy_test.cpp +++ b/sensors/2.0/multihal/tests/HalProxy_test.cpp @@ -132,6 +132,10 @@ void ackWakeupEventsToHalProxy(size_t numEvents, std::unique_ptr& eventQueue, EventFlag* eventQueueFlag); +std::unique_ptr makeEventFMQ(size_t size); + +std::unique_ptr makeWakelockFMQ(size_t size); + /** * Construct and return a HIDL Event type thats sensorHandle refers to a proximity sensor * which is a wakeup type sensor. @@ -278,10 +282,8 @@ TEST(HalProxyTest, PostSingleNonWakeupEvent) { AllSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -297,10 +299,8 @@ TEST(HalProxyTest, PostMultipleNonWakeupEvent) { AllSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -315,10 +315,8 @@ TEST(HalProxyTest, PostSingleWakeupEvent) { AllSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -343,10 +341,8 @@ TEST(HalProxyTest, PostMultipleWakeupEvents) { AllSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -371,10 +367,8 @@ TEST(HalProxyTest, PostEventsMultipleSubhals) { AllSensorsSubHal subHal1, subHal2; std::vector subHals{&subHal1, &subHal2}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -394,10 +388,8 @@ TEST(HalProxyTest, PostEventsDelayedWrite) { AllSensorsSubHal subHal1, subHal2; std::vector subHals{&subHal1, &subHal2}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -424,10 +416,8 @@ TEST(HalProxyTest, PostEventsMultipleSubhalsThreaded) { AllSensorsSubHal subHal1, subHal2; std::vector subHals{&subHal1, &subHal2}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -448,10 +438,8 @@ TEST(HalProxyTest, DestructingWithEventsPendingOnBackgroundThreadTest) { AllSensorsSubHal subHal; std::vector subHals{&subHal}; - std::unique_ptr eventQueue = - std::make_unique(kQueueSize, true); - std::unique_ptr wakeLockQueue = - std::make_unique(kQueueSize, true); + std::unique_ptr eventQueue = makeEventFMQ(kQueueSize); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(kQueueSize); ::android::sp callback = new SensorsCallback(); HalProxy proxy(subHals); proxy.initialize(*eventQueue->getDesc(), *wakeLockQueue->getDesc(), callback); @@ -473,9 +461,8 @@ TEST(HalProxyTest, DynamicSensorsConnectedTest) { AddAndRemoveDynamicSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = std::make_unique(0, true); - std::unique_ptr wakeLockQueue = - std::make_unique(0, true); + std::unique_ptr eventQueue = makeEventFMQ(0); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(0); std::vector sensorsToConnect; std::vector sensorHandlesToExpect; @@ -502,9 +489,8 @@ TEST(HalProxyTest, DynamicSensorsDisconnectedTest) { AddAndRemoveDynamicSensorsSubHal subHal; std::vector subHals{&subHal}; HalProxy proxy(subHals); - std::unique_ptr eventQueue = std::make_unique(0, true); - std::unique_ptr wakeLockQueue = - std::make_unique(0, true); + std::unique_ptr eventQueue = makeEventFMQ(0); + std::unique_ptr wakeLockQueue = makeWakelockFMQ(0); std::vector sensorsToConnect; std::vector sensorHandlesToExpect; @@ -593,6 +579,14 @@ bool readEventsOutOfQueue(size_t numEvents, std::unique_ptr& kReadBlockingTimeout, eventQueueFlag); } +std::unique_ptr makeEventFMQ(size_t size) { + return std::make_unique(size, true); +} + +std::unique_ptr makeWakelockFMQ(size_t size) { + return std::make_unique(size, true); +} + Event makeProximityEvent() { Event event; event.timestamp = 0xFF00FF00;