a517c4c5d0
Because 'bin/dotbot' is a hybrid sh/Python script that finds the appropriate Python binary and then runs, the test code should not invoke it as an sh script when sh does not source the pyenv initialization script. The fix implemented in this patch is to directly run 'bin/dotbot' as a Python script using 'python', which when called from bash, will run with the correct Python version (because bash is set up to source the pyenv initialization script). |
||
---|---|---|
.. | ||
tests | ||
.editorconfig | ||
.gitignore | ||
driver-lib.bash | ||
README.md | ||
test | ||
test-lib.bash | ||
test_travis | ||
Vagrantfile |
Testing
Dotbot testing code uses Vagrant to run all tests inside a virtual machine to have tests be completely isolated from the host machine.
Installing the Test environnement
Debian-based distributions
- Install the test requirements
sudo apt install vagrant virtualbox
- Install Dotbot dependencies
git submodule update --init --recursive
macOS
-
Install the test requirements
-
Install Dotbot dependencies
git submodule update --init --recursive
Running the Tests
Before running the tests, the virtual machine must be running. It can be
started by running vagrant up
.
The test suite can be run by running ./test
. Selected tests can be run by
passing paths to the tests as arguments to ./test
.
Tests can be run with a specific Python version by running ./test --version <version>
- for example, ./test --version 3.4.3
.
When finished with testing, it is good to shut down the virtual machine by
running vagrant halt
.