-
Notifications
You must be signed in to change notification settings - Fork 948
Add README.md about spec tests #4424
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
Conversation
|
Binary Size ReportAffected SDKs
Test Logs
|
Size Analysis Report |
executed as a part of it. | ||
|
||
For example, in the Web SDK (this SDK), the best way to run the spec tests is | ||
via the Intellij IDEA IDE. After following the instructions to set up IntelliJ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
99% of JS developers now use VS Code. The other 1% works on Firestore. I think IntelliJ is not that good of a Web IDE unless users pay for the professional edition. I would state that the tests can be run via VS Code and IntelliJ, but mostly we should point out how to use the Node test runner.
I would also give a shout out to the fact that we fake IndexedDb persistence under Node.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I ended up just removing this paragraph about IntelliJ since the instructions for running the tests are documented in each repository and don't need to be duplicated here. I also mentioned the IndexedDb persistence faking above.
``` | ||
|
||
This command assumes that this Git repository is cloned into `~/firebase-js-sdk` | ||
and the iOS SDK is cloned into `~/firebase-ios-sdk`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In general, this is a good starting point for a spec test introduction. I think the complications arise when someone wants to go past these setup steps, but I am honestly not quite sure how we could teach someone how to write a spec test over a README. The actual tests require an insane amount of technical knowledge, and I would be wary to put all this in writing.
Even if we want to focus on the high level nature of these tests, we may still want to expand on this and write about the tags. We should mention "exclusive", "no-ios" and "no-android" (and maybe "no-web", but I don't know when that would make sense).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's a good point about the tags. I've added information about the tags. I agree that trying to document the spec tests in their entirety is not feasible. I am mostly writing this so that the next time I need to work on the spec tests I have something to remind me of the basics, and this will hopefully be helpful to future authors as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
No description provided.