Bug 1197045 - part4: Test case; r=felipe draft
authorChun-Min Chang <chun.m.chang@gmail.com>
Fri, 21 Jul 2017 18:00:21 +0800
changeset 614816 7391c71063fdcaa4f1f59bd217924a978179010a
parent 614815 02c9752e8a9ff20dcff1155cacf38c11c186fa43
child 638980 30a7161a165b87d13c0e918e3aae3d1e3e8a5338
push id70140
push userbmo:cchang@mozilla.com
push dateTue, 25 Jul 2017 02:46:59 +0000
reviewersfelipe
bugs1197045
milestone56.0a1
Bug 1197045 - part4: Test case; r=felipe MozReview-Commit-ID: DnoqPxYbbqn
toolkit/modules/tests/browser/browser_Troubleshoot.js
--- a/toolkit/modules/tests/browser/browser_Troubleshoot.js
+++ b/toolkit/modules/tests/browser/browser_Troubleshoot.js
@@ -259,19 +259,16 @@ const SNAPSHOT_SCHEMA = {
           type: "string",
         },
         windowLayerManagerRemote: {
           type: "boolean",
         },
         windowUsingAdvancedLayers: {
           type: "boolean",
         },
-        currentAudioBackend: {
-          type: "string",
-        },
         numAcceleratedWindowsMessage: {
           type: "array",
         },
         adapterDescription: {
           type: "string",
         },
         adapterVendorID: {
           type: "string",
@@ -384,16 +381,168 @@ const SNAPSHOT_SCHEMA = {
         crashGuards: {
           type: "array",
         },
         direct2DEnabledMessage: {
           type: "array",
         },
       },
     },
+    media: {
+      required: true,
+      type: "object",
+      properties: {
+        currentAudioBackend: {
+          required: true,
+          type: "string",
+        },
+        currentMaxAudioChannels: {
+          required: true,
+          type: "number",
+        },
+        currentPreferredChannelLayout: {
+          required: true,
+          type: "string",
+        },
+        currentPreferredSampleRate: {
+          required: true,
+          type: "number",
+        },
+        audioOutputDevices: {
+          required: true,
+          type: "array",
+          items: {
+            type: "object",
+            properties: {
+              name: {
+                required: true,
+                type: "string",
+              },
+              groupId: {
+                required: true,
+                type: "string",
+              },
+              vendor: {
+                required: true,
+                type: "string",
+              },
+              type: {
+                required: true,
+                type: "number",
+              },
+              state: {
+                required: true,
+                type: "number",
+              },
+              preferred: {
+                required: true,
+                type: "number",
+              },
+              supportedFormat: {
+                required: true,
+                type: "number",
+              },
+              defaultFormat: {
+                required: true,
+                type: "number",
+              },
+              maxChannels: {
+                required: true,
+                type: "number",
+              },
+              defaultRate: {
+                required: true,
+                type: "number",
+              },
+              maxRate: {
+                required: true,
+                type: "number",
+              },
+              minRate: {
+                required: true,
+                type: "number",
+              },
+              maxLatency: {
+                required: true,
+                type: "number",
+              },
+              minLatency: {
+                required: true,
+                type: "number",
+              }
+            },
+          },
+        },
+        audioInputDevices: {
+          required: true,
+          type: "array",
+          items: {
+            type: "object",
+            properties: {
+              name: {
+                required: true,
+                type: "string",
+              },
+              groupId: {
+                required: true,
+                type: "string",
+              },
+              vendor: {
+                required: true,
+                type: "string",
+              },
+              type: {
+                required: true,
+                type: "number",
+              },
+              state: {
+                required: true,
+                type: "number",
+              },
+              preferred: {
+                required: true,
+                type: "number",
+              },
+              supportedFormat: {
+                required: true,
+                type: "number",
+              },
+              defaultFormat: {
+                required: true,
+                type: "number",
+              },
+              maxChannels: {
+                required: true,
+                type: "number",
+              },
+              defaultRate: {
+                required: true,
+                type: "number",
+              },
+              maxRate: {
+                required: true,
+                type: "number",
+              },
+              minRate: {
+                required: true,
+                type: "number",
+              },
+              maxLatency: {
+                required: true,
+                type: "number",
+              },
+              minLatency: {
+                required: true,
+                type: "number",
+              }
+            },
+          },
+        },
+      },
+    },
     javaScript: {
       required: true,
       type: "object",
       properties: {
         incrementalGCEnabled: {
           type: "boolean",
         },
       },