Skip to content
This repository has been archived by the owner on May 20, 2022. It is now read-only.

Saw hard to replicate test errors #50

Open
springmeyer opened this issue Mar 28, 2018 · 0 comments
Open

Saw hard to replicate test errors #50

springmeyer opened this issue Mar 28, 2018 · 0 comments

Comments

@springmeyer
Copy link
Contributor

When running the tests just now I saw (after a clean install):

$ npm test

> mason-js-sdk@0.1.2 test /Users/dane/projects/mason-js
> npm run lint && tape test/*.test.js


> mason-js-sdk@0.1.2 lint /Users/dane/projects/mason-js
> eslint .

TAP version 13
# setup
# [install] installs a package from mason-versions.ini
info Mason Package Install Starting 
info tarball done parsing tarball for protozero
info Finished downloading packages 
ok 1 should be equal
not ok 2 should be equal
  ---
    operator: equal
    expected: 'check'
    actual:   'tarball'
    at: <anonymous> (/Users/dane/projects/mason-js/test/bin.mason-js.test.js:57:12)
    stack: |-
      Error: should be equal
          at Test.assert [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:225:54)
          at Test.bound [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at Test.equal.Test.equals.Test.isEqual.Test.is.Test.strictEqual.Test.strictEquals (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:388:10)
          at Test.bound (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at /Users/dane/projects/mason-js/test/bin.mason-js.test.js:57:12
          at /Users/dane/projects/mason-js/bin/mason-js:64:16
          at Queue._call (/Users/dane/projects/mason-js/index.js:41:12)
          at maybeNotify (/Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:120:7)
          at /Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:91:12
          at Unpack.afterTarball (/Users/dane/projects/mason-js/lib/retrieve_package.js:24:5)
  ...
not ok 3 should be equal
  ---
    operator: equal
    expected: 'checked for protozero (not found locally)'
    actual:   'done parsing tarball for protozero'
    at: <anonymous> (/Users/dane/projects/mason-js/test/bin.mason-js.test.js:58:12)
    stack: |-
      Error: should be equal
          at Test.assert [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:225:54)
          at Test.bound [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at Test.equal.Test.equals.Test.isEqual.Test.is.Test.strictEqual.Test.strictEquals (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:388:10)
          at Test.bound (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at /Users/dane/projects/mason-js/test/bin.mason-js.test.js:58:12
          at /Users/dane/projects/mason-js/bin/mason-js:64:16
          at Queue._call (/Users/dane/projects/mason-js/index.js:41:12)
          at maybeNotify (/Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:120:7)
          at /Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:91:12
          at Unpack.afterTarball (/Users/dane/projects/mason-js/lib/retrieve_package.js:24:5)
  ...
not ok 4 should be equal
  ---
    operator: equal
    expected: 'tarball'
    actual:   'Finished downloading packages'
    at: <anonymous> (/Users/dane/projects/mason-js/test/bin.mason-js.test.js:59:12)
    stack: |-
      Error: should be equal
          at Test.assert [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:225:54)
          at Test.bound [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at Test.equal.Test.equals.Test.isEqual.Test.is.Test.strictEqual.Test.strictEquals (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:388:10)
          at Test.bound (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at /Users/dane/projects/mason-js/test/bin.mason-js.test.js:59:12
          at /Users/dane/projects/mason-js/bin/mason-js:64:16
          at Queue._call (/Users/dane/projects/mason-js/index.js:41:12)
          at maybeNotify (/Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:120:7)
          at /Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:91:12
          at Unpack.afterTarball (/Users/dane/projects/mason-js/lib/retrieve_package.js:24:5)
  ...
not ok 5 should be equal
  ---
    operator: equal
    expected: 'done parsing tarball for protozero'
    actual:   undefined
    at: <anonymous> (/Users/dane/projects/mason-js/test/bin.mason-js.test.js:60:12)
    stack: |-
      Error: should be equal
          at Test.assert [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:225:54)
          at Test.bound [as _assert] (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at Test.equal.Test.equals.Test.isEqual.Test.is.Test.strictEqual.Test.strictEquals (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:388:10)
          at Test.bound (/Users/dane/projects/mason-js/node_modules/tape/lib/test.js:77:32)
          at /Users/dane/projects/mason-js/test/bin.mason-js.test.js:60:12
          at /Users/dane/projects/mason-js/bin/mason-js:64:16
          at Queue._call (/Users/dane/projects/mason-js/index.js:41:12)
          at maybeNotify (/Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:120:7)
          at /Users/dane/projects/mason-js/node_modules/d3-queue/build/d3-queue.js:91:12
          at Unpack.afterTarball (/Users/dane/projects/mason-js/lib/retrieve_package.js:24:5)
  ...
ok 6 should be equal
# [install] no mason-versions.ini
ok 7 should be equal
# [installs] single package
info Finished downloading packages 
ok 8 should be equal
# [links] single package
info Symlinked:  /Users/dane/projects/mason-js/test/fixtures/headers/protozero/1.5.1 to  /Users/dane/projects/mason-js/test/fixtures/out/mason_packages/.link
ok 9 should be equal
# cleanup
ok 10 null
# setup
# reads ini file correctly
ok 11 should be equal
ok 12 should be equivalent
ok 13 should be equivalent
# [package object] generates package object correctly
ok 14 should be equivalent
# [package object] invalid package
ok 15 Should throw syntax error
# read incorrect ini file
ok 16 should be equal
# ini file does not exist
ok 17 should be equal
# [mason-js] missing args
ok 18 should be truthy
ok 19 no stdout
ok 20 expected args
# [mason-js] missing package type
ok 21 should be truthy
ok 22 no stdout
ok 23 expected args
# [add package to file] adds header package to mason-versions.ini
ok 24 should be equal
ok 25 should be equal
ok 26 should be equal
# [add package to file] adds compiled package to mason-versions.ini
ok 27 should be equal
ok 28 should be equal
ok 29 should be equal
# [add package to file] adds [compiled] header and package to mason-versions.ini
ok 30 should be equal
ok 31 should be equal
ok 32 should be equal
ok 33 should be equal
# [add package to file] adds [headers] header and header package to mason-versions.ini
ok 34 should be equal
ok 35 should be equal
ok 36 should be equal
ok 37 should be equal
# [add package to file] does not write package already in file
ok 38 should be equal
# cleanup
ok 39 null
# setup
# [install] installs a package
info check checked for protozero (not found locally)
info tarball done parsing tarball for protozero
ok 40 should be equal
ok 41 should be equal
ok 42 should be equal
ok 43 should be equal
ok 44 should be equal
# [symlink] links files
info Symlinked:  /Users/dane/projects/mason-js/test/fixtures/headers/protozero/1.5.1 to  /Users/dane/projects/mason-js/test/fixtures/out/mason_packages/.link
info Symlinked:  /Users/dane/projects/mason-js/test/fixtures/osx-x86_64/cairo/1.14.8 to  /Users/dane/projects/mason-js/test/fixtures/out/mason_packages/.link
ok 45 should be equal
ok 46 should be equal
ok 47 should be equal
# cleanup
ok 48 null
# [symlink] file to link doesnt exist
ok 49 should be equal
# cleanup
ok 50 null
# setup
# [place binary] places binary
info tarball done parsing tarball for protozero
ok 51 should be equal
ok 52 should be equal
ok 53 should be equal
# [place binary] gets a request error
ok 54 should be equal
# [place binary] request returns status code error 
ok 55 should be equal
# [place binary] request returns close error 
ok 56 should be equal
# [check library] logs package already exists
info [/Users/dane/projects/mason-js/test/fixtures/boost/1.3.0] Success: boost already installed
ok 57 should be equal
ok 58 should be equal
# [check library] creates directory paths
info check checked for boost (not found locally)
ok 59 should be equal
ok 60 should be equal
# cleanup
ok 61 null
# setup
# [symlink] builds correct symlink paths
ok 62 should be equivalent
# [symlink] creates symlink
info Symlinked:  /Users/dane/projects/mason-js/test/fixtures/headers/protozero/1.5.1 to  /Users/dane/projects/mason-js/test/fixtures/out/mason_packages/.link
info Symlinked:  /Users/dane/projects/mason-js/test/fixtures/osx-x86_64/cairo/1.14.8 to  /Users/dane/projects/mason-js/test/fixtures/out/mason_packages/.link
ok 63 should be equal
ok 64 should be equal
ok 65 should be equal
ok 66 should be equal
# [symlink] fails to create symlink - directory not found
ok 67 should be equal
# [symlink] overwrites existing files
ok 68 should be equal
ok 69 should be equal
# [symlink] doesnt symlink mason.ini files
ok 70 should be equal
# cleanup
ok 71 null

1..71
# tests 71
# pass  67
# fail  4

npm ERR! Test failed.  See above for more details.

And then subsequent runs of npm test worked and all tests passed. Perhaps some kind of race condition could trigger this on a "cold" first run?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant