@valle/generator-valle-element-js
Version:
A generator for valle-elements - web components with Polymer 3
56 lines (45 loc) • 1.95 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, minimum-scale=1, initial-scale=1, user-scalable=yes">
<title><%= elementName %> test</title>
<script src="../node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js"></script>
<script src="../node_modules/@polymer/test-fixture/test-fixture.js"></script>
<script src="../node_modules/mocha/mocha.js"></script>
<script src="../node_modules/chai/chai.js"></script>
<script src="../node_modules/wct-mocha/wct-mocha.js"></script>
<script type="module" src="../<%= elementName %>.js"></script>
</head>
<body>
<test-fixture id="BasicTestFixture">
<template>
<<%= elementName %>></<%= elementName %>>
</template>
</test-fixture>
<test-fixture id="ChangedPropertyTestFixture">
<template>
<<%= elementName %> prop1="new-prop1"></<%= elementName %>>
</template>
</test-fixture>
<script type="module">
suite('<%= elementName %>', () => {
test('instantiating the element with default properties works', () => {
const element = fixture('BasicTestFixture');
assert.equal(element.prop1, '<%= elementName %>');
const elementShadowRoot = element.shadowRoot;
const elementHeader = elementShadowRoot.querySelector('h1');
assert.equal(elementHeader.innerHTML, 'Hello <%= elementName %>');
});
test('setting a property on the element works', () => {
// Create a test fixture
const element = fixture('ChangedPropertyTestFixture');
assert.equal(element.prop1, 'new-prop1');
const elementShadowRoot = element.shadowRoot;
const elementHeader = elementShadowRoot.querySelector('h1');
assert.equal(elementHeader.innerHTML, 'Hello new-prop1');
});
});
</script>
</body>
</html>