diff --git a/test/custom-elements/index.js b/test/custom-elements/index.js index 19d79f328b..257940273f 100644 --- a/test/custom-elements/index.js +++ b/test/custom-elements/index.js @@ -50,10 +50,11 @@ describe.only('custom-elements', function() { if (dir[0] === '.') return; const solo = /\.solo$/.test(dir); + const skip = /\.skip$/.test(dir); const internal = path.resolve('internal.js'); const index = path.resolve('index.js'); - (solo ? it.only : it)(dir, () => { + (solo ? it.only : skip ? it.skip : it)(dir, () => { const config = loadConfig(`./custom-elements/samples/${dir}/_config.js`); return rollup({ @@ -104,12 +105,13 @@ describe.only('custom-elements', function() { }) .then(result => { if (result) console.log(result); - nightmare.end(); + return nightmare.end(); }) .catch(message => { console.log(addLineNumbers(bundle)); - nightmare.end(); - throw new Error(message); + return nightmare.end().then(() => { + throw new Error(message); + }); }); }); diff --git a/test/custom-elements/samples/nested.skip/Counter.html b/test/custom-elements/samples/nested.skip/Counter.html new file mode 100644 index 0000000000..d365ce7644 --- /dev/null +++ b/test/custom-elements/samples/nested.skip/Counter.html @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/test/custom-elements/samples/nested.skip/main.html b/test/custom-elements/samples/nested.skip/main.html new file mode 100644 index 0000000000..3e80f6015e --- /dev/null +++ b/test/custom-elements/samples/nested.skip/main.html @@ -0,0 +1,10 @@ + + + + + +

clicked {count} times

\ No newline at end of file diff --git a/test/custom-elements/samples/nested.skip/test.js b/test/custom-elements/samples/nested.skip/test.js new file mode 100644 index 0000000000..d6d52426af --- /dev/null +++ b/test/custom-elements/samples/nested.skip/test.js @@ -0,0 +1,17 @@ +import * as assert from 'assert'; +import './main.html'; + +export default async function (target) { + target.innerHTML = ''; + const el = target.querySelector('my-app'); + const counter = el.shadowRoot.querySelector('my-counter'); + const button = counter.shadowRoot.querySelector('button'); + + assert.equal(counter.count, 0); + assert.equal(counter.shadowRoot.innerHTML, ``); + + await button.dispatchEvent(new MouseEvent('click')); + + assert.equal(counter.count, 1); + assert.equal(counter.shadowRoot.innerHTML, ``); +} \ No newline at end of file