$ make test ./npm.sh run test Starting sealiousarchive_mailcatcher_1 ... done Starting sealiousarchive_db_1 ... done > sealious@0.8.0 test /opt/sealious > mocha setup-test.js lib/**/*.test.js (node:24) [DEP0022] DeprecationWarning: os.tmpDir() is deprecated. Use os.tmpdir() instead. access-strategy-types AndAccessStrategy 1) returns nothing for and(complex-allow-pipeline, noone) 2) returns everything for and(complex-allow-pipeline, public) 3) returns nothing for and(complex-deny-pipeline, public) OrAccessStrategy 4) returns everything for wrapped or(complex-allow-pipeline, noone) 5) returns everything for or(complex-allow-pipeline, public) 6) returns nothing for or(complex-deny-pipeline, noone) 7) returns everything for or(complex-deny-pipeline, public) users-who-can 8) should deny if the user can't perform the action 9) should allow if the user can't perform the action user-referenced-in-field ✓ should deny if the user isn't the one referenced in the field and allow if it is (775ms) roles ✓ allows access to users with designated role and denies access to users without it (714ms) when ✓ should only use 'when_true' access strategy when the item passes the filter (395ms) ✓ should only use 'when_false' access strategy when the item doesn't pass the filter (209ms) collections password-reset-intents ✓ tells you if the email address doesn't exist (179ms) ✓ allows anyone to create an intent, if the email exists (358ms) ✓ tells you if the email address is malformed (193ms) ✓ sends an email with the reset password link (348ms) users auto create admin ✓ should automatically create a registration intent for the admin user (162ms) registration-intents ✓ doesn't allow setting a role for registration intention when the user in context can't create user-roles (175ms) ✓ allows setting a role for registration intention when the user in context can create user-roles (276ms) user-roles ✓ rejects when given an empty role (220ms) ✓ accepts correct dataset (259ms) field types single_reference ✓ should not allow a value that is not an existing id (198ms) ✓ should allow a value that exists in B (551ms) ✓ should not allow a value that exists in B but does not meet the filter criteria (218ms) ✓ should allow a value that exists in B but does not meet the filter criteria (203ms) text ✓ shouldn't allow a value that isn't a string (164ms) ✓ should respect given min and max length (181ms) ✓ should let proper string in (372ms) reverse-single-reference ✓ recreates the cached values if the field has just been added (941ms) ✓ updates the cached value when a new reference is created (189ms) ✓ updates the cached value when an old reference is deleted (233ms) ✓ updates the cached value when an old reference is edited to a new one (287ms) ✓ updates the cached value when an old reference is edited to an empty one (258ms) ✓ allows to filter by a value of the referencing resource (211ms) ✓ allows to display the full body of the referencing resources (207ms) settable-by ✓ should not allow any value when rejected by access strategy (143ms) 10) should allow proper value when accepted by access strategy Debug: internal, implementation, error Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 11) should not allow invalid value when access strategy allows special filters Matches ✓ returns only positive numbers when using @positive filter (251ms) ✓ returns empty array when using both @positive and @negative filters (178ms) IsReferencedByResourcesMatching 12) returns only users with role matching `allowed_values` simpleTemplate Debug: internal, implementation, error Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 13) sends an email confirm-password-reset ✓ displays an html form (195ms) finalize password reset ✓ allows to change a password (entire flow) (539ms) finalize registration ✓ allows to register an account (entire flow) (487ms) 33 passing (23s) 13 failing 1) access-strategy-types AndAccessStrategy returns nothing for and(complex-allow-pipeline, noone): Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. 2) access-strategy-types AndAccessStrategy returns everything for and(complex-allow-pipeline, public): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 3) access-strategy-types AndAccessStrategy returns nothing for and(complex-deny-pipeline, public): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 4) access-strategy-types OrAccessStrategy returns everything for wrapped or(complex-allow-pipeline, noone): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 5) access-strategy-types OrAccessStrategy returns everything for or(complex-allow-pipeline, public): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 6) access-strategy-types OrAccessStrategy returns nothing for or(complex-deny-pipeline, noone): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 7) access-strategy-types OrAccessStrategy returns everything for or(complex-deny-pipeline, public): Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 8) access-strategy-types users-who-can should deny if the user can't perform the action: Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 9) access-strategy-types users-who-can should allow if the user can't perform the action: Uncaught Error: listen EADDRINUSE 0.0.0.0:8888 at Server.setupListenHandle [as _listen2] (net.js:1345:14) at listenInCluster (net.js:1386:12) at doListen (net.js:1501:7) at process._tickCallback (internal/process/next_tick.js:114:19) 10) field types settable-by should allow proper value when accepted by access strategy: Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. 11) field types settable-by should not allow invalid value when access strategy allows: Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. 12) special filters IsReferencedByResourcesMatching returns only users with role matching `allowed_values`: Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. 13) simpleTemplate sends an email: Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.