diff --git a/test/assets/wasm/table2.html b/test/assets/wasm/table2.html
new file mode 100644
index 0000000000..2cac6e5210
--- /dev/null
+++ b/test/assets/wasm/table2.html
@@ -0,0 +1,9 @@
+
diff --git a/test/assets/wasm/table2.wasm b/test/assets/wasm/table2.wasm
new file mode 100644
index 0000000000..292be2c175
Binary files /dev/null and b/test/assets/wasm/table2.wasm differ
diff --git a/test/capabilities.spec.js b/test/capabilities.spec.js
new file mode 100644
index 0000000000..388083af38
--- /dev/null
+++ b/test/capabilities.spec.js
@@ -0,0 +1,31 @@
+/**
+ * Copyright Microsoft Corporation. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+const utils = require('./utils');
+const { waitEvent } = utils;
+
+module.exports.describe = function({testRunner, expect}) {
+ const {describe, xdescribe, fdescribe} = testRunner;
+ const {it, fit, xit, dit} = testRunner;
+ const {beforeAll, beforeEach, afterAll, afterEach} = testRunner;
+
+ describe('Capabilities', function() {
+ it('Web Assembly should work', async function({page, server}) {
+ await page.goto(server.PREFIX + '/wasm/table2.html');
+ expect(await page.evaluate(() => loadTable())).toBe('42, 83');
+ });
+ });
+};
diff --git a/test/playwright.spec.js b/test/playwright.spec.js
index 385e5a492b..d049fdb0c6 100644
--- a/test/playwright.spec.js
+++ b/test/playwright.spec.js
@@ -171,6 +171,7 @@ module.exports.describe = ({testRunner, product, playwrightPath}) => {
testRunner.loadTests(require('./interception.spec.js'), testOptions);
testRunner.loadTests(require('./geolocation.spec.js'), testOptions);
testRunner.loadTests(require('./workers.spec.js'), testOptions);
+ testRunner.loadTests(require('./capabilities.spec.js'), testOptions);
if (CHROMIUM) {
testRunner.loadTests(require('./chromium/chromium.spec.js'), testOptions);