CameraITS: Fix the physical camera id parsing
The Id tokenizer between CameraITS and CtsVerifier must be consistent.
Bug: 160201464
Test: Run "python tools/run_all_tests.py camera=0.3 scenes=0", observe
CtsVerifier UI
Change-Id: I02a9584553c346f0e4c471f8b4c48aa2cd4f0059
diff --git a/apps/CameraITS/pymodules/its/device.py b/apps/CameraITS/pymodules/its/device.py
index 68fcd3b..9806359 100644
--- a/apps/CameraITS/pymodules/its/device.py
+++ b/apps/CameraITS/pymodules/its/device.py
@@ -92,6 +92,8 @@
adb = "adb -d"
device_id = ""
+ CAMERA_ID_TOKENIZER = '.'
+
# Definitions for some of the common output format options for do_capture().
# Each gets images of full resolution for each requested format.
CAP_RAW = {"format":"raw"}
@@ -1116,7 +1118,7 @@
CameraIdCombo = namedtuple('CameraIdCombo', ['id', 'sub_id'])
id_combos = []
for one_id in ids:
- one_combo = one_id.split(':')
+ one_combo = one_id.split(ItsSession.CAMERA_ID_TOKENIZER)
if len(one_combo) == 1:
id_combos.append(CameraIdCombo(one_combo[0], None))
elif len(one_combo) == 2:
diff --git a/apps/CameraITS/tools/run_all_tests.py b/apps/CameraITS/tools/run_all_tests.py
index 49f849e..aa326a6 100644
--- a/apps/CameraITS/tools/run_all_tests.py
+++ b/apps/CameraITS/tools/run_all_tests.py
@@ -517,14 +517,10 @@
results[s] = {result_key: ItsSession.RESULT_NOT_EXECUTED}
camera_fov = calc_camera_fov(id_combo.id, id_combo.sub_id)
- # Id combo used to store test results in file system
id_combo_string = id_combo.id
- # Id string used for testing
- id_test_string = id_combo.id
has_hidden_sub_camera = id_combo.sub_id is not None
if has_hidden_sub_camera:
- id_combo_string += "." + id_combo.sub_id
- id_test_string += ":" + id_combo.sub_id
+ id_combo_string += ItsSession.CAMERA_ID_TOKENIZER + id_combo.sub_id
scenes = [scene for scene in scenes if HIDDEN_PHYSICAL_CAMERA_TESTS[scene]]
# Loop capturing images until user confirm test scene is correct
camera_id_arg = "camera=" + id_combo.id
@@ -647,7 +643,7 @@
test_code = skip_code
if skip_code is not SKIP_RET_CODE:
cmd = ['python', os.path.join(os.getcwd(), testpath)]
- cmd += one_camera_argv + ["camera="+id_test_string] + [chart_loc_arg]
+ cmd += one_camera_argv + ["camera="+id_combo_string] + [chart_loc_arg]
cmd += [chart_dist_arg]
with open(outpath, 'w') as fout, open(errpath, 'w') as ferr:
test_code = run_subprocess_with_timeout(
diff --git a/apps/CtsVerifier/src/com/android/cts/verifier/camera/its/ItsUtils.java b/apps/CtsVerifier/src/com/android/cts/verifier/camera/its/ItsUtils.java
index 36a10f4..8f268b0 100644
--- a/apps/CtsVerifier/src/com/android/cts/verifier/camera/its/ItsUtils.java
+++ b/apps/CtsVerifier/src/com/android/cts/verifier/camera/its/ItsUtils.java
@@ -403,7 +403,8 @@
CameraCharacteristics.LENS_INFO_AVAILABLE_FOCAL_LENGTHS);
if (defaultFocalLength != physicalFocalLengths[0]) {
outList.mCameraIds.add(physicalId);
- outList.mCameraIdCombos.add(id + ":" + physicalId);
+ // The tokenizer must be the same as CAMERA_ID_TOKENIZER in device.py
+ outList.mCameraIdCombos.add(id + "." + physicalId);
}
}