#!/usr/bin/env python3
"""
This module contains unit tests of CaseFake
"""
import unittest
import tempfile
import os
import shutil
from CIME.tests.case_fake import CaseFake
[docs]
class TestCaseFake ( unittest . TestCase ):
[docs]
def setUp ( self ):
self . tempdir = tempfile . mkdtemp ()
[docs]
def tearDown ( self ):
shutil . rmtree ( self . tempdir , ignore_errors = True )
[docs]
def test_create_clone ( self ):
# Setup
old_caseroot = os . path . join ( self . tempdir , "oldcase" )
oldcase = CaseFake ( old_caseroot )
oldcase . set_value ( "foo" , "bar" )
# Exercise
new_caseroot = os . path . join ( self . tempdir , "newcase" )
clone = oldcase . create_clone ( new_caseroot )
# Verify
self . assertEqual ( "bar" , clone . get_value ( "foo" ))
self . assertEqual ( "newcase" , clone . get_value ( "CASE" ))
self . assertEqual ( "newcase" , clone . get_value ( "CASEBASEID" ))
self . assertEqual ( new_caseroot , clone . get_value ( "CASEROOT" ))
self . assertEqual ( os . path . join ( new_caseroot , "run" ), clone . get_value ( "RUNDIR" ))
if __name__ == "__main__" :
unittest . main ()
Copy to clipboard