ITS: Fix GYRO not supported on all Android devices

bug: 160941824

Change-Id: I860946405d461517e76c176f694e53de5beddd53
diff --git a/apps/CameraITS/pymodules/its/caps.py b/apps/CameraITS/pymodules/its/caps.py
index ccbaa65..ddb3c95 100644
--- a/apps/CameraITS/pymodules/its/caps.py
+++ b/apps/CameraITS/pymodules/its/caps.py
@@ -555,12 +555,13 @@
               0 in props["android.request.availableCapabilities"]
 
 
-def sensor_fusion_capable(props):
+def sensor_fusion_test_capable(props, cam):
     """Determine if test_sensor_fusion is run."""
     return all([
             its.caps.sensor_fusion(props),
             its.caps.manual_sensor(props),
-            props["android.lens.facing"] != FACING_EXTERNAL])
+            props["android.lens.facing"] != FACING_EXTERNAL,
+            cam.get_sensors().get("gyro")])
 
 
 def multi_camera_frame_sync_capable(props):
diff --git a/apps/CameraITS/tests/sensor_fusion/test_sensor_fusion.py b/apps/CameraITS/tests/sensor_fusion/test_sensor_fusion.py
index f1b1d36..0caf148 100644
--- a/apps/CameraITS/tests/sensor_fusion/test_sensor_fusion.py
+++ b/apps/CameraITS/tests/sensor_fusion/test_sensor_fusion.py
@@ -425,7 +425,7 @@
     with its.device.ItsSession() as cam:
         props = cam.get_camera_properties()
         props = cam.override_with_hidden_physical_camera_props(props)
-        its.caps.skip_unless(its.caps.sensor_fusion_capable(props))
+        its.caps.skip_unless(its.caps.sensor_fusion_test_capable(props, cam))
 
         print "Starting sensor event collection"
         cam.start_sensor_events()
diff --git a/apps/CameraITS/tools/run_all_tests.py b/apps/CameraITS/tools/run_all_tests.py
index 49f849e..00bcd93 100644
--- a/apps/CameraITS/tools/run_all_tests.py
+++ b/apps/CameraITS/tools/run_all_tests.py
@@ -307,7 +307,7 @@
     with ItsSession(camera_id) as cam:
         props = cam.get_camera_properties()
         method = {'test_sensor_fusion': {
-                          'flag': its.caps.sensor_fusion_capable(props),
+                          'flag': its.caps.sensor_fusion_test_capable(props, cam),
                           'runs': 10},
                   'test_multi_camera_frame_sync': {
                           'flag': its.caps.multi_camera_frame_sync_capable(props),