Enhancements to 3-node cluster tests release/helium-sr1.1
authorShaleen Saxena <ssaxena@brocade.com>
Thu, 18 Dec 2014 16:21:08 +0000 (11:21 -0500)
committerShaleen Saxena <ssaxena@brocade.com>
Thu, 18 Dec 2014 16:21:08 +0000 (11:21 -0500)
commitf069d23530893a6c048bc543f16a40f4240a2832
treec3199d8516f49aa898e00f74703790445094898a
parent92b433d2cf943aabb996ad20c2a2085b5fe0f24b
Enhancements to 3-node cluster tests

Modified the stopController method to wait until the controller karaf process
has stopped completed via the ps command. This eliminates the arbitrary wait
which can cause sporadic failures if the controller takes too long to shutdown.

Also added a stopAllControllers method that first executes /bin/stop on all
controllers in parallel and then waits for completion. This speeds it up.

Added additional checks in varous test cases, eg use a FOR loop to verify all
the expected entries in the output from a REST GET instead of checking for just
a couple entries.

I also eliminated some test case files and consolidated the steps so that all
the related steps for a particular test are in one test case file. I find this
makes the steps easier to understand/follow without having to go to other files
and figure out which test case files are stand-alone and which  may be related
to other files. This also eliminates redundant setup steps in each test case file.

As part of consolidation, I separated Car and People leader failover tests into
their own separate files. They basically run the same sequence of steps but on
their respective data model/shard. However they're not exactly redundant because
the People tests utilize an RPC.

Change-Id: I8be1d219fa07b2384b4d622db67af1bc4e0bebec
Signed-off-by: Shaleen Saxena <ssaxena@brocade.com>
16 files changed:
test/csit/libraries/ClusterStateLibrary.py
test/csit/libraries/CrudLibrary.py
test/csit/libraries/UtilLibrary.py
test/csit/suites/clustering/datastore/001_start_cluster.txt
test/csit/suites/clustering/datastore/010_crud_on_leader.txt
test/csit/suites/clustering/datastore/020_crud_on_any_follower.txt
test/csit/suites/clustering/datastore/030_car_failover_crud_on_new_leader.txt [new file with mode: 0644]
test/csit/suites/clustering/datastore/030_failover_crud_on_new_leader.txt [deleted file]
test/csit/suites/clustering/datastore/040_failover_read_from_follower.txt [deleted file]
test/csit/suites/clustering/datastore/040_people_failover_crud_on_new_leader.txt [new file with mode: 0644]
test/csit/suites/clustering/datastore/050_car_persistence_recovery.txt [new file with mode: 0644]
test/csit/suites/clustering/datastore/050_failover_crud_on_any_follower.txt [deleted file]
test/csit/suites/clustering/datastore/060_failover_read_from_new_leader.txt [deleted file]
test/csit/suites/clustering/datastore/130_recovery_restart_leader.txt [deleted file]
test/csit/suites/clustering/datastore/140_recovery_restart_follower.txt
test/csit/suites/clustering/datastore/__init__.txt