/
kopython
/
_hyperscript
Обзор
Документация
Войти
/
kopython
/
_hyperscript
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
test/expressions/queryRef.js
101 строка
3 KB
Reed Spool
Isolate local variables into `context.locals` (#300)
02 июн 2022, 21:28
Не верифицирован
02 июн 2022, 21:28
532ec2b
Код
Авторство
О чём код?
describe("the queryRef expression", function () { beforeEach(function () { clearWorkArea(); }); afterEach(function () { clearWorkArea(); }); it("basic queryRef works", function () { var div = make("<div class='c1'></div>"); var value = evalHyperScript("<.c1/>"); Array.from(value)[0].should.equal(div); }); it("basic queryRef works w/ multiple matches", function () { var div = make( "<div class='c1'></div>" + " <div class='c1'></div>" + " <div class='c1'></div>" ); var value = evalHyperScript("<.c1/>"); Array.from(value).length.should.equal(3); }); it("basic queryRef works w/ properties", function () { var div = make( "<div title='t1'></div>" + " <div title='t2'></div>" + " <div title='t3'></div>" ); var value = evalHyperScript("<[title=t2]/>"); Array.from(value).length.should.equal(1); }); it("basic queryRef works w/ funny selector", function () { var div = make( "<div title='t1'></div>" + " <div title='t2'></div>" + " <div title='t3'></div>" ); var value = evalHyperScript("<:active/>"); Array.from(value).length.should.equal(0); }); it("basic queryRef works w/ div selector", function () { var div = make( "<div class='c1'></div>" + " <div class='c2'></div>" + " <div class='c3'></div>" ); var value = evalHyperScript("<div.c1/>"); Array.from(value).length.should.equal(1); }); it("basic queryRef works w no match", function () { var value = evalHyperScript("<.badClassThatDoesNotHaveAnyElements/>"); Array.from(value).length.should.equal(0); }); it("basic queryRef works w properties w/ strings", function () { var div = make( "<div class='c1'></div>" + " <div foo='bar' class='c2'></div>" + " <div class='c3'></div>" ); var value = evalHyperScript("<[foo='bar']/>"); Array.from(value).length.should.equal(1); }); it("queryRef w/ $ works ", function () { var div = make( "<div class='c1'></div>" + " <div foo='bar' class='c2'></div>" + " <div class='c3'></div>" ); var value = evalHyperScript("<[foo='${x}']/>", { locals: { x: "bar" } }); Array.from(value).length.should.equal(1); }); it("queryRef w/ $ no curlies works", function () { var div = make( "<div id='t1'></div>" + " <div id='t2'></div>" + " <div id='t3'></div>" ); var value = evalHyperScript("<#$id/>", { locals: { id: "t2" } }); Array.from(value)[0].should.equal(byId("t2")); }); it("can interpolate elements into queries", function () { var a = make("<div class='a'></div>"); var b = make("<div class='b'></div>"); var value = evalHyperScript("<${a} + div/>", { locals: { a } }); Array.from(value)[0].should.equal(b); }); it("queryRefs support colons properly", function () { var b = make("<input class='foo' type='checkbox' checked='checked'>"); var value = evalHyperScript("<input.foo:checked/>"); Array.from(value).length.should.equal(1); }); });