Crunner is small application to run test after every change and notify about results
Main features:
- Continuously watch directories
- Execute proper tests after every change
- Send notification about test result
- Test framework independent
- Notifier independent
- Python 2.7 or 3.4
- watchdog
- mock
pip install crunner
Latest version of package is available in drone.io project artifacts.
Configuration file .crunner.json has to created in user home directory. The format of the file looks like below:
{
"main": {
"run_on_start": true,
"delay": 5
},
"notifier": {
"cmd": "/usr/bin/notify-send",
"img_arg": "-i",
"msg_arg": "",
"add_args": ""
},
"tester": {
"cmd": "py.test",
"args": "-s --timeout 1 --pep8"
},
"projects": {
"pytest-crunner": {
"active": true,
"test_path": "/home/user/crunner/test/",
"project_path": "/home/user/crunner",
"watching_types": [".*.py"]
}
}
}
Presented configuration is notifier and test framework independent. It is possible to extend this configuration to watch multiple projects by adding new configuration project.
The main command is: crun
Executed without argument will watch and test all projects configured as active.
Executed with project name argument will watch and test only specified project.
# To watch and test all active projects
crun
# To watch and test only one project
crun some_project
crunner - Application to run test after every change and notify about results.
Copyright (C) 2014 Pawel Chomicki
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.