Hi all,
After some prodding by Robert, I have finally started on some automated
tests for CHIRP. These are aimed at testing the clone-mode radio
drivers, but could be selectively enabled to work against the live mode
ones as well (hardware-permitting). The current set of tests only
exercise the drivers themselves (not the UI).
I would have sent this to the list as a patch for review, but I needed
to include a bunch of binary radio images, so I just committed it to the
tree. Comments are welcome.
If you were looking for some work to do on CHIRP but hadn't found a spot
to start yet, this is your opportunity. Since the images are in the
tree, you could potentially fix bugs reported by the tests for models
you don't even have. The flurry of commits this morning have been for
things that I found along the way. There are still a bunch of them to
be fixed, and most look fairly simple (typos, off-by-one errors, etc).
To run them, grab an updated version of the mercurial tree (these won't
be in the tarballs) from here:
http://d-rats.com/hg/chirp.hg
Then go into the tests/ directory and run the script:
$ ./run_tests
You should see a bunch of reports start to fly by. Logs for crashes and
certain types of failures are left in the logs/ directory. You can run
tests against a single driver by putting its id (from the directory) on
the command line:
$ ./run_tests vx7
The current report of bugs is below. If you have questions or comments,
let me know.
Thanks!
--
Dan Smith
www.danplanet.com
KK7DS
> Icom ID-800H v2 CopyAll PASSED: All tests
> Icom ID-800H v2 BruteForce PASSED: All tests
> Icom ID-880H CopyAll PASSED: All tests
> Icom ID-880H BruteForce PASSED: All tests
> Icom IC-2820H CopyAll PASSED: All tests
> Icom IC-2820H BruteForce PASSED: All tests
> Icom IC-2200H CopyAll FAILED: <125>: Field `offset' is `0.48', expected `0.6'
> Icom IC-2200H CopyAll FAILED: <127>: Field `offset' is `0.48', expected `0.6'
> Icom IC-2200H BruteForce PASSED: All tests
> Icom IC-V82/U82 CopyAll PASSED: All tests
> Icom IC-V82/U82 BruteForce PASSED: All tests
> Icom IC-2100H CopyAll PASSED: All tests
> Icom IC-2100H BruteForce PASSED: All tests
> Icom IC-2720H CopyAll PASSED: All tests
> Icom IC-2720H BruteForce PASSED: All tests
> Icom IC-Q7A CopyAll FAILED: <100>: Field `freq' is `851.012', expected `851.0125'
> Icom IC-Q7A CopyAll FAILED: <101>: Field `freq' is `851.512', expected `851.5125'
> Icom IC-Q7A CopyAll FAILED: <102>: Field `freq' is `852.012', expected `852.0125'
> Icom IC-Q7A CopyAll FAILED: <103>: Field `freq' is `852.512', expected `852.5125'
> Icom IC-Q7A CopyAll FAILED: <104>: Field `freq' is `853.012', expected `853.0125'
> Icom IC-Q7A CopyAll FAILED: <106>: Field `freq' is `851.387', expected `851.3875'
> Icom IC-Q7A CopyAll FAILED: <110>: Field `freq' is `852.537', expected `852.5375'
> Icom IC-Q7A CopyAll FAILED: <111>: Field `freq' is `852.562', expected `852.5625'
> Icom IC-Q7A CopyAll FAILED: <112>: Field `freq' is `852.587', expected `852.5875'
> Icom IC-Q7A CopyAll FAILED: <113>: Field `freq' is `852.612', expected `852.6125'
> Icom IC-Q7A CopyAll FAILED: <114>: Field `freq' is `852.637', expected `852.6375'
> Icom IC-Q7A CopyAll FAILED: <115>: Field `freq' is `453.212', expected `453.2125'
> Icom IC-Q7A CopyAll FAILED: <116>: Field `freq' is `453.462', expected `453.4625'
> Icom IC-Q7A CopyAll FAILED: <117>: Field `freq' is `453.712', expected `453.7125'
> Icom IC-Q7A CopyAll FAILED: <118>: Field `freq' is `453.862', expected `453.8625'
> Icom IC-Q7A CopyAll FAILED: <125>: Field `freq' is `151.137', expected `151.1375'
> Icom IC-Q7A CopyAll FAILED: <127>: Field `freq' is `158.737', expected `158.7375'
> Icom IC-Q7A CopyAll FAILED: <129>: Field `freq' is `860.737', expected `860.7375'
> Icom IC-Q7A CopyAll FAILED: <130>: Field `freq' is `860.237', expected `860.2375'
> Icom IC-Q7A CopyAll FAILED: <131>: Field `freq' is `859.737', expected `859.7375'
> Icom IC-Q7A CopyAll FAILED: <132>: Field `freq' is `859.737', expected `859.7375'
> Icom IC-Q7A CopyAll FAILED: <133>: Field `freq' is `858.237', expected `858.2375'
> Icom IC-Q7A CopyAll FAILED: <134>: Field `freq' is `857.237', expected `857.2375'
> Icom IC-Q7A CopyAll FAILED: <135>: Field `freq' is `856.237', expected `856.2375'
> Icom IC-Q7A CopyAll FAILED: <136>: Field `freq' is `855.962', expected `855.9625'
> Icom IC-Q7A CopyAll FAILED: <137>: Field `freq' is `855.237', expected `855.2375'
> Icom IC-Q7A CopyAll FAILED: <138>: Field `freq' is `854.987', expected `854.9875'
> Icom IC-Q7A BruteForce PASSED: All tests
> Icom IC-W32A VHF CopyAll FAILED: <88>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <89>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <90>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <91>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <92>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <93>: Field `mode' is `FM', expected `AM'
> Icom IC-W32A VHF CopyAll FAILED: <125>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A VHF CopyAll FAILED: <127>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A VHF BruteForce FAILED: Field `mode' is `FM', expected `AM'
> Icom IC-W32A UHF CopyAll FAILED: <115>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A UHF CopyAll FAILED: <116>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A UHF CopyAll FAILED: <117>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A UHF CopyAll FAILED: <118>: Field `tuning_step' is `5.0', expected `12.5'
> Icom IC-W32A UHF BruteForce FAILED: Field `mode' is `FM', expected `AM'
> Icom IC-T70 CopyAll FAILED: <115>: Field `freq' is `453.21', expected `453.2125'
> Icom IC-T70 CopyAll FAILED: <116>: Field `freq' is `453.46', expected `453.4625'
> Icom IC-T70 CopyAll FAILED: <117>: Field `freq' is `453.71', expected `453.7125'
> Icom IC-T70 CopyAll FAILED: <118>: Field `freq' is `453.86', expected `453.8625'
> Icom IC-T70 CopyAll FAILED: <125>: Field `freq' is `151.135', expected `151.1375'
> Icom IC-T70 CopyAll FAILED: <127>: Field `freq' is `158.735', expected `158.7375'
> Icom IC-T70 BruteForce PASSED: All tests
> Yaesu VX-3 CopyAll PASSED: All tests
> Yaesu VX-3 BruteForce FAILED: Field `name' is ` ', expected `'
> Yaesu VX-5 CopyAll PASSED: All tests
> Yaesu VX-5 BruteForce FAILED: Field `ctone' is `67.0', expected `88.5'
> Yaesu VX-6 CopyAll PASSED: All tests
> Yaesu VX-6 BruteForce FAILED: Field `rtone' is `88.5', expected `67.0'
> Yaesu VX-7 CopyAll PASSED: All tests
> Yaesu VX-7 BruteForce FAILED: Field `ctone' is `67.0', expected `88.5'
> Yaesu VX-8 CopyAll PASSED: All tests
> Yaesu VX-8 BruteForce FAILED: Field `ctone' is `67.0', expected `88.5'
> Yaesu FT-7800 CopyAll PASSED: All tests
> Yaesu FT-7800 BruteForce FAILED: Field `freq' is `108.0925', expected `108.1'
> Yaesu FT-8800 Left CopyAll PASSED: All tests
> Yaesu FT-8800 Left BruteForce FAILED: Field `name' is ` ', expected `'
> Yaesu FT-8800 Right CopyAll PASSED: All tests
> Yaesu FT-8800 Right BruteForce FAILED: Field `name' is ` ', expected `'
> Yaesu FT-8900 CopyAll PASSED: All tests
> Yaesu FT-8900 BruteForce FAILED: Field `name' is ` ', expected `'
> Alinco DR235T CopyAll PASSED: All tests
> Alinco DR235T BruteForce PASSED: All tests
> Jetstream JT220M CopyAll PASSED: All tests
> Jetstream JT220M BruteForce PASSED: All tests
> Wouxun KG-UVD1P CopyAll PASSED: All tests
> Wouxun KG-UVD1P BruteForce FAILED: Field `offset' is `0.0', expected `0.6'