CIME.SystemTests.system_tests_compare_two

Base class for CIME system tests that involve doing two runs and comparing their output.

NOTE: Below is the flow of a multisubmit test. Non-batch: case_submit -> case_run # PHASE 1

-> case_run # PHASE 2

batch: case_submit -> case_run # PHASE 1 case_run -> case_submit case_submit -> case_run # PHASE 2

In the __init__ method for your test, you MUST call

SystemTestsCompareTwo.__init__

See the documentation of that method for details.

Classes that inherit from this are REQUIRED to implement the following methods:

  1. _case_one_setup This method will be called to set up case 1, the “base” case

  2. _case_two_setup This method will be called to set up case 2, the “test” case

Note that the base class will always call case_setup(reset=True) on both case1 and case2 during setup.

In addition, they MAY require the following methods:

  1. _common_setup This method will be called to set up both cases. It should contain any setup that’s needed in both cases. This is called before _case_one_setup or _case_two_setup.

  2. _case_one_custom_prerun_action(self): Use this to do arbitrary actions immediately before running case one

  3. _case_two_custom_prerun_action(self): Use this to do arbitrary actions immediately before running case two

  4. _case_one_custom_postrun_action(self): Use this to do arbitrary actions immediately after running case one

  5. _case_two_custom_postrun_action(self): Use this to do arbitrary actions immediately after running case two

Classes

SystemTestsCompareTwo