Add displaySurface to MediaTrackCapabilities

This CL exposes displaySurface to MediaStreamTrack.getCapabilities().
Note that it is already used as a setting and a constraint.

Spec: https://w3c.github.io/mediacapture-screen-share/#dfn-displaysurface

Bug: 1224912
Change-Id: Icd36065d9a7ea834a835cd2a13f9e38c69d8ad7b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3880064
Reviewed-by: Elad Alon <eladalon@chromium.org>
Commit-Queue: Fr <beaufort.francois@gmail.com>
Cr-Commit-Position: refs/heads/main@{#1074794}
diff --git a/screen-capture/getdisplaymedia.https.html b/screen-capture/getdisplaymedia.https.html
index 426235a..095b98d 100644
--- a/screen-capture/getdisplaymedia.https.html
+++ b/screen-capture/getdisplaymedia.https.html
@@ -267,4 +267,13 @@
   });
 }
 
+promise_test(async t => {
+  const stream = await getDisplayMedia({video: true});
+  t.add_cleanup(() => stopTracks(stream));
+  const capabilities = stream.getVideoTracks()[0].getCapabilities();
+  assert_any(
+      assert_equals, capabilities.displaySurface,
+      ['monitor', 'window', 'browser']);
+}, 'getDisplayMedia() with getCapabilities');
+
 </script>