deckhand/deckhand/tests/functional
Scott Hussey e40f3e443f Simplify schema validation
- Treat internal Deckhand schemas equivalent to other
  service schemas
- Remove validating sections other than `data` outside of
  base schema
- Create schemas for metadata sections metadata/Control/v1 and
  metadata/Document/v1
- Use a single validator and let that validator check for document
  structure (validate against the base schema and metadata)
  and for post-validation also validate against service schemas

Change-Id: I5f9b9a3cfa1692a69b5982a6424edd65bdfed0ef
2018-07-03 02:07:33 +00:00
..
gabbits Simplify schema validation 2018-07-03 02:07:33 +00:00
README.rst Clean up functional test directory and entrypoint script 2018-04-20 22:07:04 +01:00

README.rst

Functional Tests

Deckhand uses gabbi to drive its functional tests. The entry point for these tests is functional-tests.sh under tools directory.

Directory Test Layout

Tests are contained in intuitively named subdirectories nested under deckhand/tests/functional/gabbits. For example, layering tests are contained under the layering subdirectory. This pattern should be strictly followed.

Because gabbi does not support loading tests from subdirectories, logic is included in test_gabbi.py to:

  1. Create a temporary directory.
  2. Create a symlink between all the test files in the nested subdirectories and the temporary directory.

However, the test directory can still be modified:

  • New subdirectories under gabbits can be added.
  • New tests under any of those subdirectories can be added.
  • New resource files under gabits/resources can be added. This directory name should never be renamed.
  • All other subdirectories, test files, and resources may be renamed.