summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorPeter Stachowski <peter@tesora.com>2015-08-07 18:02:16 -0400
committerPeter Stachowski <peter@tesora.com>2015-08-26 19:38:49 -0400
commit16d91d9838cbbf7565bbcc2c8eed2ff3912da985 (patch)
tree8c9cbb8ebb858930fd7e552d2692ff9967f5c4ea /etc
parent7cf297cd221f71b5ffae370a23ab3aafc0c15f76 (diff)
downloadtrove-16d91d9838cbbf7565bbcc2c8eed2ff3912da985.tar.gz
Add generic int-test classes
The int-tests in Trove are very MySQL specific, which makes it difficult to reuse code for other datastores. This changeset breaks them down into 'groups' and 'runners.' Runners can be over-ridden to add datastore specific handling/tests. This should allow most generic code to be reused across datastores, while also providing for datastore specific enhancements. Runner implementations are stored in a new package 'trove.tests.scenario.runners'. A datastore-specific implementation can be added to the appropriate runner module file. Its name has to match 'PrefixBaseRunnerClassName' pattern, where 'BaseRunnerClassName' is the name of the default runner and 'Prefix' is the datastore's manager name with the first letter capitalized. Example: Given the default implementation for negative cluster tests in 'trove.tests.api.runners.NegativeClusterActionsGroup'. One can provide a custom implementation for MongoDB (with manager mongodb) in 'trove.tests.api.runners.MongodbNegativeClusterActionsRunner' This initial changeset adds tests for basic actions on instances and clusters. Some basic replication tests were also migrated. The concept of a helper class for datastore specific activies was also created. This makes it easy to have tests use standard methods of adding data and verifying that the datastore behaves as it should. Vertica was refactored to use the new infrastructure. Running the tests can be accomplished by specifying one of the new groups in int-tests (see int_tests.py for the complete list): ./redstack kick-start mongodb ./redstack int-tests --group=instance_actions --group=cluster or ./redstack int-tests --group=mongodb_supported (to run all tests supported by the MongoDB datastore) As with the original int-tests, the datastore used is the one referenced in test configuration file (test.conf) under the key dbaas_datastore. This key is automatically set when kick-start is run. Additional Notes: Also temporarily disabled volume size check in instances tests. It is supposed to assert that the used space on the Trove volume is less that the size of the volume. It however often fails because 'used' > 'size'. From inspection of the instance it appears that the reported 'used' space is from the root volume instead of the attached Trove volume. Plus it sometimes returns int instead of float. Change-Id: I34fb974a32dc1b457026f5b9d98e20d1c7219009 Authored-By: Petr Malik <pmalik@tesora.com> Co-Authored-By: Peter Stachowski <peter@tesora.com>
Diffstat (limited to 'etc')
-rw-r--r--etc/tests/core.test.conf2
1 files changed, 1 insertions, 1 deletions
diff --git a/etc/tests/core.test.conf b/etc/tests/core.test.conf
index 2c18c734..d9e94dd4 100644
--- a/etc/tests/core.test.conf
+++ b/etc/tests/core.test.conf
@@ -28,7 +28,7 @@
"trove_max_instances_per_user": 55,
"trove_max_volumes_per_user": 100,
"use_reaper":false,
-"root_removed_from_instance_api": true,
+ "root_removed_from_instance_api": true,
"root_timestamp_disabled": false,
"openvz_disabled": false,
"management_api_disabled": true