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

Firestore Tests sporadically failing #827

Closed
danielpeintner opened this issue Sep 14, 2022 · 10 comments
Closed

Firestore Tests sporadically failing #827

danielpeintner opened this issue Sep 14, 2022 · 10 comments
Labels
binding-firestore Issues related to firestore protocol binding

Comments

@danielpeintner
Copy link
Member

see https://github.com/eclipse/thingweb.node-wot/actions/runs/3054165973/jobs/4925717361 for example

  2 failing

  1) Firestore client basic test implementation
       [client] subscribe and unsubscribe event with object:
     AssertionError: expected null to deeply equal { eventStr: 'event1', eventNum: 123 }
      at FirestoreClientBasicTest.<anonymous> (test/firestore-client-basic-test.ts:237:16)
      at Generator.next (<anonymous>)
      at fulfilled (test/firestore-client-basic-test.ts:30:58)

  2) Firestore client basic test implementation
       [client] observe and unobserve property:
     AssertionError: expected null to equal 'test-string-888'
      at FirestoreClientBasicTest.<anonymous> (test/firestore-client-basic-test.ts:264:16)
      at Generator.next (<anonymous>)
      at fulfilled (test/firestore-client-basic-test.ts:30:58)

I think it is a timing issue but I am not sure.

@hidetak do you know more?

BTW, we (I) have one more strange issue... not really related to Firestore but still strange, see #826

@danielpeintner
Copy link
Member Author

Moreover, we have very often timeout issues with the firestore test setup which make the CI build/test fail.
Note: Most of the time this happens on MacOS.

see https://github.com/eclipse/thingweb.node-wot/actions/runs/3060186473/jobs/4938400649

⚠  emulators: You are not currently authenticated so some features may not work correctly. Please run firebase login to authenticate the CLI.
i  emulators: Starting emulators: auth, firestore
⚠  It appears you are running in a CI environment. You can avoid downloading the Firestore Emulator repeatedly by caching the /Users/runner/.cache/firebase/emulators directory.
i  firestore: downloading cloud-firestore-emulator-v1.13.1.jar...

i  firestore: Firestore Emulator logging to firestore-debug.log
i  emulators: Shutting down emulators.
i  firestore: Stopping Firestore Emulator
i  hub: Stopping emulator hub

Error: TIMEOUT: Port 8088 on localhost was not active within 60000ms

@hidetak
Copy link
Contributor

hidetak commented Sep 15, 2022

@danielpeintner
Thank you for your research.
I am new to the phenomenon and do not know the solution at this time.
I will look into it this weekend.

@relu91 relu91 added the binding-firestore Issues related to firestore protocol binding label Sep 22, 2022
@danielpeintner
Copy link
Member Author

We now have failing PRs due to Firestore in almost any PR (see #850 (comment)).

@hidetak do you have a change to check this.

Moreover, what can/should we do for now:

  • disable firestore tests? (rather drastic)
  • is there a way to mark certain tests as non stable so that they don't show up as failures
  • other proposals ???

@hidetak
Copy link
Contributor

hidetak commented Nov 3, 2022

@danielpeintner

Sorry for the very late reply.
My work has become very busy and I have not been able to devote much time to this development.

I tried to get the master branch and test it, but the npm ci for windows-latest, 18.x failed and I could not see any errors in the Firebase emulator.
https://github.com/hidetak/thingweb.node-wot/actions/runs/3387282040/jobs/5628076208

In any case, I am hoping that you will temporarily disable the test as it is difficult for me to take the time to investigate.
My apologies.

@danielpeintner
Copy link
Member Author

@hidetak thanks for letting us know.
I think we should temporarily disable testing for binding-firestore till we have a solution (see #865).

@danielpeintner
Copy link
Member Author

Firestore testing has been disabled in #878

@danielpeintner
Copy link
Member Author

Check whether node-fetch/node-fetch#1624 (comment) solves the issue.

hidetak added a commit to hidetak/node-wot that referenced this issue May 12, 2023
hidetak added a commit to hidetak/node-wot that referenced this issue May 13, 2023
hidetak added a commit to hidetak/node-wot that referenced this issue May 13, 2023
@danielpeintner
Copy link
Member Author

Issue can be closed since firestore binding has been removed.

@hidetak
Copy link
Contributor

hidetak commented Oct 10, 2023

I apologize for any inconvenience caused by our inability to correct the test code.
I believe that the WoT will be used even more in the future because of the work of everyone in this community.
I hope to find time in the future to modify Binding Firebase or find other things to contribute.
Thank you for all your support.

@danielpeintner
Copy link
Member Author

Thank you @hidetak for your work and your contribution.

The firestore code is still there (see https://github.com/eclipse-thingweb/node-wot/tree/v0.8.6/packages/binding-firestore) and you or others can start the work to align in the future again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
binding-firestore Issues related to firestore protocol binding
Projects
None yet
Development

No branches or pull requests

3 participants