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

Generate coverage information #14

Open
4 tasks
3rd-Eden opened this issue May 22, 2019 · 0 comments
Open
4 tasks

Generate coverage information #14

3rd-Eden opened this issue May 22, 2019 · 0 comments
Labels
advanced Requires some knowledge of a given subject cli Issues with our CLI / configuration enhancement New feature or request

Comments

@3rd-Eden
Copy link
Contributor

As our tests are executing inside of React-Native common used coverage tools such as nyc cannot be used to instrument our code. A custom solution needs to be created. We should be able to leverage existing tools todo the heavy lifting for us.

All the code that is executed by Metro bundler is already getting processed by babel. This would allow us to inject instrumentation into the code using thehttps://github.com/istanbuljs/babel-plugin-istanbul package. The instrumentation data can then be transferred using our established WebSocket connection and coverage information can then be assembled once the test complete.

The only thing we need to consider is if we want this work to be available as part of the core or as a seperate plugin and keep ekke's internals as clean as possible.

Acceptance Criteria

  • Introduces the babel plugin to instrument the users' code.
  • Sends the coverage information over the WebSocket connection to the CLI.
  • Assembles and reports coverage information once tests complete.
  • Is documented and has unit tests. (Consider documenting how users can merge 2 coverage reports if they use both node.js based tests and ekke)
@3rd-Eden 3rd-Eden added enhancement New feature or request cli Issues with our CLI / configuration advanced Requires some knowledge of a given subject labels May 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
advanced Requires some knowledge of a given subject cli Issues with our CLI / configuration enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant