CIME.SystemTests package¶
Subpackages¶
Submodules¶
CIME.SystemTests.dae module¶
Implementation of the CIME data assimilation test: Compares standard run with run broken into two data assimilation cycles. Runs a simple DA script on each cycle which performs checks but does not change any model state (restart files). Compares answers of two runs.
-
class
CIME.SystemTests.dae.
DAE
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
Implementation of the CIME data assimilation test: Compares standard run with a run broken into two data assimilation cycles. Runs a simple DA script on each cycle which performs checks but does not change any model state (restart files). Compares answers of two runs. Refers to a faux data assimilation script in the cime/scripts/data_assimilation directory
CIME.SystemTests.eri module¶
CIME ERI test This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.eri.
ERI
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.erio module¶
ERIO tests restart with different PIO methods
This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.erio.
ERIO
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.erp module¶
CIME ERP test. This class inherits from RestartTest
This is a pes counts hybrid (open-MP/MPI) restart bfb test from startup. This is just like an ERS test but the pe-counts/threading count are modified on restart. (1) Do an initial run with pes set up out of the box (suffix base) (2) Do a restart test with half the number of tasks and threads (suffix rest)
CIME.SystemTests.err module¶
CIME ERR test This class inherits from ERS ERR tests short term archiving and restart capabilities
CIME.SystemTests.erri module¶
CIME ERRI test This class inherits from ERR ERRI tests short term archiving and restart capabilities with “incomplete” (unzipped) log files
-
class
CIME.SystemTests.erri.
ERRI
(case)[source]¶ Bases:
CIME.SystemTests.err.ERR
CIME.SystemTests.ers module¶
CIME restart test This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.ers.
ERS
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.ers2 module¶
CIME restart test 2 This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.ers2.
ERS2
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.ert module¶
CIME production restart test This class inherits from SystemTestsCommon Exact restart from startup, default 2 month + 1 month
-
class
CIME.SystemTests.ert.
ERT
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.funit module¶
CIME FUNIT test. This class inherits from SystemTestsCommon. It runs the fortran unit tests; grid and compset are ignored.
-
class
CIME.SystemTests.funit.
FUNIT
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.hommebaseclass module¶
CIME HOMME test. This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.hommebaseclass.
HommeBase
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.icp module¶
CIME ICP test This class inherits from SystemTestsCommon
-
class
CIME.SystemTests.icp.
ICP
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.irt module¶
Implementation of the CIME IRT. (Interim Restart Test) This test the model’s restart capability as well as the short term archiver’s interim restart capability
Do a Run of length N with restart at N/2 and DOUT_S_SAVE_INTERIM_RESTART set to TRUE
Archive Run using ST archive tools
Recover first interim restart to the case2 run directory
Start case2 from restart and run to the end of case1
compare results.
CIME.SystemTests.ldsta module¶
CIME last date short term archiver test. This class inherits from SystemTestsCommon It does a run without restarting, then runs the archiver with various last-date parameters The test verifies the archive directory contains the expected files
-
class
CIME.SystemTests.ldsta.
LDSTA
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.mcc module¶
Implemetation of CIME MCC test: Compares ensemble methods
- This does two runs: In the first we run a three member ensemble using the
MULTI_DRIVER capability, then we run a second single instance case and compare
-
class
CIME.SystemTests.mcc.
MCC
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.mvk module¶
CIME.SystemTests.nck module¶
Implementation of the CIME NCK test: Tests multi-instance
This does two runs: In the first, we use one instance per component; in the second, we use two instances per components. NTASKS are changed in each run so that the number of tasks per instance is the same for both runs.
Lay all of the components out sequentially
-
class
CIME.SystemTests.nck.
NCK
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.ncr module¶
Implementation of the CIME NCR test. This class inherits from SystemTestsCommon
Build two exectuables for this test: The first runs two instances for each component with the same total number of tasks, and runs each of them concurrently The second is a default build
NOTE: This is currently untested, and may not be working properly
-
class
CIME.SystemTests.ncr.
NCR
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.nodefail module¶
CIME restart upon failed node test.
-
class
CIME.SystemTests.nodefail.
NODEFAIL
(case)[source]¶ Bases:
CIME.SystemTests.ers.ERS
CIME.SystemTests.pea module¶
Implementation of the CIME PEA test.
Builds runs and compares a single processor mpi model to a model built using mpi-serial (1) do a run with default mpi library (suffix base) (2) do a run with mpi-serial (suffix mpi-serial)
-
class
CIME.SystemTests.pea.
PEA
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.pem module¶
Implementation of the CIME PEM test: Tests bfb with different MPI processor counts
This is just like running a smoke test twice - but the pe-counts are modified the second time. (1) Run with pes set up out of the box (suffix base) (2) Run with half the number of tasks (suffix modpes)
-
class
CIME.SystemTests.pem.
PEM
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.pet module¶
Implementation of the CIME PET test. This class inherits from SystemTestsCommon
This is an openmp test to determine that changing thread counts does not change answers. (1) do an initial run where all components are threaded by default (suffix: base) (2) do another initial run with nthrds=1 for all components (suffix: single_thread)
-
class
CIME.SystemTests.pet.
PET
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.pfs module¶
CIME performance test This class inherits from SystemTestsCommon
20 days performance test, no restart files written
-
class
CIME.SystemTests.pfs.
PFS
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.pgn module¶
CIME.SystemTests.pre module¶
Implementation of the CIME pause/resume test: Tests having driver ‘pause’ (write cpl restart file) and ‘resume’ (read cpl restart file) possibly changing the restart file. Compared to non-pause/resume run. Test can also be run with other component combinations. Test requires DESP component to function correctly.
-
class
CIME.SystemTests.pre.
PRE
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
Implementation of the CIME pause/resume test: Tests having driver ‘pause’ (write cpl and/or other restart file(s)) and ‘resume’ (read cpl and/or other restart file(s)) possibly changing restart file. Compare to non-pause/resume run.
CIME.SystemTests.rep module¶
Implementation of the CIME REP test
This test verifies that two identical runs give bit-for-bit results
-
class
CIME.SystemTests.rep.
REP
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.restart_tests module¶
Abstract class for restart tests
-
class
CIME.SystemTests.restart_tests.
RestartTest
(case, separate_builds, run_two_suffix='restart', run_one_description='initial', run_two_description='restart', multisubmit=False)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.seq module¶
sequencing bfb test (10 day seq,conc tests)
-
class
CIME.SystemTests.seq.
SEQ
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_compare_two.SystemTestsCompareTwo
CIME.SystemTests.sms module¶
CIME smoke test This class inherits from SystemTestsCommon It does a startup run with restarts off and optionally compares to or generates baselines
-
class
CIME.SystemTests.sms.
SMS
(case)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
CIME.SystemTests.system_tests_common module¶
Base class for CIME system tests
-
class
CIME.SystemTests.system_tests_common.
FakeTest
(case, expected=None)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
Inheriters of the FakeTest Class are intended to test the code.
All members of the FakeTest Class must have names beginnig with “TEST” this is so that the find_system_test in utils.py will work with these classes.
-
class
CIME.SystemTests.system_tests_common.
SystemTestsCommon
(case, expected=None)[source]¶ Bases:
object
-
build
(sharedlib_only=False, model_only=False, old_build=False, ninja=False, dry_run=False)[source]¶ Do NOT override this method, this method is the framework that controls the build phase. build_phase is the extension point that subclasses should use.
-
build_phase
(sharedlib_only=False, model_only=False)[source]¶ This is the default build phase implementation, it just does an individual build. This is the subclass’ extension point if they need to define a custom build phase.
PLEASE THROW EXCEPTION ON FAIL
-
run
(skip_pnl=False)[source]¶ Do NOT override this method, this method is the framework that controls the run phase. run_phase is the extension point that subclasses should use.
-
-
class
CIME.SystemTests.system_tests_common.
TESTRUNDIFF
(case, expected=None)[source]¶ Bases:
CIME.SystemTests.system_tests_common.FakeTest
You can generate a diff with this test as follows: 1) Run the test and generate a baseline 2) set TESTRUNDIFF_ALTERNATE environment variable to TRUE 3) Re-run the same test from step 1 but do a baseline comparison instead of generation
3.a) This should give you a DIFF
-
class
CIME.SystemTests.system_tests_common.
TESTRUNUSERXMLCHANGE
(case, expected=None)[source]¶
-
class
CIME.SystemTests.system_tests_common.
TESTTESTDIFF
(case, expected=None)[source]¶
CIME.SystemTests.system_tests_compare_two module¶
Base class for CIME system tests that involve doing two runs and comparing their output.
- 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:
_case_one_setup This method will be called to set up case 1, the “base” case
_case_two_setup This method will be called to set up case 2, the “test” case
In addition, they MAY require the following methods:
_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.
_case_one_custom_prerun_action(self): Use this to do arbitrary actions immediately before running case one
_case_two_custom_prerun_action(self): Use this to do arbitrary actions immediately before running case two
_case_one_custom_postrun_action(self): Use this to do arbitrary actions immediately after running case one
_case_two_custom_postrun_action(self): Use this to do arbitrary actions immediately after running case two
-
class
CIME.SystemTests.system_tests_compare_two.
SystemTestsCompareTwo
(case, separate_builds=False, run_two_suffix='test', run_one_description='', run_two_description='', multisubmit=False, ignore_fieldlist_diffs=False)[source]¶ Bases:
CIME.SystemTests.system_tests_common.SystemTestsCommon
-
build_phase
(sharedlib_only=False, model_only=False)[source]¶ This is the default build phase implementation, it just does an individual build. This is the subclass’ extension point if they need to define a custom build phase.
PLEASE THROW EXCEPTION ON FAIL
-