parse-server-example icon indicating copy to clipboard operation
parse-server-example copied to clipboard

Failing tests on node 18.x

Open victorb-tsn opened this issue 1 year ago • 3 comments

The provided tests in the example repo are failing on Node 18, due to a jasmine timeout error. Steps to reproduce:

  • Checkout the repository
  • Setup node 18.x
  • Run tests -> npm run test
➜  parse-server-example git:(master) ✗ git --no-pager  log --oneline -n 1 && node -v && npm -v && npm run test
2d072a6 (HEAD -> master, origin/master, origin/HEAD) docs: update README (#419)
v18.12.1
8.19.2

> [email protected] test
> mongodb-runner start && jasmine

  ◝ Starting a MongoDB deployment to test against...DATABASE_URI not specified, falling back to localhost.
Started
warn: DeprecationWarning: The Parse Server option 'directAccess' default will change to 'true' in a future version. Additionally, the environment variable 'PARSE_SERVER_ENABLE_EXPERIMENTAL_DIRECT_ACCESS' will be deprecated and renamed to 'PARSE_SERVER_DIRECT_ACCESS' in a future version; it is currently possible to use either one.
warn: DeprecationWarning: The Parse Server option 'enforcePrivateUsers' default will change to 'true' in a future version.
..F..

Failures:
1) Parse Server example failing test
  Message:
    Error: Timeout - Async function did not complete within 5000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
  Stack:
        at <Jasmine>
        at listOnTimeout (node:internal/timers:564:17)
        at process.processTimers (node:internal/timers:507:7)

Suite error: top suite
  Message:
    Error: Timeout - Async function did not complete within 5000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
  Stack:
        at <Jasmine>
        at listOnTimeout (node:internal/timers:564:17)
        at process.processTimers (node:internal/timers:507:7)

5 specs, 2 failures
Finished in 11.087 seconds
➜  parse-server-example git:(master) ✗

victorb-tsn avatar Mar 22 '23 18:03 victorb-tsn

Thanks for opening this issue!

Change the test command to;

NODE_OPTIONS=--dns-result-order=ipv4first jasmine

or change database uri to ipv6

dblythy avatar Mar 22 '23 21:03 dblythy

Thanks for the reply. I update the test command so the the ipv4 is used and test command executed successfully. Based on the fix, would this be an issue with jasmine or a more general one related to how the dns resolvers are used by Node ?

victorb-tsn avatar Mar 23 '23 06:03 victorb-tsn