Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tests fail on real stock v1 board #99

Open
14 of 20 tasks
baffo32 opened this issue Oct 17, 2016 · 4 comments
Open
14 of 20 tasks

Tests fail on real stock v1 board #99

baffo32 opened this issue Oct 17, 2016 · 4 comments

Comments

@baffo32
Copy link
Contributor

baffo32 commented Oct 17, 2016

Tested for the first time with a real board, since I was refactoring a little and wanted to ensure things still worked. The SNTP failures are normal for me, but the others aren't.

This is a 32-bit board I received from OpenBCI in early-mid 2016. I have never upgraded the firmware.

  • 1) #impedanceTesting "before all" hook:
     Error: timeout of 20000ms exceeded. Ensure the done() callback is being called in this test.

Board was in a frozen state.

  • Board is in a frozen state.
    • Determine how it enters the frozen state, and prevent it during tests
    • Determine if there is a way to leave the frozen state, and force the board to reset
    • Detect this situation and instruct the user to powercycle their OpenBCI (and upgrade their firmware)
  • 2) openbci-sdk #boardTests #connect/disconnect/streamStart/streamStop gets the ready signal from the board and sends a stop streaming command before disconnecting:
     Error: timeout of 3000ms exceeded. Ensure the done() callback is being called in this test.
  • 3) openbci-sdk #boardTests #connect/disconnect/streamStart/streamStop rawDataPacket is emitted:
     Error: done() invoked with non-Error: Error [.streamStart()]: Already streaming
      at test/openBCIBoard-test.js:462:47
  • 4) openbci-sdk #boardTests #connect/disconnect/streamStart/streamStop rawDataPacket is emitted:
     Error: done() invoked with non-Error: Error [.streamStart()]: Already streaming
      at test/openBCIBoard-test.js:462:47
  • 5) openbci-sdk #boardTests #sdStart can start 14 seconds of logging with sd:
     Error: timeout of 3000ms exceeded. Ensure the done() callback is being called in this test.
  • 6) openbci-sdk #boardTests #sdStart "after each" hook for "can start 14 seconds of logging with sd":
     Error: done() called multiple times
      at Suite.<anonymous> (test/openBCIBoard-test.js:510:7)
      at Suite.<anonymous> (test/openBCIBoard-test.js:502:5)
      at Suite.<anonymous> (test/openBCIBoard-test.js:414:3)
      at Object.<anonymous> (test/openBCIBoard-test.js:17:1)
      at require (internal/module.js:12:17)
      at Array.forEach (native)
      at node.js:974:3
  • 7) openbci-sdk #boardTests #sdStart "after each" hook for "can start 14 seconds of logging with sd":
     Error: done() called multiple times
      at Suite.<anonymous> (test/openBCIBoard-test.js:510:7)
      at Suite.<anonymous> (test/openBCIBoard-test.js:502:5)
      at Suite.<anonymous> (test/openBCIBoard-test.js:414:3)
      at Object.<anonymous> (test/openBCIBoard-test.js:17:1)
      at require (internal/module.js:12:17)
      at Array.forEach (native)
      at node.js:974:3
  • 8) openbci-sdk #boardTests #sdStart "after all" hook:
     Error: done() invoked with non-Error: no board connected
      at test/openBCIBoard-test.js:520:25
  • 9) openbci-sdk #time should emit sntpTimeLock event after sycned with ntp server:
     Error: timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
  • 10) openbci-sdk #sntpStart should be able to start ntp server:
     Error: timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
  • 11) openbci-sdk #sntpStop "before all" hook:
     Error: timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
  • 12) openbci-sdk #radioTestsWithBoard "before all" hook:
     Error: Error Resource temporarily unavailable Cannot lock port
      at Error (native)
  • 13) openbci-sdk #hardwareValidation "before all" hook:
     Error: Error Resource temporarily unavailable Cannot lock port
      at Error (native)
  • 14) #daisy "before all" hook:
     Error: timeout of 4000ms exceeded. Ensure the done() callback is being called in this test.
  • 15) #syncWhileStreaming "before all" hook:
     Error: timeout of 4000ms exceeded. Ensure the done() callback is being called in this test.
  • 16) #syncErrors "before all" hook:
     Error: timeout of 4000ms exceeded. Ensure the done() callback is being called in this test.
@andrewjaykeller
Copy link

If i had a known issues section i would put this here...

The tests worked at some point a while ago but at one point I lost it and have been meaning to get it working but ran out of time. I really would love to get this going.

@andrewjaykeller
Copy link

I think a majority of tests should not use the real board, there needs to be a better separation of functional tests from unit tests.

baffo32 added a commit to baffo32/OpenBCI_NodeJS that referenced this issue Oct 17, 2016
…i-archive#99.

If the EOT ($$$) was split across data buffers, the code was not receiving it for the case of being in reset state, because the old buffer was discarded.
This change ensures the buffer is preserved when in post-reset state.
baffo32 added a commit to baffo32/OpenBCI_NodeJS that referenced this issue Oct 17, 2016
…i-archive#99.

If the EOT ($$$) was split across data buffers, the code was not receiving it for the case of being in reset state, because the old buffer was discarded.
This change ensures the buffer is preserved when in post-reset state.
@andrewjaykeller
Copy link

Detect this situation and instruct the user to powercycle their OpenBCI (and upgrade their firmware)

haha love it

@andrewjaykeller
Copy link

I think you're doing great work. Reviewing as fast as I can! Thanks!

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

No branches or pull requests

2 participants