Skip to content

Commit f2f95b3

Browse files
committed
hyperhtml
1 parent 5ef6462 commit f2f95b3

File tree

2 files changed

+22
-0
lines changed

2 files changed

+22
-0
lines changed

libraries/hyperhtml/src/basic-tests.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import {
2626
ComponentWithChildrenRerender,
2727
ComponentWithDifferentViews,
2828
ComponentWithProperties,
29+
ComponentWithoutProperties,
2930
ComponentWithImperativeEvent,
3031
ComponentWithDeclarativeEvent
3132
} from "./components";
@@ -131,6 +132,16 @@ describe("basic support", function() {
131132
let data = wc.str || wc.getAttribute("str");
132133
expect(data).to.eql("hyperHTML");
133134
});
135+
136+
it('will not overwrite unwriteable properties', function () {
137+
this.weight = 3;
138+
ComponentWithoutProperties(root);
139+
let wc = root.querySelector("#wc");
140+
expect(wc.getAttribute('amethod')).to.eql('method');
141+
expect(wc.getAttribute('agetter')).to.eql('getter');
142+
expect(wc.getAttribute('areadonly')).to.eql('readonly');
143+
expect(wc.innerHTML).to.eql('Success');
144+
});
134145
});
135146

136147
describe("events", function() {

libraries/hyperhtml/src/components.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import 'ce-without-children';
1919
import 'ce-with-children';
2020
import 'ce-with-properties';
21+
import 'ce-without-properties';
2122
import 'ce-with-event';
2223

2324
import HyperHTMLELement from 'hyperhtml-element/esm';
@@ -79,6 +80,16 @@ export const ComponentWithProperties = (root) => hyper(root)`
7980
></ce-with-properties>
8081
</div>`;
8182

83+
export const ComponentWithoutProperties = (root) => hyper(root)`
84+
<div>
85+
<ce-without-properties id="wc"
86+
amethod="${"method"}"
87+
agetter="${"getter"}"
88+
areadonly="${"readonly"}"
89+
></ce-without-properties>
90+
</div>
91+
`
92+
8293
export class ComponentWithImperativeEvent extends HyperHTMLELement {
8394
created() {
8495
this.eventClicks = 0;

0 commit comments

Comments
 (0)