blob: 550a93f9955bc1967b4b2b58ff4bbee69fe722d1 [file] [log] [blame]
This test, when run with 'all' target performs the following steps:
- build
- setup
- start-database
- startDomain
- setup-database (add jdbc resource for the timer resource and set it as the timer resource, also set delegate-recovery property to true)
- setup-cluster (create cluster of 2 instances, enable resource in the cluster)
- deploy (deploy the application which automatically starts ''timer01'' randomly on one of the instances - check the instance logs to see which one)
- run
- run-test (verify that automatic timer is executed on one and only one instance)
Deploy randomly assigns an instance to own automatic timer and it is started on that instance when the bean is loaded.
Test adds a new programmatic timer on each instance during verification call.
Test creates files to hold port for the instance that owns the automatic timer ('success') and the one that does not ('error')
Expected result: automatic timer was executed on one and only one instance
- run-failover (verify that timers are automatically migrated to another instance, when the instance that originally runs them is killed)
Test identifies the instance (reading the files from the step above) that owns automatic timer and kills that instance.
Test verifies that after enough sleep to allow automatic recovery succeed, the timers are executed on the other instance.
Expected result: all 3 timers are executed on the other instance
- undeploy
- unsetup
- unsetup-cluster (stop and delete the cluster)
- unsetup-database (remove resource and unset timer resource)
- stop-database
- stopDomain