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

69 lines (65 loc) 1.93 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("xa", (element) => { insertTestValue(element, 0); }); Composite.customize("x1", (element) => { insertTestValue(element, 2); }); Composite.customize("xb", (element) => { insertTestValue(element, 3); }); Composite.customize("xb", (element) => { insertTestValue(element, 31); }); Composite.customize("xc", (element) => { insertTestValue(element, 4); return false; }); Composite.customize("xd", (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 === 2) Test.start(); }); </script> <script type="text/test"> xa0 xb31 xc4 xd5 xe </script> </head> <body> <xa value="xx1">xa</xa> <xb value="xx2">xb</xb> <xc value="xx3">xc</xc> <xd value="xx4">xd</xd> <xe value="xx5">xe</xe> </body> </html>