summaryrefslogtreecommitdiffstats
path: root/packages/markdown/marked/test/specs/redos-spec.js
diff options
context:
space:
mode:
authorLauri Ojansivu <x@xet7.org>2019-04-20 15:18:33 +0300
committerLauri Ojansivu <x@xet7.org>2019-04-20 15:18:33 +0300
commit73e265d8fd050ae3daa67472b4465a5c49d68910 (patch)
tree677b233934a43d8f873e24c794ce289d85e3a9b7 /packages/markdown/marked/test/specs/redos-spec.js
parent6117097a93bfb11c8bd4c87a23c44a50e22ceb87 (diff)
downloadwekan-73e265d8fd050ae3daa67472b4465a5c49d68910.tar.gz
wekan-73e265d8fd050ae3daa67472b4465a5c49d68910.tar.bz2
wekan-73e265d8fd050ae3daa67472b4465a5c49d68910.zip
Include to Wekan packages directory contents, so that meteor command would build all directly.
This also simplifies build scripts. Thanks to xet7 !
Diffstat (limited to 'packages/markdown/marked/test/specs/redos-spec.js')
-rw-r--r--packages/markdown/marked/test/specs/redos-spec.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/packages/markdown/marked/test/specs/redos-spec.js b/packages/markdown/marked/test/specs/redos-spec.js
new file mode 100644
index 00000000..1f94a42e
--- /dev/null
+++ b/packages/markdown/marked/test/specs/redos-spec.js
@@ -0,0 +1,24 @@
+const path = require('path');
+const fs = require('fs');
+
+const redosDir = path.resolve(__dirname, '../redos');
+
+describe('ReDOS tests', () => {
+ const files = fs.readdirSync(redosDir);
+ files.forEach(file => {
+ if (!file.match(/\.js$/)) {
+ return;
+ }
+
+ it(file, () => {
+ const spec = require(path.resolve(redosDir, file));
+ const before = process.hrtime();
+ expect(spec).toRender(spec.html);
+ const elapsed = process.hrtime(before);
+ if (elapsed[0] > 0) {
+ const s = (elapsed[0] + elapsed[1] * 1e-9).toFixed(3);
+ fail(`took too long: ${s}s`);
+ }
+ });
+ });
+});