-
Notifications
You must be signed in to change notification settings - Fork 12
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
Add coverage data to codecov #464
Comments
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Status update: #469 works fine for unit test coverage tracking—that's the straightforward bit. So if there's a mix of unit and integration tests in the same directory, and we run the following: GOCOVERDIR=$(pwd)/coverage go test -coverprofile foo.out The value of From the original proposal for this feature, this is a known limitation that is intended to be addressed in a follow up. Per this comment, a workaround for this is to build the test binary without running the tests ( # Build the test binary with coverage instrumentation:
go test -coverpkg=example.com/foo/... -c -o ./test
# Run the test binary with GOCOVERDIR set for integration test coverage
# and the -test.gocoverdir flag set for unit test coverage.
GOCOVERDIR=$(pwd)/coverage ./test -test.gocoverdir=$(pwd)/coverage This works, but it has to be done on a per-package basis so some tooling is necessary to build and run the test binaries for each test. I prototyped such a tool and it appears to do the job, but I'm not certain that this is a good idea long-term. It's a couple hundred lines of code built on an unsupported, undocumented workaround. On top of that, the pulumi-language-yaml binary in particular seems to do some kind of unclean exit which leaves without writing coverage data, so even if GOCOVERDIR is propagated all the way to it, it doesn't report anything yet except 0%. I'm currently debugging that. |
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
Update: With the graceful shutdown work that was landed on pu/pu master recently, and the tool I prototyped above, we are able to successfully get reliable coverage data out of the pulumi-language-yaml binary. |
Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464
* ci: Add coverage tracking Adds a `make test_cover` target to the Makefile which builds pulumi-language-yaml with coverage instrumentation and runs all tests with coverage tracking. Note that right now, there are no tests that invoke pulumi-language-yaml so integration test data is empty. For CI, adds an coverage option that, when enabled, will run `make test_cover` instead of `make test`, and upload the results to codecov. This option is only enabled for tests invoked for PRs and by the `/run-acceptance-tests` command. Additionally, similarly to pulumi/pulumi#13334, this adds a workflow that runs tests on master with coverage tracking every 12 hours. Resolves #464 * Add gocov tool Adds an experimental tool that runs `go test -c` and then runs the tests for each package separately. This will provide combined coverage data for unit and integration tests. * gocv: Support test2json Adds a flag to use test2json to run the test binary, enabling compatibility with gotestsum. * gocov: Add -race flag
No description provided.
The text was updated successfully, but these errors were encountered: