import { haveText, html, test } from "../utils";
test(
"properly merges the datastack",
[
html`
`,
],
({ get }) => {
get("span").should(haveText("fizzbuzz"));
}
);
test(
"merges stack from bottom up",
[
html`
`,
],
({ get }) => {
get("span#one").should(haveText("buzzbuzz"));
get("span#two").should(haveText("fizz"));
}
);
test(
"handles getter setter pairs",
[
html`
`,
],
({ get }) => {
get("span#one").should(haveText("fizzbuzz"));
get("span#two").should(haveText("fizzbuzz"));
get("span#one").click();
get("span#one").should(haveText("foobar"));
get("span#two").should(haveText("foobar"));
}
);
test(
"allows accessing class methods",
[
html`
`,
],
({ get }) => {
get("button").should(haveText("0"));
get("button").click();
get("button").should(haveText("1"));
}
);
test(
"setting value doesn't register a dependency",
[
html`
;
`,
],
({ get }) => {
get("button").should(haveText("effected"));
get("button").click();
get("button").should(haveText("clicked"));
}
);