UNPKG

@seanox/aspect-js

Version:

full stack JavaScript framework for SPAs incl. reactivity rendering, mvc / mvvm, models, expression language, datasource, routing, paths, unit test and some more

66 lines (62 loc) 1.87 kB
<!DOCTYPE HTML> <html> <head> <meta charset="ISO-8859-1"> <title>Seanox aspect-js test environment</title> <style> body { font-family: monospace; white-space: pre; } </style> <script src="aspect-js.js"></script> <script type="text/javascript"> Test.activate(); const insertTestValue = (element, value) => { if (element.textContent.match(new RegExp(value))) return; const text = document.createElement("span"); text.textContent = value; element.appendChild(text); }; Composite.customize("[value]", (element) => { insertTestValue(element, 0); }); Composite.customize("[value='xx3']", (element) => { insertTestValue(element, 3); }); Composite.customize("[value='xx3']", (element) => { insertTestValue(element, 31); }); Composite.customize("[value='xx4']", (element) => { insertTestValue(element, 4); return false; }); Composite.customize("[value='xx5']", (element) => { insertTestValue(element, 5); }); Test.create({test() { Assert.assertSameTo("script[type='text/test']", document.body.textContent); }}); let count = 0; Composite.listen(Composite.EVENT_RENDER_END, () => { if (++count === 3) Test.start(); }); </script> <script type="text/test"> xa0 xb0 xc031 xd04 xe05 </script> </head> <body> <x value="xx1">xa</x> <x value="xx2">xb</x> <x value="xx3">xc</x> <x value="xx4">xd</x> <x value="xx5">xe</x> </body> </html>