Skip to content

Commit 80570f3

Browse files
committed
Fix test; start browser with clipboar-read perm
1 parent afddae7 commit 80570f3

File tree

2 files changed

+22
-12
lines changed

2 files changed

+22
-12
lines changed

test/test.js

+17-10
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ describe('clipboard-copy element', function () {
4242
describe('target element', function () {
4343
const nativeClipboard = navigator.clipboard
4444
let whenCopied
45+
4546
beforeEach(function () {
4647
const container = document.createElement('div')
4748
container.innerHTML = `
@@ -56,16 +57,15 @@ describe('clipboard-copy element', function () {
5657
copiedText = text
5758
return Promise.resolve()
5859
},
60+
readText() {
61+
return Promise.resolve(copiedText)
62+
},
5963
})
6064

6165
whenCopied = new Promise(resolve => {
6266
document.addEventListener('clipboard-copy', () => resolve(copiedText), {
6367
once: true,
6468
})
65-
66-
document.addEventListener('clipboard-copy-nothing', () => resolve(null), {
67-
once: true,
68-
})
6969
})
7070
})
7171

@@ -162,14 +162,21 @@ describe('clipboard-copy element', function () {
162162

163163
const button = document.querySelector('clipboard-copy')
164164
button.setAttribute('aria-disabled', 'true')
165-
let fired = false;
166-
document.addEventListener('clipboard-copy', () => { fired = true }, { once: true })
167-
165+
166+
let fired = false
167+
document.addEventListener(
168+
'clipboard-copy',
169+
() => {
170+
fired = true
171+
},
172+
{once: true},
173+
)
174+
168175
button.click()
169-
176+
170177
await new Promise(setTimeout)
171-
assert.equal(fired, false);
172-
assert.equal(null, text)
178+
assert.equal(fired, false)
179+
assert.equal(null, await navigator.clipboard.readText())
173180
})
174181
})
175182

web-test-runner.config.js

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,18 @@
11
import {esbuildPlugin} from '@web/dev-server-esbuild'
22
import {playwrightLauncher} from '@web/test-runner-playwright'
3-
const browser = product =>
3+
const getBrowser = product =>
44
playwrightLauncher({
55
product,
6+
createBrowserContext: ({browser}) => {
7+
return browser.newContext({permissions: ['clipboard-read']})
8+
},
69
})
710

811
export default {
912
files: ['test/*'],
1013
nodeResolve: true,
1114
plugins: [esbuildPlugin({ts: true, target: 'es2020'})],
12-
browsers: [browser('chromium')],
15+
browsers: [getBrowser('chromium')],
1316
testFramework: {
1417
config: {
1518
timeout: 1000,

0 commit comments

Comments
 (0)