This repo just houses and links to other projects, and is meant to be used for the integration test. This repo comprises:
- Projects created specifically for integration testing.
- Links to publicly available git projects, useful for integration testing. These are linked as git submodules, rather than copied in, which comes with some conveniences and some annoyance alike.
git clone [email protected]:CANVE/integration-test-projects.git
git submodule update --init
Some cloned projects have their own binary dependencies. Make sure they are installed, to avoid false-negative results.
project | dependency | ubuntu installation command |
---|---|---|
akka | graphviz | sudo apt-get install graphviz |
##Updating linked projects to their latest Well, say you want to run the integration test on the latest online version of the test projects, not those that you have lying around from a couple of weeks ago. This is encouraged, yet before doing that, it might make sense first running the [the integration test](https://github.com/CANVE/extractor/tree/master/sbt-plugin-integration-test) as is, to isolate problems before testing with updated projects. But then you can ultimately update all the test projects to their latest online version, via:
git submodule update --remote
Note that git keeps record of the commit hash of them, so if you wish to persist this "update to the latest version" of the linked repos, you will need to commit. This is encouraged, especially if all added projects perform well:
git commit -am "update linked projects"
##Adding a publicly available project to this repo
-
Make sure the project you are going to add is adequately licensed.
-
git submodule add <GitLink> src/main/resources/test-projects/<ProjName>
.For example -
git submodule add [email protected]:allenai/pipeline.git src/main/resources/test-projects/pipeline
-
git commit -am "add test project"
##Removing a linked project from this repo
TBD (refer to stack overflow or the git submodules reference doc)