Loading camera/provider/aidl/vts/VtsAidlHalCameraProvider_TargetTest.cpp +13 −6 Original line number Original line Diff line number Diff line Loading @@ -163,7 +163,7 @@ TEST_P(CameraAidlTest, systemCameraTest) { std::map<std::string, std::vector<SystemCameraKind>> hiddenPhysicalIdToLogicalMap; std::map<std::string, std::vector<SystemCameraKind>> hiddenPhysicalIdToLogicalMap; for (const auto& name : cameraDeviceNames) { for (const auto& name : cameraDeviceNames) { std::shared_ptr<ICameraDevice> device; std::shared_ptr<ICameraDevice> device; ALOGI("getCameraCharacteristics: Testing camera device %s", name.c_str()); ALOGI("systemCameraTest: Testing camera device %s", name.c_str()); ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device); ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device); ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); ASSERT_NE(device, nullptr); ASSERT_NE(device, nullptr); Loading Loading @@ -196,13 +196,14 @@ TEST_P(CameraAidlTest, systemCameraTest) { break; break; } } } } // For hidden physical cameras, collect their associated logical cameras // For hidden physical cameras, collect their associated logical cameras // and store the system camera kind. // and store the system camera kind. if (!isPublicId) { if (!isPublicId) { auto it = hiddenPhysicalIdToLogicalMap.find(physicalId); auto it = hiddenPhysicalIdToLogicalMap.find(physicalId); if (it == hiddenPhysicalIdToLogicalMap.end()) { if (it == hiddenPhysicalIdToLogicalMap.end()) { hiddenPhysicalIdToLogicalMap.insert(std::make_pair( hiddenPhysicalIdToLogicalMap.insert(std::make_pair( physicalId, std::vector<SystemCameraKind>(systemCameraKind))); physicalId, std::vector<SystemCameraKind>({systemCameraKind}))); } else { } else { it->second.push_back(systemCameraKind); it->second.push_back(systemCameraKind); } } Loading Loading @@ -1450,6 +1451,7 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { for (const auto& name : cameraDeviceNames) { for (const auto& name : cameraDeviceNames) { std::string version, deviceId; std::string version, deviceId; ALOGI("processMultiCaptureRequestPreview: Test device %s", name.c_str()); ASSERT_TRUE(matchDeviceName(name, mProviderType, &version, &deviceId)); ASSERT_TRUE(matchDeviceName(name, mProviderType, &version, &deviceId)); CameraMetadata metadata; CameraMetadata metadata; Loading @@ -1466,6 +1468,7 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); continue; continue; } } ASSERT_EQ(Status::OK, rc); std::unordered_set<std::string> physicalIds; std::unordered_set<std::string> physicalIds; rc = getPhysicalCameraIds(staticMeta, &physicalIds); rc = getPhysicalCameraIds(staticMeta, &physicalIds); Loading Loading @@ -1521,10 +1524,14 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { Stream previewStream; Stream previewStream; std::shared_ptr<DeviceCb> cb; std::shared_ptr<DeviceCb> cb; configurePreviewStreams(name, mProvider, &previewThreshold, physicalIds, &mSession, configurePreviewStreams( &previewStream, &halStreams /*out*/, name, mProvider, &previewThreshold, physicalIds, &mSession, &previewStream, &supportsPartialResults /*out*/, &partialResultCount /*out*/, &halStreams /*out*/, &supportsPartialResults /*out*/, &partialResultCount /*out*/, &useHalBufManager /*out*/, &cb /*out*/, 0 /*streamConfigCounter*/); &useHalBufManager /*out*/, &cb /*out*/, 0 /*streamConfigCounter*/, true); if (mSession == nullptr) { // stream combination not supported by HAL, skip test for device continue; } ::aidl::android::hardware::common::fmq::MQDescriptor< ::aidl::android::hardware::common::fmq::MQDescriptor< int8_t, aidl::android::hardware::common::fmq::SynchronizedReadWrite> int8_t, aidl::android::hardware::common::fmq::SynchronizedReadWrite> Loading camera/provider/aidl/vts/camera_aidl_test.cpp +10 −1 Original line number Original line Diff line number Diff line Loading @@ -1564,6 +1564,7 @@ void CameraAidlTest::openEmptyDeviceSession(const std::string& name, ASSERT_NE(*session, nullptr); ASSERT_NE(*session, nullptr); ret = (*device)->getCameraCharacteristics(staticMeta); ret = (*device)->getCameraCharacteristics(staticMeta); ASSERT_TRUE(ret.isOk()); } } void CameraAidlTest::openEmptyInjectionSession(const std::string& name, void CameraAidlTest::openEmptyInjectionSession(const std::string& name, Loading Loading @@ -2474,7 +2475,7 @@ void CameraAidlTest::configurePreviewStreams( std::shared_ptr<ICameraDeviceSession>* session, Stream* previewStream, std::shared_ptr<ICameraDeviceSession>* session, Stream* previewStream, std::vector<HalStream>* halStreams, bool* supportsPartialResults, std::vector<HalStream>* halStreams, bool* supportsPartialResults, int32_t* partialResultCount, bool* useHalBufManager, std::shared_ptr<DeviceCb>* cb, int32_t* partialResultCount, bool* useHalBufManager, std::shared_ptr<DeviceCb>* cb, int32_t streamConfigCounter) { int32_t streamConfigCounter, bool allowUnsupport) { ASSERT_NE(nullptr, session); ASSERT_NE(nullptr, session); ASSERT_NE(nullptr, halStreams); ASSERT_NE(nullptr, halStreams); ASSERT_NE(nullptr, previewStream); ASSERT_NE(nullptr, previewStream); Loading Loading @@ -2561,6 +2562,14 @@ void CameraAidlTest::configurePreviewStreams( bool supported = false; bool supported = false; ret = device->isStreamCombinationSupported(config, &supported); ret = device->isStreamCombinationSupported(config, &supported); ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); if (allowUnsupport && !supported) { // stream combination not supported. return null session ret = (*session)->close(); ASSERT_TRUE(ret.isOk()); *session = nullptr; return; } ASSERT_TRUE(supported) << "Stream combination must be supported."; config.streamConfigCounter = streamConfigCounter; config.streamConfigCounter = streamConfigCounter; std::vector<HalStream> halConfigs; std::vector<HalStream> halConfigs; Loading camera/provider/aidl/vts/camera_aidl_test.h +2 −1 Original line number Original line Diff line number Diff line Loading @@ -190,7 +190,8 @@ class CameraAidlTest : public ::testing::TestWithParam<std::string> { std::shared_ptr<ICameraDeviceSession>* session /*out*/, Stream* previewStream /*out*/, std::shared_ptr<ICameraDeviceSession>* session /*out*/, Stream* previewStream /*out*/, std::vector<HalStream>* halStreams /*out*/, bool* supportsPartialResults /*out*/, std::vector<HalStream>* halStreams /*out*/, bool* supportsPartialResults /*out*/, int32_t* partialResultCount /*out*/, bool* useHalBufManager /*out*/, int32_t* partialResultCount /*out*/, bool* useHalBufManager /*out*/, std::shared_ptr<DeviceCb>* cb /*out*/, int32_t streamConfigCounter = 0); std::shared_ptr<DeviceCb>* cb /*out*/, int32_t streamConfigCounter = 0, bool allowUnsupport = false); void configurePreviewStream( void configurePreviewStream( const std::string& name, const std::shared_ptr<ICameraProvider>& provider, const std::string& name, const std::shared_ptr<ICameraProvider>& provider, Loading Loading
camera/provider/aidl/vts/VtsAidlHalCameraProvider_TargetTest.cpp +13 −6 Original line number Original line Diff line number Diff line Loading @@ -163,7 +163,7 @@ TEST_P(CameraAidlTest, systemCameraTest) { std::map<std::string, std::vector<SystemCameraKind>> hiddenPhysicalIdToLogicalMap; std::map<std::string, std::vector<SystemCameraKind>> hiddenPhysicalIdToLogicalMap; for (const auto& name : cameraDeviceNames) { for (const auto& name : cameraDeviceNames) { std::shared_ptr<ICameraDevice> device; std::shared_ptr<ICameraDevice> device; ALOGI("getCameraCharacteristics: Testing camera device %s", name.c_str()); ALOGI("systemCameraTest: Testing camera device %s", name.c_str()); ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device); ndk::ScopedAStatus ret = mProvider->getCameraDeviceInterface(name, &device); ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); ASSERT_NE(device, nullptr); ASSERT_NE(device, nullptr); Loading Loading @@ -196,13 +196,14 @@ TEST_P(CameraAidlTest, systemCameraTest) { break; break; } } } } // For hidden physical cameras, collect their associated logical cameras // For hidden physical cameras, collect their associated logical cameras // and store the system camera kind. // and store the system camera kind. if (!isPublicId) { if (!isPublicId) { auto it = hiddenPhysicalIdToLogicalMap.find(physicalId); auto it = hiddenPhysicalIdToLogicalMap.find(physicalId); if (it == hiddenPhysicalIdToLogicalMap.end()) { if (it == hiddenPhysicalIdToLogicalMap.end()) { hiddenPhysicalIdToLogicalMap.insert(std::make_pair( hiddenPhysicalIdToLogicalMap.insert(std::make_pair( physicalId, std::vector<SystemCameraKind>(systemCameraKind))); physicalId, std::vector<SystemCameraKind>({systemCameraKind}))); } else { } else { it->second.push_back(systemCameraKind); it->second.push_back(systemCameraKind); } } Loading Loading @@ -1450,6 +1451,7 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { for (const auto& name : cameraDeviceNames) { for (const auto& name : cameraDeviceNames) { std::string version, deviceId; std::string version, deviceId; ALOGI("processMultiCaptureRequestPreview: Test device %s", name.c_str()); ASSERT_TRUE(matchDeviceName(name, mProviderType, &version, &deviceId)); ASSERT_TRUE(matchDeviceName(name, mProviderType, &version, &deviceId)); CameraMetadata metadata; CameraMetadata metadata; Loading @@ -1466,6 +1468,7 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); continue; continue; } } ASSERT_EQ(Status::OK, rc); std::unordered_set<std::string> physicalIds; std::unordered_set<std::string> physicalIds; rc = getPhysicalCameraIds(staticMeta, &physicalIds); rc = getPhysicalCameraIds(staticMeta, &physicalIds); Loading Loading @@ -1521,10 +1524,14 @@ TEST_P(CameraAidlTest, processMultiCaptureRequestPreview) { Stream previewStream; Stream previewStream; std::shared_ptr<DeviceCb> cb; std::shared_ptr<DeviceCb> cb; configurePreviewStreams(name, mProvider, &previewThreshold, physicalIds, &mSession, configurePreviewStreams( &previewStream, &halStreams /*out*/, name, mProvider, &previewThreshold, physicalIds, &mSession, &previewStream, &supportsPartialResults /*out*/, &partialResultCount /*out*/, &halStreams /*out*/, &supportsPartialResults /*out*/, &partialResultCount /*out*/, &useHalBufManager /*out*/, &cb /*out*/, 0 /*streamConfigCounter*/); &useHalBufManager /*out*/, &cb /*out*/, 0 /*streamConfigCounter*/, true); if (mSession == nullptr) { // stream combination not supported by HAL, skip test for device continue; } ::aidl::android::hardware::common::fmq::MQDescriptor< ::aidl::android::hardware::common::fmq::MQDescriptor< int8_t, aidl::android::hardware::common::fmq::SynchronizedReadWrite> int8_t, aidl::android::hardware::common::fmq::SynchronizedReadWrite> Loading
camera/provider/aidl/vts/camera_aidl_test.cpp +10 −1 Original line number Original line Diff line number Diff line Loading @@ -1564,6 +1564,7 @@ void CameraAidlTest::openEmptyDeviceSession(const std::string& name, ASSERT_NE(*session, nullptr); ASSERT_NE(*session, nullptr); ret = (*device)->getCameraCharacteristics(staticMeta); ret = (*device)->getCameraCharacteristics(staticMeta); ASSERT_TRUE(ret.isOk()); } } void CameraAidlTest::openEmptyInjectionSession(const std::string& name, void CameraAidlTest::openEmptyInjectionSession(const std::string& name, Loading Loading @@ -2474,7 +2475,7 @@ void CameraAidlTest::configurePreviewStreams( std::shared_ptr<ICameraDeviceSession>* session, Stream* previewStream, std::shared_ptr<ICameraDeviceSession>* session, Stream* previewStream, std::vector<HalStream>* halStreams, bool* supportsPartialResults, std::vector<HalStream>* halStreams, bool* supportsPartialResults, int32_t* partialResultCount, bool* useHalBufManager, std::shared_ptr<DeviceCb>* cb, int32_t* partialResultCount, bool* useHalBufManager, std::shared_ptr<DeviceCb>* cb, int32_t streamConfigCounter) { int32_t streamConfigCounter, bool allowUnsupport) { ASSERT_NE(nullptr, session); ASSERT_NE(nullptr, session); ASSERT_NE(nullptr, halStreams); ASSERT_NE(nullptr, halStreams); ASSERT_NE(nullptr, previewStream); ASSERT_NE(nullptr, previewStream); Loading Loading @@ -2561,6 +2562,14 @@ void CameraAidlTest::configurePreviewStreams( bool supported = false; bool supported = false; ret = device->isStreamCombinationSupported(config, &supported); ret = device->isStreamCombinationSupported(config, &supported); ASSERT_TRUE(ret.isOk()); ASSERT_TRUE(ret.isOk()); if (allowUnsupport && !supported) { // stream combination not supported. return null session ret = (*session)->close(); ASSERT_TRUE(ret.isOk()); *session = nullptr; return; } ASSERT_TRUE(supported) << "Stream combination must be supported."; config.streamConfigCounter = streamConfigCounter; config.streamConfigCounter = streamConfigCounter; std::vector<HalStream> halConfigs; std::vector<HalStream> halConfigs; Loading
camera/provider/aidl/vts/camera_aidl_test.h +2 −1 Original line number Original line Diff line number Diff line Loading @@ -190,7 +190,8 @@ class CameraAidlTest : public ::testing::TestWithParam<std::string> { std::shared_ptr<ICameraDeviceSession>* session /*out*/, Stream* previewStream /*out*/, std::shared_ptr<ICameraDeviceSession>* session /*out*/, Stream* previewStream /*out*/, std::vector<HalStream>* halStreams /*out*/, bool* supportsPartialResults /*out*/, std::vector<HalStream>* halStreams /*out*/, bool* supportsPartialResults /*out*/, int32_t* partialResultCount /*out*/, bool* useHalBufManager /*out*/, int32_t* partialResultCount /*out*/, bool* useHalBufManager /*out*/, std::shared_ptr<DeviceCb>* cb /*out*/, int32_t streamConfigCounter = 0); std::shared_ptr<DeviceCb>* cb /*out*/, int32_t streamConfigCounter = 0, bool allowUnsupport = false); void configurePreviewStream( void configurePreviewStream( const std::string& name, const std::shared_ptr<ICameraProvider>& provider, const std::string& name, const std::shared_ptr<ICameraProvider>& provider, Loading