2
0
mirror of https://github.com/VinylDNS/vinyldns synced 2025-08-29 05:18:08 +00:00

5 Commits

Author SHA1 Message Date
Emerle, Ryan
0a1b533192 WIP - Functional Test Updates
- Update `dnsjava` library
- Add support for H2 database
- Update functional tests to support parallel runs
- Remove the ability to specify number of processes for functional tests - always 4 now
- Add `Makefile` and `Dockerfile` in `functional_test` to make it easier to run tests without spinning up multiple containers
2021-10-08 15:52:09 -04:00
Emerle, Ryan
0b3824ad6c WIP - Functional Test Updates
- Add custom network to `docker-compose-func-test.yml` for deterministic IP addresses
- Update tests to remove hard-coded zone names
- Fix various issues with cleanup
2021-09-29 14:07:57 -04:00
Emerle, Ryan
731e2bc873 WIP - Functional Test Updates
- Update tests to Python 3.x
- Setup partitions to allow for parallel testing
  - Partition bind zones
  - Update `docker/api/docker.conf` to include partitioned zones
- Replace AWS request signer with upgraded `boto3` signer
- Replace launcher script with one that instantiates the virtualenv
- Add `--enable-safety_check` to check for modifications to zone data
- Add `--resolver-ip` to allow for specification of a different resolver for the tests versus what gets sent to the API
  - This is helpful when the tests are not running in the same network as the API
  - Ex: `./run.sh --dns-ip=172.19.0.4 --resolver-ip=127.0.0.1:19001` where
2021-09-28 12:32:51 -04:00
Paul Cleary
730c6f8897
Par func tests (#838)
Major overhaul of func tests to allow them to run in parallel.  Major changes include:

1. Consolidate all separate test fixtures into a single test fixture in the `shared_zone_test_context`
1. Add `xdist` to allow running tests in parallel
1. Add hooks in main `conftest.py` to setup the test fixture before workers run, and tear it down when workers are finished
1. After fixture is setup, save state in a local `tmp.out` so the workers will use that state instead of trying to recreate the fixture.
1. Add a `utils.generate_record_name` which generates a unique record name in order to avoid conflicts when running tests in parallel
1. Add a `pytest.mark.serial` for func tests that just cannot be run in serial
1. Tests are now run in two phases, first we run in parallel, and if that is successful, we run the serial tests
1. Add a `--teardown` flag, this allows us to reuse the test fixture between the two phases parallel and serial
2019-09-18 15:02:25 -04:00
Paul James Cleary
f0726ecb37 Initial code release 2018-07-31 14:26:07 -04:00