Simplify test stragety#35
Open
MitchellThompkins wants to merge 1 commit into
Open
Conversation
path. force a failre Revert "force a failre" This reverts commit 6c35dfc.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
#32 added a CI environment but did so in a very hacky way that I was unhappy with basically immediately. It did let me test test both locally and in CI but by doing some non-ideal searching through files to aggregate all the test files.
This was all in an effort to avoid installing the
controlpackage in the docker container becauseinstallin the Makefile depends ondist, which depends ondocsand the docker image I was using from https://github.com/gnu-octave/docker lacked the tooling to actually build the docs (FWIW I think https://github.com/gnu-octave/octave-buildbot does have the tooling but I don't believe actually builds octave itself and therefore can't be used for testing).I realized I could just copy the installation makefile recipe and strip out the docs generation stuff. That combined with the fact that I realized
__run_test_suite__existed let me drastically reduce the complexity of the CI environment. It also makes the output much more legible. See the standard octave test results vs what I was doing before (both of those produce 389 tests, but the new version is way cleaner).The only trade-off is that installation uses
git archivewhich means that for a file to be tested it has to be tracked by git. For files that are already tracked by git I've usedgit stash createto temporarily grab the hash that would be represented if you were to make the commit. However files that are completely untracked (so new files) won't be picked up at all, so you need togit addthem in order to actually test. The trade-off for simplicity seems acceptable to me. I've updated theCONTRIBUTION.mdto reflect this as well.Changes
installationrecipe