Merge "Camera: Skip result/request metadata match for physical camera" into pi-dev
diff --git a/tests/camera/src/android/hardware/camera2/cts/CaptureResultTest.java b/tests/camera/src/android/hardware/camera2/cts/CaptureResultTest.java
index bdf175e..5923fe2 100644
--- a/tests/camera/src/android/hardware/camera2/cts/CaptureResultTest.java
+++ b/tests/camera/src/android/hardware/camera2/cts/CaptureResultTest.java
@@ -405,7 +405,7 @@
null/*cameraId*/, i);
for (String physicalId : requestedPhysicalIds) {
validateOneCaptureResult(errorCollector, physicalWaiverKeys.get(physicalId),
- allKeys, requestBuilder, physicalCaptureResults.get(physicalId),
+ allKeys, null/*requestBuilder*/, physicalCaptureResults.get(physicalId),
physicalId, i);
}
}
@@ -415,10 +415,12 @@
List<CaptureResult.Key<?>> skippedKeys, List<CaptureResult.Key<?>> allKeys,
CaptureRequest.Builder requestBuilder, CaptureResult result, String cameraId,
int resultCount) throws Exception {
- String failMsg = "Failed capture result " + resultCount + " test ";
+ String failMsg = "Failed capture result " + resultCount + " test";
+ String cameraIdString = " ";
if (cameraId != null) {
- failMsg += "for camera " + cameraId + " ";
+ cameraIdString += "for physical camera " + cameraId;
}
+ boolean verifyMatchRequest = (requestBuilder != null);
for (CaptureResult.Key<?> key : allKeys) {
if (!skippedKeys.contains(key)) {
/**
@@ -427,41 +429,46 @@
* becomes symmetric (b/14059883). Then below check can be wrapped into
* a generic function.
*/
- String msg = failMsg + "for key " + key.getName();
- if (key.equals(CaptureResult.CONTROL_AE_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.CONTROL_AE_MODE),
- result.get(CaptureResult.CONTROL_AE_MODE));
- } else if (key.equals(CaptureResult.CONTROL_AF_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.CONTROL_AF_MODE),
- result.get(CaptureResult.CONTROL_AF_MODE));
- } else if (key.equals(CaptureResult.CONTROL_AWB_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.CONTROL_AWB_MODE),
- result.get(CaptureResult.CONTROL_AWB_MODE));
- } else if (key.equals(CaptureResult.CONTROL_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.CONTROL_MODE),
- result.get(CaptureResult.CONTROL_MODE));
- } else if (key.equals(CaptureResult.STATISTICS_FACE_DETECT_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.STATISTICS_FACE_DETECT_MODE),
- result.get(CaptureResult.STATISTICS_FACE_DETECT_MODE));
- } else if (key.equals(CaptureResult.NOISE_REDUCTION_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.NOISE_REDUCTION_MODE),
- result.get(CaptureResult.NOISE_REDUCTION_MODE));
- } else if (key.equals(CaptureResult.NOISE_REDUCTION_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.NOISE_REDUCTION_MODE),
- result.get(CaptureResult.NOISE_REDUCTION_MODE));
- } else if (key.equals(CaptureResult.REQUEST_PIPELINE_DEPTH)) {
+ String msg = failMsg + cameraIdString + "for key " + key.getName();
+ if (verifyMatchRequest) {
+ if (key.equals(CaptureResult.CONTROL_AE_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.CONTROL_AE_MODE),
+ result.get(CaptureResult.CONTROL_AE_MODE));
+ } else if (key.equals(CaptureResult.CONTROL_AF_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.CONTROL_AF_MODE),
+ result.get(CaptureResult.CONTROL_AF_MODE));
+ } else if (key.equals(CaptureResult.CONTROL_AWB_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.CONTROL_AWB_MODE),
+ result.get(CaptureResult.CONTROL_AWB_MODE));
+ } else if (key.equals(CaptureResult.CONTROL_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.CONTROL_MODE),
+ result.get(CaptureResult.CONTROL_MODE));
+ } else if (key.equals(CaptureResult.STATISTICS_FACE_DETECT_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.STATISTICS_FACE_DETECT_MODE),
+ result.get(CaptureResult.STATISTICS_FACE_DETECT_MODE));
+ } else if (key.equals(CaptureResult.NOISE_REDUCTION_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.NOISE_REDUCTION_MODE),
+ result.get(CaptureResult.NOISE_REDUCTION_MODE));
+ } else if (key.equals(CaptureResult.NOISE_REDUCTION_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.NOISE_REDUCTION_MODE),
+ result.get(CaptureResult.NOISE_REDUCTION_MODE));
+ } else if (key.equals(CaptureResult.REQUEST_PIPELINE_DEPTH)) {
- } else if (key.equals(CaptureResult.STATISTICS_OIS_DATA_MODE)) {
- errorCollector.expectEquals(msg,
- requestBuilder.get(CaptureRequest.STATISTICS_OIS_DATA_MODE),
- result.get(CaptureResult.STATISTICS_OIS_DATA_MODE));
+ } else if (key.equals(CaptureResult.STATISTICS_OIS_DATA_MODE)) {
+ errorCollector.expectEquals(msg,
+ requestBuilder.get(CaptureRequest.STATISTICS_OIS_DATA_MODE),
+ result.get(CaptureResult.STATISTICS_OIS_DATA_MODE));
+ } else {
+ // Only do non-null check for the rest of keys.
+ errorCollector.expectKeyValueNotNull(failMsg, result, key);
+ }
} else {
// Only do non-null check for the rest of keys.
errorCollector.expectKeyValueNotNull(failMsg, result, key);
@@ -470,15 +477,18 @@
// These keys should always be null
if (key.equals(CaptureResult.CONTROL_AE_REGIONS)) {
errorCollector.expectNull(
- "Capture result contains AE regions but aeMaxRegions is 0",
+ "Capture result contains AE regions but aeMaxRegions is 0"
+ + cameraIdString,
result.get(CaptureResult.CONTROL_AE_REGIONS));
} else if (key.equals(CaptureResult.CONTROL_AWB_REGIONS)) {
errorCollector.expectNull(
- "Capture result contains AWB regions but awbMaxRegions is 0",
+ "Capture result contains AWB regions but awbMaxRegions is 0"
+ + cameraIdString,
result.get(CaptureResult.CONTROL_AWB_REGIONS));
} else if (key.equals(CaptureResult.CONTROL_AF_REGIONS)) {
errorCollector.expectNull(
- "Capture result contains AF regions but afMaxRegions is 0",
+ "Capture result contains AF regions but afMaxRegions is 0"
+ + cameraIdString,
result.get(CaptureResult.CONTROL_AF_REGIONS));
}
}