# Test Data File for Scripted Tests. # # Each test is a one-line entry of the form: # # <TestScript>|<ExitCode>|[<Host>:]<TestLog>|<ExpectedStringRegex>|<Comments> # # Where: # <TestScript> is a script to call. It can setup arbitrarily sophisticated # tests. The script should accept no parameters. It should display some # indication of the scenario being setup to test. # The value of TestScript should be of the form: # # test_script-<TestDesc>.sh # # where <TestDesc> should contain letters, numbers, and underscores, but not # dash or other special characters. For example, it could be: # test_script-recover_correct_ckp_1.sh. The _1 numeric suffix can be used # to group together a family of related tests with TestDesc values that # vary only by the suffix. Scripts must exist in the test directory in a # Battle School Lab Environment, i.e. /p4/sdp/test/bsw. # # The <TestScript> value can also be the special value 'no_script', meaning that no # test script is executed. This allows additional checks of logs to be done based # on the execution of the most recent executed test. # # <ExitCode> is the expected exit code, which must be a whole number (integer 0 or # greater). If the actual test exist code is not match, the test is deemed to have # failed. A special value of 'U' meaning Undefined can be supplied rather than a # whole number to indicate that any exit code is accepted. (The test may still fail # depending on the <Output> checks). # # If <TestScript> is set to 'no_script', the exit code is ignored, so fill a '-' # in for the <ExitCode> field. # # <TestLog> Specify the absolute path to the log containing the expected string, # or the special value 'output' to scan the output of the command rather than # a log file. The <TestLost> can also be of the form <Host>:<Log> to indicate # the expected string should be checked on the specified host. For example, # a value of syd-helix-04:/p4/1/logs/recreate_offline_db.og will check that # log on the syd-helix-04 host. # # The special value 'output' cannot be used if TestScript is set to 'no_script'. # # <ExpectedStringRegex> is a string of text expected of the executed command in # either the output or a given logfile. The string can be a regular expression. # # <Comments> are short comments for the human reviewer of the test, describing what # is expected in the output, what is being tested, etc. # <TestScript>|<ExitCode>|[<Host>:]<TestLog>|<ExpectedStringRegex>|<Comments> #------------------------------------------------------------------------------ test_script-recover_correct_ckp_1.sh|0|/p4/1/logs/checkpoint.log|^Recovering from /p4/1/checkpoints/p4_1.ckp.*.gz|Serial checkpoint on commit. no_script|-|/p4/1/logs/checkpoint.log|End p4_1 Checkpoint$|Checkpoint OK #------------------------------------------------------------------------------ test_script-recover_correct_ckp_2.sh|0|/p4/1/logs/checkpoint.log|/p4/1/bin/p4d_1 -r /p4/1/offline_db -z -N 4 -jrp /p4/1/checkpoints/p4_1.ckp.|Checkpoint replay with -jrp on commit. no_script|-|/p4/1/logs/checkpoint.log|^Recovering from /p4/1/checkpoints/p4_1.ckp.*\.\.\.|Replay of parallel checkpoint. no_script|-|/p4/1/logs/checkpoint.log|End p4_1 Checkpoint$|Checkpoint OK #------------------------------------------------------------------------------ test_script-recover_correct_ckp_3.sh|0|syd-helix-04:/p4/1/logs/request_checkpoint.log|Running: /p4/1/bin/p4_1 admin checkpoint -Z$|Serial checkpoint requested on edge. no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|Running: /p4/1/bin/p4d_1 -r /p4/1/offline_db -jr /p4/1/checkpoints.edge_syd/p4_1.edge_syd.ckp.*.gz|Load correct serial checkpoint on edge. no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|End p4_1 recreate offline db|Verify edge offline_db rebuild OK. #------------------------------------------------------------------------------ test_script-recover_correct_ckp_4.sh|0|syd-helix-04:/p4/1/logs/request_checkpoint.log|Running: /p4/1/bin/p4_1 admin checkpoint -Z -p -m -N 4|Parallel checkpoint requested on edge. no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|Running: /p4/1/bin/p4d_1 -r /p4/1/offline_db -z -N 4 -jrp /p4/1/checkpoints.edge_syd/p4_1.edge_syd.ckp.[0-9]+$|Load correct parallel checkpoint on edge. no_script|-|syd-helix-04:/p4/1/logs/recreate_offline_db.log|End p4_1 recreate offline db|Verify edge offline_db rebuild OK. #------------------------------------------------------------------------------ test_script-recover_edge_1.sh|0|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 1: Recover serial edge seed from commit server into offline_db|Recover edge complete with recent workspaces. no_script|-|/p4/1/logs/edge_dump.log|Dumping to /p4/1/checkpoints/p4_1.edge_syd.seed.*.gz|Verify serial edge seed created. no_script|-|/p4/1/logs/edge_dump.log|Edge seed checkpoint complete|Verify edge dump completed. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 4: Blend edge dump into offline_db|Check table blending on edge. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 7: Create a new edge checkpoint from offline_db|Check new edge checkpoint created. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|End p4_1 Recover Edge|Verify edge recovery completed. #------------------------------------------------------------------------------ test_script-recover_edge_2.sh|0|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 1: Recover parallel edge seed from commit server into offline_db|Recover edge complete with recent workspaces. no_script|-|/p4/1/logs/edge_dump.log|Dumping to directory /p4/1/checkpoints/p4_1.edge_syd.seed.[0-9]+\.\.\.|Verify parallel edge seed created. no_script|-|/p4/1/logs/edge_dump.log|Edge seed checkpoint complete|Verify edge dump completed. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 4: Blend edge dump into offline_db|Check table blending on edge. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|Phase 7: Create a new edge checkpoint from offline_db|Check new edge checkpoint created. no_script|-|syd-helix-04:/p4/1/logs/recover_edge.log|End p4_1 Recover Edge|Verify edge recovery completed.
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#11 | 31075 | C. Thomas Tyler | Corrected host name in test data. | ||
#10 | 31043 | C. Thomas Tyler |
Add scripted test for live checkpoint off commit (i.e. on edge, standby). |
||
#9 | 30747 | C. Thomas Tyler |
Added Test Group concept to run_cli_tests.sh, with same meaning and usage as in run_scripted_tests.sh. The goal is to allow running a defined subset of tests. |
||
#8 | 30742 | C. Thomas Tyler | Added support for specifying exit code as 'N' for non-zero. | ||
#7 | 30677 | C. Thomas Tyler |
Added 13 tests for load_checkpoint.sh. Added 'TestGroup' field to scripted_testse.cfg. |
||
#6 | 30650 | C. Thomas Tyler | Adapted scripted tests to tweaks in expected script output. | ||
#5 | 30649 | C. Thomas Tyler |
Added more tests for recover_edge.sh and related scripts, and improved auditability the first test script for recover_edge.sh. |
||
#4 | 30643 | C. Thomas Tyler | Added tests for recover_edge.sh. | ||
#3 | 30626 | C. Thomas Tyler | Refined test harness logic and added more tests. | ||
#2 | 30623 | C. Thomas Tyler |
Added feature for scripted test to run addtional checks from an earlier execution of a script. Added more tests. |
||
#1 | 30622 | C. Thomas Tyler | Added files for initial SDP BSW test suite. |