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

ci: Integration Test Framework #431

Merged
merged 14 commits into from Oct 25, 2020
Merged

ci: Integration Test Framework #431

merged 14 commits into from Oct 25, 2020

Conversation

Jason3S
Copy link
Collaborator

@Jason3S Jason3S commented Oct 24, 2020

I have a few goals in mind because I want to release v5, but I need assurance that its output matches v4.

  1. Ensure cspell v5 results are compatible with v4
  2. Ensure that on going development in v5 or v4 do no break existing usages.
  3. Check how changes to dictionaries change the spelling results.

Logic of current set of integration tests:

  1. Run cspell in a repo for a given commit
  2. Compare results against a snapshot.

I want to be able to:

  1. Add new integration tests (especially for languages that the spell checker does not do a great job with GO, C++, Python)
  2. Be able to update snapshots easily.

@coveralls
Copy link

coveralls commented Oct 24, 2020

Coverage Status

Coverage increased (+2.2%) to 100.0% when pulling 10e6856 on cspell5-integration-tests into 4c1df9a on master.

@codecov
Copy link

codecov bot commented Oct 24, 2020

Codecov Report

Merging #431 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #431   +/-   ##
=======================================
  Coverage   98.42%   98.42%           
=======================================
  Files          85       85           
  Lines        3609     3609           
  Branches      604      604           
=======================================
  Hits         3552     3552           
  Misses         54       54           
  Partials        3        3           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4c1df9a...10e6856. Read the comment docs.

@nschonni
Copy link
Collaborator

You might also want to take a look at what was setup over here https://github.com/DavidAnson/markdownlint
The external projects aren't added as submodules, but cloned as part of the CI testing, or by initializing/downloading the repos locally in another script.
It avoids needing to keep submodules up to date. There is a Dependabot task that can do that, but might cause a alot of noise with multiple repos

@Jason3S
Copy link
Collaborator Author

Jason3S commented Oct 25, 2020

You might also want to take a look at what was setup over here https://github.com/DavidAnson/markdownlint
The external projects aren't added as submodules, but cloned as part of the CI testing, or by initializing/downloading the repos locally in another script.
It avoids needing to keep submodules up to date. There is a Dependabot task that can do that, but might cause a alot of noise with multiple repos

You make an excellent point. Using submodules is a pain. I had considered downloading repos and will most likely go that way.
I decided to use submodules for the moment to focus in the testing. I will improve the process a bit later.

I have a few goals in mind because I want to release v5, but I need assurance that its output matches v4.

  1. Ensure cspell v5 results are compatible with v4
  2. Ensure that on going development in v5 or v4 do no break existing usages.
  3. Check how changes to dictionaries change the spelling results.

Logic of current set of integration tests:

  1. Run cspell in a repo for a given commit
  2. Compare results against a snapshot.

I want to be able to:

  1. Add new integration tests (especially for languages that the spell checker does not do a great job with GO, C++, Python)
  2. Be able to update snapshots easily.

@Jason3S Jason3S merged commit 70213a0 into master Oct 25, 2020
@Jason3S Jason3S deleted the cspell5-integration-tests branch October 25, 2020 10:38
Jason3S added a commit that referenced this pull request Oct 25, 2020
* ci: integration tests

* Add some commands

* Add more tests

* Fix adding repos.

* preserve args if added again.

* add typescript and jest

* Update .gitmodules

* Add back licia

* Add more integrations

* Add more integrations

* More integrations

* Add snapshot support

* Fix cspell.json linter error.

* Update settings.json
Jason3S added a commit that referenced this pull request Oct 25, 2020
* ci: Integration Test Framework (#431)

* ci: integration tests

* Add some commands

* Add more tests

* Fix adding repos.

* preserve args if added again.

* add typescript and jest

* Update .gitmodules

* Add back licia

* Add more integrations

* Add more integrations

* More integrations

* Add snapshot support

* Fix cspell.json linter error.

* Update settings.json

* Make sure the submodule is correctly initialized.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants