From 06c91bdae8b1537346224c43002abdd1177b078c Mon Sep 17 00:00:00 2001 From: Joseph D Hughes Date: Mon, 1 Nov 2021 12:53:13 -0500 Subject: [PATCH 1/2] ci: convert addition autotests to use flopyTest testing framework --- autotest/Autotesting.md | 12 +-- autotest/ci_framework.py | 119 ++++++++++++------------ autotest/ci_prepare.py | 6 +- autotest/run_scripts.py | 10 +- autotest/t003_test.py | 42 +++++++-- autotest/t004_test_utilarray.py | 60 ++++++------ autotest/t005_test.py | 6 +- autotest/t006_test.py | 6 +- autotest/t007_test.py | 96 ++++++++++---------- autotest/t008_test.py | 10 +- autotest/t015_test.py | 16 ++-- autotest/t016_test.py | 40 ++++---- autotest/t017_test.py | 20 ++-- autotest/t018_test.py | 16 ++-- autotest/t019_test.py | 12 +-- autotest/t020_test.py | 12 +-- autotest/t021_test.py | 12 +-- autotest/t023_test.py | 10 +- autotest/t024_test.py | 12 +-- autotest/t025_test.py | 10 +- autotest/t026_test.py | 12 +-- autotest/t027_test.py | 28 +++--- autotest/t028_test.py | 16 ++-- autotest/t029_test.py | 12 +-- autotest/t030_test.py | 8 +- autotest/t031_test.py | 16 ++-- autotest/t032_test.py | 8 +- autotest/t033_test.py | 8 +- autotest/t034_test.py | 40 ++++---- autotest/t035_test.py | 18 ++-- autotest/t036_test.py | 12 +-- autotest/t037_test.py | 8 +- autotest/t038_test.py | 8 +- autotest/t040_test.py | 8 +- autotest/t041_test.py | 22 ++--- autotest/t043_test.py | 8 +- autotest/t050_test.py | 121 ++++++++++++------------- autotest/t064_test_performance.py | 6 +- autotest/t067_test_ulstrd.py | 8 +- autotest/t068_test_ssm.py | 20 ++-- autotest/t069_test_vtkexportmodel.py | 8 +- autotest/t070_test_quasi3layers.py | 8 +- autotest/t071_test_nwt_ag.py | 12 +-- autotest/t072_test_spedis.py | 12 +-- autotest/t075_test_ugrid.py | 36 ++++---- autotest/t078_test_lake_connections.py | 16 ++-- autotest/t079_test_cbc_full3D.py | 12 +-- autotest/t080_test.py | 8 +- autotest/t501_test.py | 6 +- autotest/t502_test.py | 8 +- autotest/t503_test.py | 16 ++-- autotest/t504_test.py | 78 ++++++++-------- autotest/t505_test.py | 52 +++++------ autotest/t506_test.py | 16 ++-- autotest/t550_test.py | 12 +-- 55 files changed, 614 insertions(+), 600 deletions(-) diff --git a/autotest/Autotesting.md b/autotest/Autotesting.md index bbacb60f80..674268e0a1 100644 --- a/autotest/Autotesting.md +++ b/autotest/Autotesting.md @@ -69,21 +69,21 @@ programatically using functions and classes in `ci_framework` script. An example of how to construct an autotest is given below ```python -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup # set the baseDir variable using the script name -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_mytest(): - ws = f"{baseDir}_test_mytest" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_test_mytest" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) ...test something assert something is True, "oops" - ws = f"{baseDir}_test_mytest_another_directory" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_test_mytest_another_directory" + test_setup.add_test_dir(ws) ...test something_else diff --git a/autotest/ci_framework.py b/autotest/ci_framework.py index 1f22e37143..d970392bd8 100644 --- a/autotest/ci_framework.py +++ b/autotest/ci_framework.py @@ -31,8 +31,8 @@ def get_parent_path(): return parent_path -def baseTestDir( - filePath, clean=False, create=False, relPath=".", verbose=False +def base_test_dir( + file_path, clean=False, create=False, rel_path=".", verbose=False ): """ Create test directory name from script name. The assumption is the @@ -41,13 +41,13 @@ def baseTestDir( Parameters ---------- - filePath : file path + file_path : file path autotest file path clean : bool boolean indicating if an existing directory should be cleaned create : bool boolean indicating if the directory should be created - relPath : str + rel_path : str path to where the test directory should be located verbose : bool boolean indicating if diagnostic information should be written @@ -55,44 +55,44 @@ def baseTestDir( Returns ------- - baseDir : str + base_dir : str base test directory to create for the autotest Example ------- - >>> from ci_framework import baseTestDir - >>> baseDir = baseTestDir(__file__, relPath="temp", create=True) - >>> print(f"baseDir: {baseDir}") + >>> from ci_framework import base_test_dir + >>> base_dir = basetest_dir(__file__, rel_path="temp") + >>> print(f"base_dir: {base_dir}") """ - fileName = os.path.basename(filePath) + fileName = os.path.basename(file_path) if not fileName.startswith("t"): raise ValueError( f"fileName '{fileName}', which is derived from " - f"'{filePath}', must start with a 't'" + f"'{file_path}', must start with a 't'" ) # parse the file name index1 = fileName.index("_") if index1 == 0: index1 = len(fileName) # construct the base directory with the relative path - baseDir = os.path.join(relPath, fileName[:index1]) + base_dir = os.path.join(rel_path, fileName[:index1]) - # create the TestDir, if necessary + # create the test_dir, if necessary if create: - createTestDir(baseDir, clean=clean, verbose=verbose) + create_test_dir(base_dir, clean=clean, verbose=verbose) - return baseDir + return base_dir -def createTestDir(testDir, clean=False, verbose=False): +def create_test_dir(test_dir, clean=False, verbose=False): """ Create a test directory with the option to remove it first Parameters ---------- - testDir : str + test_dir : str path of directory to create clean : bool boolean indicating if an existing directory should be cleaned @@ -103,19 +103,19 @@ def createTestDir(testDir, clean=False, verbose=False): Example ------- - >>> from ci_framework import createTestDir - >>> createTestDir("temp/mydir", clean=True, verbose=True) + >>> from ci_framework import createtest_dir + >>> createtest_dir("temp/mydir", clean=True, verbose=True) """ if clean: - _cleanDir(testDir, verbose=verbose) - if not os.path.isdir(testDir): - os.makedirs(testDir, exist_ok=True) + _clean_dir(test_dir, verbose=verbose) + if not os.path.isdir(test_dir): + os.makedirs(test_dir, exist_ok=True) if verbose: - print(f"creating test directory...'{testDir}'") + print(f"creating test directory...'{test_dir}'") -class flopyTest(object): +class FlopyTestSetup(object): """ The flopyTest class is used to setup test directories for flopy autotests. @@ -124,9 +124,7 @@ class flopyTest(object): ---------- clean : bool boolean indicating if an existing directory should be cleaned - create : bool - boolean indicating if the directory should be created - testDirs : str or list/tuple of strings + test_dirs : str or list/tuple of strings path to where the test directory should be located verbose : bool boolean indicating if diagnostic information should be written @@ -136,24 +134,23 @@ class flopyTest(object): Methods ------- - addTestDir(testDirs, clean=False, create=False) - Add a testDir or a list of testDirs to the object + addtest_dir(test_dirs, clean=False, create=False) + Add a test_dir or a list of test_dirs to the object Example ------- - >>> from ci_framework import flopyTest + >>> from ci_framework import FlopyTestSetup >>> def test_function(): - ... testFramework = flopyTest(verbose=True, testDirs="temp/t091_01") - ... testFramework.addTestDir("temp/t091_02", create=True) + ... test_setup = flopyTest(verbose=True, test_dirs="temp/t091_01") + ... test_setup.add_test_dir("temp/t091_02") """ def __init__( self, clean=False, - create=False, - testDirs=None, + test_dirs=None, verbose=False, retain=None, ): @@ -161,47 +158,43 @@ def __init__( retain = keep self._clean = clean self._verbose = verbose - self._createDirs = create self._retain = retain - self._testDirs = [] - if testDirs is not None: - self.addTestDir(testDirs, clean=clean, create=create) + self._test_dirs = [] + if test_dirs is not None: + self.add_test_dir(test_dirs, clean=clean) def __del__(self): if not self._retain: - for testDir in self._testDirs: - _cleanDir(testDir, verbose=self._verbose) + for test_dir in self._test_dirs: + _clean_dir(test_dir, verbose=self._verbose) else: print("Retaining test files") - def addTestDir(self, testDirs, clean=False, create=False): + def add_test_dir(self, test_dirs, clean=False): """ Add a test directory to the flopyTest object. Parameters ---------- - testDirs : str or list/tuple of strings + test_dirs : str or list/tuple of strings path to where the test directory should be located clean : bool boolean indicating if an existing directory should be cleaned - create : bool - boolean indicating if the directory should be created """ - if isinstance(testDirs, str): - testDirs = [testDirs] - elif isinstance(testDirs, (int, float, bool)): + if isinstance(test_dirs, str): + test_dirs = [test_dirs] + elif isinstance(test_dirs, (int, float, bool)): raise ValueError( - f"testDir '{testDirs}' must be a string, " + f"test_dir '{test_dirs}' must be a string, " "list of strings, or tuple of strings." ) - for testDir in testDirs: - if testDir not in self._testDirs: - self._testDirs.append(testDir) + for test_dir in test_dirs: + if test_dir not in self._test_dirs: + self._test_dirs.append(test_dir) if self._verbose: - print(f"adding test directory...{testDir}") - if create: - createTestDir(testDir, clean=clean, verbose=self._verbose) + print(f"adding test directory...{test_dir}") + create_test_dir(test_dir, clean=clean, verbose=self._verbose) def _get_mf6path(): @@ -214,11 +207,11 @@ def _get_mf6path(): path to the directory containing the MODFLOW 6 example problems. """ - parentPath = get_parent_path() - if parentPath is None: - parentPath = "." + parent_path = get_parent_path() + if parent_path is None: + parent_path = "." dirName = "mf6examples" - dstpth = os.path.join(parentPath, "temp", dirName) + dstpth = os.path.join(parent_path, "temp", dirName) return os.path.abspath(dstpth) @@ -252,7 +245,7 @@ def download_mf6_examples(delete_existing=False): # download the MODFLOW 6 distribution does not exist if clean or not os.path.isdir(dstpth): print(f"create...{dstpth}") - createTestDir(dstpth, clean=clean, verbose=True) + create_test_dir(dstpth, clean=clean, verbose=True) # Download the distribution url = ( @@ -275,13 +268,13 @@ def download_mf6_examples(delete_existing=False): # private functions -def _cleanDir(testDir, verbose=False): +def _clean_dir(test_dir, verbose=False): """ Delete a test directory Parameters ---------- - testDir : str + test_dir : str path of directory to create clean : bool boolean indicating if an existing directory should be cleaned @@ -291,9 +284,9 @@ def _cleanDir(testDir, verbose=False): """ - if os.path.isdir(testDir): + if os.path.isdir(test_dir): if verbose: - print(f"removing test directory...'{testDir}'") + print(f"removing test directory...'{test_dir}'") # remove the tree - shutil.rmtree(testDir, ignore_errors=True) + shutil.rmtree(test_dir, ignore_errors=True) diff --git a/autotest/ci_prepare.py b/autotest/ci_prepare.py index 2525b4481e..9847e9e98a 100644 --- a/autotest/ci_prepare.py +++ b/autotest/ci_prepare.py @@ -9,7 +9,11 @@ import pymake import flopy -from ci_framework import get_parent_path, createTestDir, download_mf6_examples +from ci_framework import ( + get_parent_path, + create_test_dir, + download_mf6_examples, +) # os.environ["CI"] = "1" diff --git a/autotest/run_scripts.py b/autotest/run_scripts.py index a011e16274..8d65839856 100644 --- a/autotest/run_scripts.py +++ b/autotest/run_scripts.py @@ -5,10 +5,10 @@ import shutil from subprocess import Popen, PIPE -from ci_framework import get_parent_path, flopyTest +from ci_framework import get_parent_path, FlopyTestSetup -parentPath = get_parent_path() -baseDir = os.path.join(parentPath, "temp") +parent_path = get_parent_path() +base_dir = os.path.join(parent_path, "temp") # exclude files that take time on locanachine exclude = ["flopy_swi2_ex2.py", "flopy_swi2_ex5.py"] @@ -75,8 +75,8 @@ def run_script(script): ) def test_scripts(script): script_name = os.path.basename(script).replace(".py", "") - dstDir = os.path.join(f"{baseDir}", f"scripts_{script_name}") - testFramework = flopyTest(verbose=True, create=True, testDirs=dstDir) + dstDir = os.path.join(f"{base_dir}", f"scripts_{script_name}") + test_setup = FlopyTestSetup(verbose=True, test_dirs=dstDir) # copy script dst = copy_script(dstDir, script) diff --git a/autotest/t003_test.py b/autotest/t003_test.py index 7c52ce899e..85fc7076c8 100644 --- a/autotest/t003_test.py +++ b/autotest/t003_test.py @@ -2,10 +2,6 @@ import flopy import os -from ci_framework import baseTestDir, flopyTest - -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) - def test_loadfreyberg(): cwd = os.getcwd() @@ -14,7 +10,11 @@ def test_loadfreyberg(): assert os.path.isdir(pth) os.chdir(pth) namefile = "freyberg.nam" - ml = flopy.modflow.Modflow.load(namefile, verbose=True) + ml = flopy.modflow.Modflow.load( + namefile, + verbose=True, + check=False, + ) os.chdir(cwd) assert isinstance(ml, flopy.modflow.Modflow) assert ml.load_fail is False @@ -27,7 +27,12 @@ def test_loadoahu(): assert os.path.isdir(pth), f"'{pth}' does not exist" namefile = "Oahu_01.nam" - ml = flopy.modflow.Modflow.load(namefile, verbose=True, model_ws=pth) + ml = flopy.modflow.Modflow.load( + namefile, + verbose=True, + model_ws=pth, + check=False, + ) assert isinstance(ml, flopy.modflow.Modflow) assert ml.load_fail is False @@ -39,7 +44,12 @@ def test_loadtwrip(): assert os.path.isdir(pth), f"'{pth}' does not exist" namefile = "twrip.nam" - ml = flopy.modflow.Modflow.load(namefile, verbose=True, model_ws=pth) + ml = flopy.modflow.Modflow.load( + namefile, + verbose=True, + model_ws=pth, + check=False, + ) assert isinstance(ml, flopy.modflow.Modflow) assert not ml.load_fail @@ -52,7 +62,12 @@ def test_loadtwrip_upw(): assert os.path.isdir(pth), f"'{pth}' does not exist" namefile = "twrip_upw.nam" - ml = flopy.modflow.Modflow.load(namefile, verbose=True, model_ws=pth) + ml = flopy.modflow.Modflow.load( + namefile, + verbose=True, + model_ws=pth, + check=False, + ) assert isinstance(ml, flopy.modflow.Modflow) assert ml.load_fail is False @@ -64,7 +79,11 @@ def test_loadoc(): ml = flopy.modflow.Modflow() fpth = os.path.join("..", "examples", "data", "mf2005_test", "fhb.dis") - dis = flopy.modflow.ModflowDis.load(fpth, ml, check=False) + dis = flopy.modflow.ModflowDis.load( + fpth, + ml, + check=False, + ) fpth = os.path.join("..", "examples", "data", "mf2005_test", "fhb.oc") oc = flopy.modflow.ModflowOc.load(fpth, ml, ext_unit_dict=None) @@ -114,7 +133,10 @@ def test_loadoc_nstpfail(): def test_load_nam_mf_nonexistant_file(): with pytest.raises(OSError): - ml = flopy.modflow.Modflow.load("nonexistant.nam") + ml = flopy.modflow.Modflow.load( + "nonexistant.nam", + check=False, + ) def test_load_nam_mt_nonexistant_file(): diff --git a/autotest/t004_test_utilarray.py b/autotest/t004_test_utilarray.py index f7659503e1..0ad0344144 100644 --- a/autotest/t004_test_utilarray.py +++ b/autotest/t004_test_utilarray.py @@ -8,9 +8,9 @@ from textwrap import dedent from flopy.utils.util_array import Util2d, Util3d, Transient2d, Transient3d -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_load_txt_free(): @@ -141,8 +141,8 @@ def test_load_block(): def test_load_bin(): - model_ws = f"{baseDir}_test_load_bin" - testFramework = flopyTest(testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_bin" + test_setup = FlopyTestSetup(test_dirs=model_ws) def temp_file(data): # writable file that is destroyed as soon as it is closed @@ -260,8 +260,8 @@ def test_transient3d(): def test_util2d(): - model_ws = f"{baseDir}_test_util2d" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) u2d = Util2d(ml, (10, 10), np.float32, 10.0, "test") @@ -444,8 +444,8 @@ def stress_util2d_for_joe_the_file_king(ml, nlay, nrow, ncol): def test_util2d_external_free(): - model_ws = f"{baseDir}_test_util2d_external_free" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d_external_free" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) stress_util2d(model_ws, ml, 1, 1, 1) @@ -459,8 +459,8 @@ def test_util2d_external_free(): def test_util2d_external_free_path(): - model_ws = f"{baseDir}_test_util2d_external_free_path" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d_external_free_path" + test_setup = FlopyTestSetup(test_dirs=model_ws) ext_path = "ref" ml = flopy.modflow.Modflow(model_ws=model_ws, external_path=ext_path) @@ -476,8 +476,8 @@ def test_util2d_external_free_path(): def test_util2d_external_free_path_a(): - model_ws = f"{baseDir}_test_util2d_external_free_path_a" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d_external_free_path_a" + test_setup = FlopyTestSetup(test_dirs=model_ws) ext_path = "ref" ml = flopy.modflow.Modflow(model_ws=model_ws, external_path=ext_path) @@ -493,8 +493,8 @@ def test_util2d_external_free_path_a(): def test_util2d_external_fixed(): - model_ws = f"{baseDir}_test_util2d_external_fixed" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d_external_fixed" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) ml.array_free_format = False @@ -510,8 +510,8 @@ def test_util2d_external_fixed(): def test_util2d_external_fixed_path(): - model_ws = f"{baseDir}_test_util2d_external_fixed_path" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util2d_external_fixed_path" + test_setup = FlopyTestSetup(test_dirs=model_ws) ext_path = "ref" ml = flopy.modflow.Modflow(model_ws=model_ws, external_path=ext_path) @@ -528,8 +528,8 @@ def test_util2d_external_fixed_path(): def test_util3d(): - model_ws = f"{baseDir}_test_util3d" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_util3d" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) u3d = Util3d(ml, (10, 10, 10), np.float32, 10.0, "test") @@ -551,8 +551,8 @@ def test_util3d(): def test_arrayformat(): - model_ws = f"{baseDir}_test_arrayformat" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_arrayformat" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) u2d = Util2d(ml, (15, 2), np.float32, np.ones((15, 2)), "test") @@ -609,8 +609,8 @@ def test_arrayformat(): def test_new_get_file_entry(): - model_ws = f"{baseDir}_test_new_get_file_entry" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_new_get_file_entry" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) u2d = Util2d(ml, (5, 2), np.float32, np.ones((5, 2)), "test", locat=99) @@ -634,8 +634,8 @@ def test_new_get_file_entry(): def test_append_mflist(): - ws = f"{baseDir}_test_append_mflist" - testFramework = flopyTest(verbose=True, testDirs=ws) + ws = f"{base_dir}_test_append_mflist" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) ml = flopy.modflow.Modflow(model_ws=ws) dis = flopy.modflow.ModflowDis(ml, 10, 10, 10, 10) @@ -653,8 +653,8 @@ def test_append_mflist(): def test_mflist(): - model_ws = f"{baseDir}_test_mflist" - testFramework = flopyTest(testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mflist" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) dis = flopy.modflow.ModflowDis(ml, 10, 10, 10, 10) @@ -805,8 +805,8 @@ def test_how(): import numpy as np import flopy - model_ws = f"{baseDir}_test_how" - testFramework = flopyTest(testDirs=model_ws) + model_ws = f"{base_dir}_test_how" + test_setup = FlopyTestSetup(test_dirs=model_ws) ml = flopy.modflow.Modflow(model_ws=model_ws) ml.array_free_format = False @@ -837,8 +837,8 @@ def test_mflist_fromfile(): import pandas as pd import flopy - model_ws = f"{baseDir}_test_mflist_fromfile" - testFramework = flopyTest(testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mflist_fromfile" + test_setup = FlopyTestSetup(test_dirs=model_ws) wel_data = pd.DataFrame( [(0, 1, 2, -50.0), (0, 5, 5, -50.0)], columns=["k", "i", "j", "flux"] diff --git a/autotest/t005_test.py b/autotest/t005_test.py index af1883dd22..9c6da8c349 100644 --- a/autotest/t005_test.py +++ b/autotest/t005_test.py @@ -1,16 +1,16 @@ # Test instantiation of flopy classes import os -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -cpth = baseTestDir(__file__, create=True, relPath="temp", verbose=True) +cpth = base_test_dir(__file__, rel_path="temp", verbose=True) def test_modflow_unstructured(): import flopy import numpy as np - testFramework = flopyTest(testDirs=cpth) + test_setup = FlopyTestSetup(test_dirs=cpth) mf = flopy.mfusg.MfUsg(structured=False, model_ws=cpth) assert isinstance(mf, flopy.mfusg.MfUsg) diff --git a/autotest/t006_test.py b/autotest/t006_test.py index 9303e21536..7c0dde9691 100644 --- a/autotest/t006_test.py +++ b/autotest/t006_test.py @@ -17,9 +17,9 @@ except ImportError: shapefile = None -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -cpth = baseTestDir(__file__, create=True, relPath="temp", verbose=True) +cpth = base_test_dir(__file__, rel_path="temp", verbose=True) def test_binaryfile_reference(): @@ -52,7 +52,7 @@ def test_formattedfile_reference(): def test_mflist_reference(): - testFramework = flopyTest(testDirs=cpth) + test_setup = FlopyTestSetup(test_dirs=cpth) # make the model ml = flopy.modflow.Modflow() diff --git a/autotest/t007_test.py b/autotest/t007_test.py index 442521b8f2..742fa62f16 100644 --- a/autotest/t007_test.py +++ b/autotest/t007_test.py @@ -9,11 +9,11 @@ import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir( +base_dir = base_test_dir( __file__, - relPath="temp", + rel_path="temp", verbose=True, ) @@ -44,7 +44,7 @@ def remove_shp(shpname): def export_mf6_netcdf(ws, path): print(f"in export_mf6_netcdf: {path}") - testFramework = flopyTest(create=True, testDirs=ws) + test_setup = FlopyTestSetup(test_dirs=ws) sim = flopy.mf6.modflow.mfsimulation.MFSimulation.load(sim_ws=path) for name, model in sim.get_model_itr(): @@ -79,7 +79,7 @@ def export_netcdf(ws, m): import pyproj except: return - testFramework = flopyTest(create=True, testDirs=ws) + test_setup = FlopyTestSetup(test_dirs=ws) fnc = m.export(os.path.join(ws, f"{m.name}.nc")) fnc.write() @@ -161,8 +161,8 @@ def export_shapefile_modelgrid_override(namfile): assert isinstance(m, flopy.modflow.Modflow) name = namfile.replace(".nam", "") - ws_out = f"{baseDir}_{name}_shapefile_modelgrid_override" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_{name}_shapefile_modelgrid_override" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) fnc_name = os.path.join(ws_out, f"{m.name}.shp") @@ -195,8 +195,8 @@ def test_output_helper_shapefile_export(): head = flopy.utils.HeadFile(os.path.join(ws, "freyberg.hds")) cbc = flopy.utils.CellBudgetFile(os.path.join(ws, "freyberg.cbc")) - ws_out = f"{baseDir}_helper_shapefile" - testFramework = flopyTest(verbose=True, create=True, testDirs=ws_out) + ws_out = f"{base_dir}_helper_shapefile" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) flopy.export.utils.output_helper( os.path.join(ws_out, "test.shp"), @@ -222,8 +222,8 @@ def test_freyberg_export(): ) name = namfile.replace(".nam", "") - ws_out = f"{baseDir}_{name}_shapefile_freyberg" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_{name}_shapefile_freyberg" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) # test export at model, package and object levels m.export(f"{ws_out}/model.shp") @@ -313,8 +313,8 @@ def test_export_output(): hds_pth = os.path.join(model_ws, "freyberg.githds") hds = flopy.utils.HeadFile(hds_pth) - ws = f"{baseDir}_freyberg_export_output_netcdf" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_freyberg_export_output_netcdf" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) out_pth = os.path.join(ws, "freyberg.out.nc") nc = flopy.export.utils.output_helper( @@ -339,8 +339,8 @@ def test_write_shapefile(): from flopy.export.shapefile_utils import shp2recarray from flopy.export.shapefile_utils import write_grid_shapefile - ws_out = f"{baseDir}_shapefile_write" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_write" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) sg = StructuredGrid( delr=np.ones(10) * 1.1, @@ -403,8 +403,8 @@ def test_shapefile_polygon_closed(): m, delr=spacing, delc=spacing, nrow=nrow, ncol=ncol ) - ws_out = f"{baseDir}_shapefile_polygon_closed" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_polygon_closed" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) shp_file = os.path.join(ws_out, "test_polygon.shp") m.dis.export(shp_file) @@ -426,8 +426,8 @@ def test_export_array(): rotate = False pass - ws_out = f"{baseDir}_export_array" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_export_array" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) namfile = "freyberg.nam" model_ws = "../examples/data/freyberg_multilayer_transient/" @@ -500,8 +500,8 @@ def test_export_array(): def test_mbase_modelgrid(): - ws = f"{baseDir}_mbase_modelgrid" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_mbase_modelgrid" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) ml = flopy.modflow.Modflow( modelname="test", xll=500.0, rotation=12.5, start_datetime="1/1/2016" @@ -529,8 +529,8 @@ def test_mbase_modelgrid(): def test_mt_modelgrid(): - ws = f"{baseDir}_mt_modelgrid" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_mt_modelgrid" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) ml = flopy.modflow.Modflow( modelname="test", @@ -627,8 +627,8 @@ def test_mt_modelgrid(): def test_free_format_flag(): - ws_out = f"{baseDir}_free_format_flag" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_free_format_flag" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) Lx = 100.0 Ly = 100.0 @@ -674,8 +674,8 @@ def test_free_format_flag(): def test_sr(): - ws = f"{baseDir}_test_sr" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_test_sr" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) m = flopy.modflow.Modflow( "test", @@ -791,8 +791,8 @@ def test_twri_mg(): def test_mg(): from flopy.utils import geometry - ws = f"{baseDir}_test_modelgrid" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_test_modelgrid" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) Lx = 100.0 Ly = 100.0 @@ -937,8 +937,8 @@ def test_dynamic_xll_yll(): def test_namfile_readwrite(): - ws = f"{baseDir}__namfile_readwrite" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}__namfile_readwrite" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) nlay, nrow, ncol = 1, 30, 5 delr, delc = 250, 500 @@ -992,8 +992,8 @@ def test_namfile_readwrite(): def test_read_usgs_model_reference(): - model_ws = f"{baseDir}_usgs_model_reference" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_usgs_model_reference" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay, nrow, ncol = 1, 30, 5 delr, delc = 250, 500 @@ -1514,8 +1514,8 @@ def test_netcdf_classmethods(): namfile = "freyberg.nam" name = namfile.replace(".nam", "") - ws = f"{baseDir}_{name}_netcdf_classmethods" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_{name}_netcdf_classmethods" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) model_ws = os.path.join( "..", "examples", "data", "freyberg_multilayer_transient" @@ -1578,8 +1578,8 @@ def test_shapefile_ibound(): if not shapefile: return - ws_out = f"{baseDir}_shapefile_ibound" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_ibound" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) shape_name = os.path.join(ws_out, "test.shp") namfile = "freyberg.nam" @@ -1608,8 +1608,8 @@ def test_shapefile_ibound(): ) def test_shapefile(namfile): name = namfile.replace(".nam", "") - ws = f"{baseDir}_{name}_shapefile" - testFramework = flopyTest(create=True, testDirs=ws) + ws = f"{base_dir}_{name}_shapefile" + test_setup = FlopyTestSetup(test_dirs=ws) export_shapefile(ws, namfile) return @@ -1630,7 +1630,7 @@ def test_shapefile_export_modelgrid_override(namfile): ) def test_netcdf(namfile): name = namfile.replace(".nam", "") - ws = f"{baseDir}_{name}_netcdf" + ws = f"{base_dir}_{name}_netcdf" export_mf2005_netcdf(ws, namfile) return @@ -1638,7 +1638,7 @@ def test_netcdf(namfile): def build_netcdf(): for namfile in namfiles: name = namfile.replace(".nam", "") - ws = f"{baseDir}_{name}_netcdf" + ws = f"{base_dir}_{name}_netcdf" export_mf2005_netcdf(ws, namfile) return @@ -1646,7 +1646,7 @@ def build_netcdf(): def build_sfr_netcdf(): namfile = "testsfr2.nam" name = namfile.replace(".nam", "") - ws = f"{baseDir}_{name}_netcdf" + ws = f"{base_dir}_{name}_netcdf" export_mf2005_netcdf(ws, namfile) return @@ -1657,8 +1657,8 @@ def test_export_array2(): from flopy.discretization import StructuredGrid from flopy.export.utils import export_array - ws_out = f"{baseDir}_shapefile_export_array2" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_export_array2" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) nrow = 7 ncol = 11 @@ -1698,8 +1698,8 @@ def test_export_array_contours(): from flopy.discretization import StructuredGrid from flopy.export.utils import export_array_contours - ws_out = f"{baseDir}_shapefile_array_contours" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_array_contours" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) nrow = 7 ncol = 11 @@ -1743,8 +1743,8 @@ def test_export_contourf(): import matplotlib.pyplot as plt from flopy.export.utils import export_contourf - ws_out = f"{baseDir}_shapefile_export_contourf" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_shapefile_export_contourf" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) filename = os.path.join(ws_out, "myfilledcontours.shp") a = np.random.random((10, 10)) diff --git a/autotest/t008_test.py b/autotest/t008_test.py index 2e9b2607c1..5f165301e0 100644 --- a/autotest/t008_test.py +++ b/autotest/t008_test.py @@ -7,7 +7,7 @@ import os import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup pth = os.path.join("..", "examples", "data", "mf2005_test") namfiles = [namfile for namfile in os.listdir(pth) if namfile.endswith(".nam")] @@ -105,11 +105,11 @@ def test_nwt_model_load(namfile): def load_nwt_pack(nwtfile): new_ws = ( - baseTestDir(__file__, relPath="temp", verbose=True) + base_test_dir(__file__, rel_path="temp", verbose=True) + "_" + os.path.basename(nwtfile).replace(".nam", "_nwtpack") ) - testFramework = flopyTest(testDirs=new_ws, verbose=True) + test_setup = FlopyTestSetup(test_dirs=new_ws, verbose=True) ws = os.path.dirname(nwtfile) ml = flopy.modflow.Modflow(model_ws=ws, version="mfnwt") @@ -147,11 +147,11 @@ def load_nwt_pack(nwtfile): def load_nwt_model(nfile): new_ws = ( - baseTestDir(__file__, relPath="temp", verbose=True) + base_test_dir(__file__, rel_path="temp", verbose=True) + "_" + os.path.basename(nfile).replace(".nam", "") ) - testFramework = flopyTest(testDirs=new_ws, verbose=True) + test_setup = FlopyTestSetup(test_dirs=new_ws, verbose=True) f = os.path.basename(nfile) model_ws = os.path.dirname(nfile) diff --git a/autotest/t015_test.py b/autotest/t015_test.py index 96fcd7e0c2..1d50b0a3c2 100644 --- a/autotest/t015_test.py +++ b/autotest/t015_test.py @@ -14,9 +14,9 @@ except: pymake = None -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) mfexe = "mf2005" v = flopy.which(mfexe) @@ -41,8 +41,8 @@ def test_str_issue1164(): - model_ws = f"{baseDir}_test_str_issue1164" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_str_issue1164" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow.load( str_items[0]["mfnam"], @@ -84,8 +84,8 @@ def test_str_issue1164(): def test_str_fixed_free(): - model_ws = f"{baseDir}_test_str_fixed" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_str_fixed" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow.load( str_items[0]["mfnam"], @@ -166,8 +166,8 @@ def test_str_fixed_free(): msg = "could not load the fixed format model with aux variables" assert m2 is not None, msg - model_ws2 = f"{baseDir}_test_str_free" - testFramework.addTestDir(model_ws2) + model_ws2 = f"{base_dir}_test_str_free" + test_setup.add_test_dir(model_ws2) m.change_model_ws(model_ws2) m.set_ifrefm() diff --git a/autotest/t016_test.py b/autotest/t016_test.py index 4ec610a5a0..9c2ac4a103 100644 --- a/autotest/t016_test.py +++ b/autotest/t016_test.py @@ -1,9 +1,9 @@ import os import flopy import numpy as np -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) exe_name = "mfusg" v = flopy.which(exe_name) @@ -14,8 +14,8 @@ def test_usg_disu_load(): - model_ws = f"{baseDir}_test_usg_disu_load" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_usg_disu_load" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pthusgtest = os.path.join( "..", "examples", "data", "mfusg_test", "01A_nestedgrid_nognc" @@ -57,8 +57,8 @@ def test_usg_disu_load(): def test_usg_sms_load(): - model_ws = f"{baseDir}_test_usg_sms_load" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_usg_sms_load" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pthusgtest = os.path.join( "..", "examples", "data", "mfusg_test", "01A_nestedgrid_nognc" @@ -95,8 +95,8 @@ def test_usg_sms_load(): def test_usg_model(): - model_ws = f"{baseDir}_test_usg_model" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_usg_model" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mf = flopy.mfusg.MfUsg( version="mfusg", @@ -145,8 +145,8 @@ def test_usg_load_01B(): "loading: 01A_nestedgrid_nognc.nam" ) - model_ws = f"{baseDir}_test_usg_load_01B" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_usg_load_01B" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pthusgtest = os.path.join( "..", "examples", "data", "mfusg_test", "01A_nestedgrid_nognc" @@ -180,8 +180,8 @@ def test_usg_load_01B(): def test_usg_load_45usg(): print("testing 3-layer unstructured mfusg model loading: 45usg.nam") - model_ws = f"{baseDir}_test_usg_load_45usg" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_usg_load_45usg" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pthusgtest = os.path.join("..", "examples", "data", "mfusg_test", "45usg") fname = os.path.abspath(os.path.join(pthusgtest, "45usg.nam")) @@ -217,8 +217,8 @@ def test_usg_rch_evt_models01(): "EVT nevtop == 1: usg_rch_evt.nam" ) - new_ws = f"{baseDir}_test_usg_rch_evt_models01" - testFramework = flopyTest(verbose=True, testDirs=new_ws) + new_ws = f"{base_dir}_test_usg_rch_evt_models01" + test_setup = FlopyTestSetup(verbose=True, test_dirs=new_ws) model_ws = os.path.join( "..", "examples", "data", "mfusg_test", "rch_evt_tests" @@ -243,8 +243,8 @@ def test_usg_rch_evt_models02(): "and EVT nevtop == 2: usg_rch_evt_nrchop2.nam" ) - new_ws = f"{baseDir}_test_usg_rch_evt_models02" - testFramework = flopyTest(verbose=True, testDirs=new_ws) + new_ws = f"{base_dir}_test_usg_rch_evt_models02" + test_setup = FlopyTestSetup(verbose=True, test_dirs=new_ws) model_ws = os.path.join( "..", "examples", "data", "mfusg_test", "rch_evt_tests" @@ -269,8 +269,8 @@ def test_usg_rch_evt_models02a(): "than in nodelay[0] usg_rch_evt_nrchop2.nam" ) - new_ws = f"{baseDir}_test_usg_rch_evt_models02a" - testFramework = flopyTest(verbose=True, testDirs=new_ws) + new_ws = f"{base_dir}_test_usg_rch_evt_models02a" + test_setup = FlopyTestSetup(verbose=True, test_dirs=new_ws) model_ws = os.path.join( "..", "examples", "data", "mfusg_test", "rch_evt_tests" @@ -291,8 +291,8 @@ def test_usg_ss_to_tr(): # Test switching steady model to transient # https://github.com/modflowpy/flopy/issues/1187 - new_ws = f"{baseDir}_test_usg_ss_to_tr" - testFramework = flopyTest(verbose=True, testDirs=new_ws) + new_ws = f"{base_dir}_test_usg_ss_to_tr" + test_setup = FlopyTestSetup(verbose=True, test_dirs=new_ws) model_ws = os.path.join( "..", "examples", "data", "mfusg_test", "01A_nestedgrid_nognc" diff --git a/autotest/t017_test.py b/autotest/t017_test.py index c1c01c9ca2..eb682a3c8f 100644 --- a/autotest/t017_test.py +++ b/autotest/t017_test.py @@ -3,14 +3,14 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_formattedfile_read(): - model_ws = f"{baseDir}_test_formattedfile_read" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_formattedfile_read" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) h = flopy.utils.FormattedHeadFile( os.path.join("..", "examples", "data", "mf2005_test", "test1tr.githds") @@ -51,8 +51,8 @@ def test_formattedfile_read(): def test_binaryfile_read(): - model_ws = f"{baseDir}_test_binaryfile_read" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_binaryfile_read" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) h = flopy.utils.HeadFile( os.path.join("..", "examples", "data", "freyberg", "freyberg.githds") @@ -150,8 +150,8 @@ def test_cellbudgetfile_read(): def test_cellbudgetfile_position(): - model_ws = f"{baseDir}_test_cellbudgetfile_position" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_cellbudgetfile_position" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) fpth = os.path.join( "..", "examples", "data", "zonbud_examples", "freyberg.gitcbc" @@ -328,8 +328,8 @@ def test_cellbudgetfile_readrecord_waux(): def test_binaryfile_writeread(): - model_ws = f"{baseDir}_test_binaryfile_writeread" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_binaryfile_writeread" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pth = os.path.join("..", "examples", "data", "nwt_test") model = "Pr3_MFNWT_lower.nam" diff --git a/autotest/t018_test.py b/autotest/t018_test.py index a0478a2578..7e734c270e 100644 --- a/autotest/t018_test.py +++ b/autotest/t018_test.py @@ -1,14 +1,14 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_tpl_constant(): - model_ws = f"{baseDir}_test_tpl_constant" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_tpl_constant" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) # Define the model dimensions nlay = 3 @@ -50,8 +50,8 @@ def test_tpl_constant(): def test_tpl_layered(): - model_ws = f"{baseDir}_test_tpl_layered" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_tpl_layered" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 3 nrow = 20 @@ -88,8 +88,8 @@ def test_tpl_layered(): def test_tpl_zoned(): - model_ws = f"{baseDir}_test_tpl_zoned" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_tpl_zoned" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 3 nrow = 20 diff --git a/autotest/t019_test.py b/autotest/t019_test.py index 4659bd5dbc..980a67fd2a 100644 --- a/autotest/t019_test.py +++ b/autotest/t019_test.py @@ -1,15 +1,15 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) # Test hydmod data readers def test_hydmodfile_create(): - model_ws = f"{baseDir}_test_hydmodfile_create" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_hydmodfile_create" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow("test", model_ws=model_ws) hyd = flopy.modflow.ModflowHyd(m) @@ -46,8 +46,8 @@ def test_hydmodfile_create(): def test_hydmodfile_load(): - model_ws = f"{baseDir}_test_hydmodfile_load" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_hydmodfile_load" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) model = "test1tr.nam" pth = os.path.join("..", "examples", "data", "hydmod_test") diff --git a/autotest/t020_test.py b/autotest/t020_test.py index b4f4a8e891..18cd6e2940 100644 --- a/autotest/t020_test.py +++ b/autotest/t020_test.py @@ -1,9 +1,9 @@ # Test modflow write and run import numpy as np import matplotlib.pyplot as plt -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def analyticalWaterTableSolution(h1, h2, z, R, K, L, x): @@ -30,8 +30,8 @@ def test_mfnwt_run(): print(f"Specified executable {exe_name} does not exist in path") return - model_ws = f"{baseDir}_test_mfnwt_run" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_mfnwt_run" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) modelname = "watertable" @@ -168,8 +168,8 @@ def test_irch(): import os import flopy - model_ws = f"{baseDir}_test_tpl_constant" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_tpl_constant" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) org_model_ws = os.path.join( "..", "examples", "data", "freyberg_multilayer_transient" diff --git a/autotest/t021_test.py b/autotest/t021_test.py index c397521834..27e2d1c667 100644 --- a/autotest/t021_test.py +++ b/autotest/t021_test.py @@ -1,14 +1,14 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_mflist_external(): - model_ws = f"{baseDir}_test_mflist_external" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_mflist_external" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ml = flopy.modflow.Modflow( "mflist_test", @@ -38,8 +38,8 @@ def test_mflist_external(): def test_single_mflist_entry_load(): - model_ws = f"{baseDir}_test_single_mflist_entry_load" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_single_mflist_entry_load" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pth = os.path.join("..", "examples", "data", "freyberg") m = flopy.modflow.Modflow.load( diff --git a/autotest/t023_test.py b/autotest/t023_test.py index 0b7f325b73..fe19417694 100644 --- a/autotest/t023_test.py +++ b/autotest/t023_test.py @@ -2,16 +2,16 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_mt3d_multispecies(): - model_ws = f"{baseDir}_test_mt3d_multispecies" - testFramework = flopyTest( + model_ws = f"{base_dir}_test_mt3d_multispecies" + test_setup = FlopyTestSetup( verbose=True, - testDirs=model_ws, + test_dirs=model_ws, ) # modflow model diff --git a/autotest/t024_test.py b/autotest/t024_test.py index d1070fd2fe..493cd8ece7 100644 --- a/autotest/t024_test.py +++ b/autotest/t024_test.py @@ -2,9 +2,9 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) ex_pth = os.path.join("..", "examples", "data", "mf2005_test") testmodels = [ @@ -32,8 +32,8 @@ def checker_on_load(mfnam): def test_bcs_check(): - model_ws = f"{baseDir}_test_bcs_check" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_bcs_check" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mf = flopy.modflow.Modflow(version="mf2005", model_ws=model_ws) @@ -79,8 +79,8 @@ def test_bcs_check(): def test_properties_check(): # test that storage values ignored for steady state - model_ws = f"{baseDir}_test_properties_check" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_properties_check" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mf = flopy.modflow.Modflow( version="mf2005", diff --git a/autotest/t025_test.py b/autotest/t025_test.py index 427159519f..6048d30fdb 100644 --- a/autotest/t025_test.py +++ b/autotest/t025_test.py @@ -6,9 +6,9 @@ import os import flopy import pymake -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) load_path = os.path.join("..", "examples", "data", "mf2005_test") mf_items = [ @@ -108,9 +108,9 @@ def load_lak(mfnam, model_ws, run): ) def test_mf2005load(namfile): dirPath = namfile.replace(".nam", "") - model_ws = f"{baseDir}_{dirPath}" - testFramework = flopyTest(verbose=True, testDirs=model_ws) - testFramework.addTestDir(os.path.join(model_ws, "external")) + model_ws = f"{base_dir}_{dirPath}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) + test_setup.add_test_dir(os.path.join(model_ws, "external")) load_lak(namfile, model_ws, run) diff --git a/autotest/t026_test.py b/autotest/t026_test.py index 0d6e2dbd3c..05041ecac6 100644 --- a/autotest/t026_test.py +++ b/autotest/t026_test.py @@ -6,9 +6,9 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) seawat_exe = "swtv4" isseawat = flopy.which(seawat_exe) @@ -45,8 +45,8 @@ def test_seawat_henry(): # SEAWAT model from a modflow model and an mt3d model - model_ws = f"{baseDir}_test_seawat_henry" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_seawat_henry" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) modelname = "henry" mf = flopy.modflow.Modflow(modelname, exe_name="swtv4", model_ws=model_ws) @@ -126,8 +126,8 @@ def test_seawat_henry(): def test_seawat2_henry(): # SEAWAT model directly by adding packages - model_ws = f"{baseDir}_test_seawat2_henry" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_seawat2_henry" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) modelname = "henry2" m = flopy.seawat.swt.Seawat( diff --git a/autotest/t027_test.py b/autotest/t027_test.py index 564d4ebeef..b59188b03a 100644 --- a/autotest/t027_test.py +++ b/autotest/t027_test.py @@ -9,9 +9,9 @@ import flopy import numpy as np from flopy.utils.flopy_io import line_parse -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) mf2005pth = os.path.join("..", "examples", "data", "mnw2_examples") mnw1_path = os.path.join("..", "examples", "data", "mf2005_test") @@ -27,8 +27,8 @@ def test_line_parse(): def test_load(): """t027 test load of MNW2 Package""" - model_ws = f"{baseDir}_test_load" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_load" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) # load in the test problem (1 well, 3 stress periods) m = flopy.modflow.Modflow.load( @@ -62,8 +62,8 @@ def test_load(): def test_mnw1_load_write(): - model_ws = f"{baseDir}_test_mnw1_load_write" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mnw1_load_write" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow.load( "mnw1.nam", @@ -99,8 +99,8 @@ def test_mnw1_load_write(): def test_make_package(): """t027 test make MNW2 Package""" - model_ws = f"{baseDir}_test_make_package" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_make_package" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m4 = flopy.modflow.Modflow("mnw2example", model_ws=model_ws) dis = flopy.modflow.ModflowDis( @@ -310,8 +310,8 @@ def test_mnw2_create_file(): """ import pandas as pd - model_ws = f"{baseDir}_test_mnw2_create_file" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mnw2_create_file" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mf = flopy.modflow.Modflow("test_mfmnw2", exe_name="mf2005") wellids = [1, 2] @@ -383,8 +383,8 @@ def test_export(): except: netCDF4 = None - model_ws = f"{baseDir}_test_export" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_export" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow.load( "MNW2-Fig28.nam", @@ -414,8 +414,8 @@ def test_export(): def test_blank_lines(): - model_ws = f"{baseDir}_test_blank_lines" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_blank_lines" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mnw2str = """3 50 0 EB-33 -3 diff --git a/autotest/t028_test.py b/autotest/t028_test.py index 331456e046..44f6a10d43 100644 --- a/autotest/t028_test.py +++ b/autotest/t028_test.py @@ -2,9 +2,9 @@ import os import shutil import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) pthtest = os.path.join("..", "examples", "data", "swtv4_test") @@ -61,7 +61,7 @@ def test_seawat_array_format(): - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) d = "2_henry" subds = ["1_classic_case1"] @@ -69,9 +69,9 @@ def test_seawat_array_format(): pth = os.path.join(pthtest, d, subd) model_ws = os.path.join( - f"{baseDir}_test_seawat_array_format_{d}-{subd}" + f"{base_dir}_test_seawat_array_format_{d}-{subd}" ) - testFramework.addTestDir(model_ws) + test_setup.add_test_dir(model_ws) namfile = "seawat.nam" if subd == "6_age_simulation": @@ -98,9 +98,9 @@ def test_swtv4(d, subd): def run_swtv4(d, subd): - testFramework = flopyTest(verbose=True) - model_ws = os.path.join(f"{baseDir}_test_swtv4_{d}-{subd}") - testFramework.addTestDir(model_ws) + test_setup = FlopyTestSetup(verbose=True) + model_ws = os.path.join(f"{base_dir}_test_swtv4_{d}-{subd}") + test_setup.add_test_dir(model_ws) # set up paths pth = os.path.join(pthtest, d, subd) diff --git a/autotest/t029_test.py b/autotest/t029_test.py index 724f45ed5e..e1128412df 100644 --- a/autotest/t029_test.py +++ b/autotest/t029_test.py @@ -7,9 +7,9 @@ import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) pthtest = os.path.join("..", "examples", "data", "mfgrd_test") flowpth = os.path.join("..", "examples", "data", "mf6-freyberg") @@ -201,8 +201,8 @@ def test_mfgrddisu_modelgrid(): def test_faceflows(): - model_ws = f"{baseDir}_test_faceflows" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_faceflows" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) sim = flopy.mf6.MFSimulation.load( sim_name="freyberg", @@ -277,8 +277,8 @@ def test_faceflows(): def test_flowja_residuals(): - model_ws = f"{baseDir}_test_flowja_residuals" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_flowja_residuals" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) sim = flopy.mf6.MFSimulation.load( sim_name="freyberg", diff --git a/autotest/t030_test.py b/autotest/t030_test.py index b688c4b256..98058ca072 100644 --- a/autotest/t030_test.py +++ b/autotest/t030_test.py @@ -1,13 +1,13 @@ import os import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_vdf_vsc(): - model_ws = f"{baseDir}_test_vdf_vsc" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_vdf_vsc" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 3 nrow = 4 diff --git a/autotest/t031_test.py b/autotest/t031_test.py index baa9d16b56..f3f99d2454 100644 --- a/autotest/t031_test.py +++ b/autotest/t031_test.py @@ -13,7 +13,7 @@ from flopy.utils.modpathfile import EndpointFile, PathlineFile from flopy.utils.recarray_utils import ra_slice from flopy.modpath.mp6sim import StartingLocationsFile -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup try: import shapefile @@ -25,7 +25,7 @@ ex_pth = "../examples/data/mp6/" -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def copy_modpath_files(model_ws, baseName): @@ -43,8 +43,8 @@ def copy_modpath_files(model_ws, baseName): def test_mpsim(): - model_ws = f"{baseDir}_test_mpsim" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mpsim" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) copy_modpath_files(model_ws, "EXAMPLE.") @@ -132,8 +132,8 @@ def test_mpsim(): def test_get_destination_data(): - model_ws = f"{baseDir}_test_get_destination_data" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_get_destination_data" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) copy_modpath_files(model_ws, "EXAMPLE.") copy_modpath_files(model_ws, "EXAMPLE-3.") @@ -318,8 +318,8 @@ def test_get_destination_data(): def test_loadtxt(): from flopy.utils.flopy_io import loadtxt - model_ws = f"{baseDir}_test_loadtxt" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_loadtxt" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) copy_modpath_files(model_ws, "EXAMPLE-3.") diff --git a/autotest/t032_test.py b/autotest/t032_test.py index 7a3b3a4f8a..e9ed23eba4 100644 --- a/autotest/t032_test.py +++ b/autotest/t032_test.py @@ -13,15 +13,15 @@ CRS, ) from flopy.export.netcdf import NetCdf -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_polygon_from_ij(): """test creation of a polygon from an i, j location using get_vertices().""" - model_ws = f"{baseDir}_test_polygon_from_ij" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_polygon_from_ij" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) m = flopy.modflow.Modflow("toy_model", model_ws=model_ws) diff --git a/autotest/t033_test.py b/autotest/t033_test.py index 73a552d238..6d2e74c8a9 100644 --- a/autotest/t033_test.py +++ b/autotest/t033_test.py @@ -2,14 +2,14 @@ import numpy as np import flopy from flopy.utils.util_array import Util2d -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_rchload(): - model_ws = f"{baseDir}_test_rchload" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_rchload" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 2 nrow = 3 diff --git a/autotest/t034_test.py b/autotest/t034_test.py index 040d900f2c..47695e0e47 100644 --- a/autotest/t034_test.py +++ b/autotest/t034_test.py @@ -7,14 +7,14 @@ import flopy from flopy.utils.util_array import Util2d import numpy as np -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_create_uzf(): - model_ws = f"{baseDir}_test_create_uzf" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_create_uzf" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) # copy the test files gpth = os.path.join("..", "examples", "data", "mf2005_test", "UZFtest2.*") @@ -237,8 +237,8 @@ def load_and_write(model_ws): def test_uzf_surfk(): - model_ws = f"{baseDir}_test_uzf_surfk" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_uzf_surfk" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "uzf_examples") uzf_name = "UZFtest4.uzf" @@ -276,8 +276,8 @@ def test_read_write_nwt_options(): from flopy.modflow import ModflowWel, ModflowUzf1, ModflowSfr2 from flopy.utils.optionblock import OptionBlock - model_ws = f"{baseDir}_test_read_write_nwt_options" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_read_write_nwt_options" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) welstr = "OPTIONS\nSPECIFY 0.5 10\nTABFILES 2 28\nEND\n" welstr2 = "OPTIONS\nSPECIFY 0.3\nTABFILES 2 28\nEND\n" @@ -326,8 +326,8 @@ def test_read_write_nwt_options(): def test_load_write_sfr_option_block(): - model_ws = f"{baseDir}_test_write_sfr_option_block" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_write_sfr_option_block" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") sfr_name = "sagehen_ob.sfr" @@ -378,8 +378,8 @@ def test_load_write_sfr_option_block(): def test_load_write_sfr_option_line(): - model_ws = f"{baseDir}_test_load_write_sfr_option_line" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_write_sfr_option_line" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") sfr_name = "sagehen.sfr" @@ -439,8 +439,8 @@ def test_load_write_sfr_option_line(): def test_load_write_uzf_option_block(): - model_ws = f"{baseDir}_test_load_write_uzf_option_block" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_write_uzf_option_block" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") uzf_name = "sagehen_ob.uzf" @@ -488,8 +488,8 @@ def test_load_write_uzf_option_block(): def test_load_write_uzf_option_line(): - model_ws = f"{baseDir}_test_load_write_uzf_option_line" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_write_uzf_option_line" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") uzf_name = "sagehen.uzf" @@ -531,8 +531,8 @@ def test_load_write_uzf_option_line(): def test_load_write_wel_option_block(): - model_ws = f"{baseDir}_test_load_write_wel_option_block" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_write_wel_option_block" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") wel_name = "sagehen_ob.wel" @@ -581,8 +581,8 @@ def test_load_write_wel_option_block(): def test_load_write_wel_option_line(): - model_ws = f"{baseDir}_test_load_write_wel_option_line" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_load_write_wel_option_line" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ws = os.path.join("..", "examples", "data", "options") wel_name = "sagehen.wel" diff --git a/autotest/t035_test.py b/autotest/t035_test.py index 2b8466e46e..a2bbd48ac9 100644 --- a/autotest/t035_test.py +++ b/autotest/t035_test.py @@ -7,9 +7,9 @@ import numpy as np import flopy import pymake -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) exe_name = "mflgr" v = flopy.which(exe_name) @@ -25,11 +25,10 @@ def test_simplelgr_load_and_write(silent=True): # Test load and write of distributed MODFLOW-LGR example problem - model_ws = f"{baseDir}_test_simplelgr_load_and_write" - testFramework = flopyTest( + model_ws = f"{base_dir}_test_simplelgr_load_and_write" + test_setup = FlopyTestSetup( verbose=True, - testDirs=model_ws, - create=True, + test_dirs=model_ws, ) pth = os.path.join("..", "examples", "data", "mflgr_v2", "ex3") @@ -251,11 +250,10 @@ def singleModel( def test_simple_lgrmodel_from_scratch(silent=True): - model_ws = f"{baseDir}_test_simple_lgrmodel_from_scratch" - testFramework = flopyTest( + model_ws = f"{base_dir}_test_simple_lgrmodel_from_scratch" + test_setup = FlopyTestSetup( verbose=True, - testDirs=model_ws, - create=True, + test_dirs=model_ws, ) # coordinates and extend Mother diff --git a/autotest/t036_test.py b/autotest/t036_test.py index 4bc091e722..d09b891c3b 100644 --- a/autotest/t036_test.py +++ b/autotest/t036_test.py @@ -4,9 +4,9 @@ import os import flopy import pymake -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) pth = os.path.join("..", "examples", "data", "mf2005_test") cpth = os.path.join("temp", "t036") @@ -20,8 +20,8 @@ def test_uzf_unit_numbers(): - model_ws = f"{baseDir}_test_uzf_unit_numbers" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_uzf_unit_numbers" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mfnam = "UZFtest2.nam" orig_pth = os.path.join("..", "examples", "data", "uzf_examples") @@ -99,8 +99,8 @@ def test_uzf_unit_numbers(): def test_unitnums_load_and_write(): - model_ws = f"{baseDir}_test_unitnums_load_and_write" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_unitnums_load_and_write" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mfnam = "testsfr2_tab.nam" diff --git a/autotest/t037_test.py b/autotest/t037_test.py index 10554876a2..1f0c6c1698 100644 --- a/autotest/t037_test.py +++ b/autotest/t037_test.py @@ -6,9 +6,9 @@ import os import flopy import pymake -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) swi_path = os.path.join("..", "examples", "data", "mf2005_test") cpth = os.path.join("temp", "t037") @@ -26,8 +26,8 @@ def load_swi(mfnam): name = mfnam.replace(".nam", "") - model_ws = f"{baseDir}_{name}" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_{name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pymake.setup(os.path.join(swi_path, mfnam), model_ws) diff --git a/autotest/t038_test.py b/autotest/t038_test.py index 3b26a0535b..ed347a6193 100644 --- a/autotest/t038_test.py +++ b/autotest/t038_test.py @@ -6,9 +6,9 @@ import pytest import os import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) # build list of name files to try and load usgpth = os.path.join("..", "examples", "data", "mfusg_test") @@ -26,8 +26,8 @@ def test_load_usg(fpth): exdir, namfile = os.path.split(fpth) name = namfile.replace(".nam", "") - model_ws = f"{baseDir}_test_load_usg_{name}" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_load_usg_{name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) load_model(namfile, exdir, model_ws) diff --git a/autotest/t040_test.py b/autotest/t040_test.py index a6d4116a89..ec40e92dc4 100644 --- a/autotest/t040_test.py +++ b/autotest/t040_test.py @@ -3,9 +3,9 @@ import numpy as np import matplotlib.pyplot as plt import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) ibound_path = os.path.join( "..", "examples", "data", "subwt_example", "ibound.ref" @@ -113,8 +113,8 @@ def build_subwt(model_ws): def test_subwt(): - model_ws = f"{baseDir}_test_subwt" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_subwt" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) ml = build_subwt(model_ws) ml.write_input() diff --git a/autotest/t041_test.py b/autotest/t041_test.py index a93e6d53c4..16c9c487ad 100644 --- a/autotest/t041_test.py +++ b/autotest/t041_test.py @@ -6,9 +6,9 @@ import shutil import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) exe_name = "mf2005" v = flopy.which(exe_name) @@ -22,8 +22,8 @@ def test_hob_simple(): """ test041 create and run a simple MODFLOW-2005 OBS example """ - model_ws = f"{baseDir}_test_hob_simple" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_hob_simple" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) modelname = "hob_simple" nlay, nrow, ncol = 1, 11, 11 @@ -72,11 +72,10 @@ def test_obs_load_and_write(): """ test041 load and write of MODFLOW-2005 OBS example problem """ - model_ws = f"{baseDir}_test_obs_load_and_write" - testFramework = flopyTest( + model_ws = f"{base_dir}_test_obs_load_and_write" + test_setup = FlopyTestSetup( verbose=True, - testDirs=model_ws, - create=True, + test_dirs=model_ws, ) pth = os.path.join("..", "examples", "data", "mf2005_obs") @@ -137,11 +136,10 @@ def test_obs_create_and_write(): """ test041 create and write of MODFLOW-2005 OBS example problem """ - model_ws = f"{baseDir}_test_obs_create_and_write" - testFramework = flopyTest( + model_ws = f"{base_dir}_test_obs_create_and_write" + test_setup = FlopyTestSetup( verbose=True, - testDirs=model_ws, - create=True, + test_dirs=model_ws, ) pth = os.path.join("..", "examples", "data", "mf2005_obs") diff --git a/autotest/t043_test.py b/autotest/t043_test.py index 75fa1b2ff5..209a507b28 100644 --- a/autotest/t043_test.py +++ b/autotest/t043_test.py @@ -6,9 +6,9 @@ import filecmp import flopy import pymake -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) exe_name = "mf2005" v = flopy.which(exe_name) @@ -22,8 +22,8 @@ def test_gage_load_and_write(): """ test043 load and write of MODFLOW-2005 GAGE example problem """ - model_ws = f"{baseDir}_test_gage_load_and_write" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_gage_load_and_write" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) pth = os.path.join("..", "examples", "data", "mf2005_test") diff --git a/autotest/t050_test.py b/autotest/t050_test.py index cf76f38d31..d8ca12db49 100644 --- a/autotest/t050_test.py +++ b/autotest/t050_test.py @@ -1,13 +1,12 @@ -import shutil +# Test vtk export + import numpy as np import os import flopy from flopy.export.vtk import Vtk -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) - -# Test vtk export +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def count_lines_in_file(filepath, binary=False): @@ -27,8 +26,8 @@ def test_vtk_export_array2d(): except ImportError: return - ws = f"{baseDir}_array_2d_test" - testFramework = flopyTest(verbose=True, testDirs=ws) + ws = f"{base_dir}_array_2d_test" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) # test mf 2005 freyberg mpath = os.path.join( @@ -60,8 +59,8 @@ def test_vtk_export_array3d(): except ImportError: return - ws = f"{baseDir}_array_3d_test" - testFramework = flopyTest(verbose=True, testDirs=ws) + ws = f"{base_dir}_array_3d_test" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) # test mf 2005 freyberg mpath = os.path.join( @@ -110,7 +109,7 @@ def test_vtk_transient_array_2d(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # test mf 2005 freyberg mpath = os.path.join( @@ -123,8 +122,8 @@ def test_vtk_transient_array_2d(): verbose=False, load_only=["dis", "bas6", "rch"], ) - ws = f"{baseDir}_transient_2d_test" - testFramework.addTestDir(ws) + ws = f"{base_dir}_transient_2d_test" + test_setup.add_test_dir(ws) kpers = [0, 1, 1096] @@ -138,8 +137,8 @@ def test_vtk_transient_array_2d(): assert nlines1 == 26837 # with binary - ws = f"{baseDir}_transient_2d_test_bin" - testFramework.addTestDir(ws) + ws = f"{base_dir}_transient_2d_test_bin" + test_setup.add_test_dir(ws) m.rch.rech.export(ws, fmt="vtk", binary=True, kpers=kpers) filetocheck = os.path.join(ws, "rech_000001.vtk") @@ -154,7 +153,7 @@ def test_vtk_export_packages(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # test mf 2005 freyberg mpath = os.path.join( @@ -169,8 +168,8 @@ def test_vtk_export_packages(): ) # dis export and check - ws = f"{baseDir}_DIS" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_DIS" + test_setup.add_test_dir(ws) # todo: pakbase.export() for vtk!!!! m.dis.export(ws, fmt="vtk", xml=True, binary=False) filetocheck = os.path.join(ws, "DIS.vtk") @@ -180,24 +179,24 @@ def test_vtk_export_packages(): assert nlines == 27239, f"nlines ({nlines}) not equal to 27239" # upw with point scalar output - ws = f"{baseDir}_UPW" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_UPW" + test_setup.add_test_dir(ws) m.upw.export(ws, fmt="vtk", xml=True, binary=False, point_scalars=True) filetocheck = os.path.join(ws, "UPW.vtk") nlines1 = count_lines_in_file(filetocheck) assert nlines1 == 42445, f"nlines ({nlines}) not equal to 42445" # bas with smoothing on - ws = f"{baseDir}_BAS_SMOOTH" - testFramework.addTestDir(ws) + ws = f"{base_dir}_BAS_SMOOTH" + test_setup.add_test_dir(ws) m.bas6.export(ws, fmt="vtk", binary=False, smooth=True) filetocheck = os.path.join(ws, "BAS6.vtk") nlines2 = count_lines_in_file(filetocheck) assert nlines2 == 17883 # transient package drain - ws = f"{baseDir}_DRN" - testFramework.addTestDir(ws) + ws = f"{base_dir}_DRN" + test_setup.add_test_dir(ws) kpers = [0, 1, 1096] m.drn.export(ws, fmt="vtk", binary=False, xml=True, kpers=kpers, pvd=True) filetocheck = os.path.join(ws, "DRN_000001.vtu") @@ -208,15 +207,15 @@ def test_vtk_export_packages(): assert nlines4 == 27239 # dis with binary - ws = f"{baseDir}_DIS_BINARY" - testFramework.addTestDir(ws) + ws = f"{base_dir}_DIS_BINARY" + test_setup.add_test_dir(ws) m.dis.export(ws, fmt="vtk", binary=True) filetocheck = os.path.join(ws, "DIS.vtk") assert os.path.exists(filetocheck) # upw with point scalars and binary - ws = f"{baseDir}_UPW_BINARY" - testFramework.addTestDir(ws) + ws = f"{base_dir}_UPW_BINARY" + test_setup.add_test_dir(ws) m.upw.export(ws, fmt="vtk", point_scalars=True, binary=True) filetocheck = os.path.join(ws, "UPW.vtk") assert os.path.exists(filetocheck) @@ -228,7 +227,7 @@ def test_vtk_mf6(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # test mf6 mf6expth = os.path.join("..", "examples", "data", "mf6") @@ -248,13 +247,13 @@ def test_vtk_mf6(): for mname in sim_models: print(mname) m = loaded_sim.get_model(mname) - ws = f"{baseDir}_{m.name}" - testFramework.addTestDir(ws) + ws = f"{base_dir}_{m.name}" + test_setup.add_test_dir(ws) m.export(ws, fmt="vtk", binary=False) # check one filetocheck = os.path.join( - f"{baseDir}_twrihfb2015", "twrihfb2015_000000.vtk" + f"{base_dir}_twrihfb2015", "twrihfb2015_000000.vtk" ) # totalbytes = os.path.getsize(filetocheck) # assert(totalbytes==21609) @@ -270,7 +269,7 @@ def test_vtk_binary_head_export(): # test mf 2005 freyberg from flopy.utils import HeadFile - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) mpth = os.path.join( "..", "examples", "data", "freyberg_multilayer_transient" @@ -284,8 +283,8 @@ def test_vtk_binary_head_export(): filenametocheck = "freyberg_head_000003.vtu" # export and check - ws = f"{baseDir}_heads_test" - testFramework.addTestDir(ws) + ws = f"{base_dir}_heads_test" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, pvd=True, xml=True) vtkobj.add_heads( @@ -298,8 +297,8 @@ def test_vtk_binary_head_export(): assert nlines == 34 # with point scalars - ws = f"{baseDir}_heads_test_1" - testFramework.addTestDir(ws) + ws = f"{base_dir}_heads_test_1" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, pvd=True, xml=True, point_scalars=True) vtkobj.add_heads( @@ -312,8 +311,8 @@ def test_vtk_binary_head_export(): assert nlines1 == 34 # with smoothing - ws = f"{baseDir}_heads_test_2" - testFramework.addTestDir(ws) + ws = f"{base_dir}_heads_test_2" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, pvd=True, xml=True, smooth=True) vtkobj.add_heads( @@ -332,7 +331,7 @@ def test_vtk_cbc(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # test mf 2005 freyberg from flopy.utils import CellBudgetFile @@ -349,8 +348,8 @@ def test_vtk_cbc(): filenametocheck = "freyberg_CBC_000000.vtu" # export and check with point scalar - ws = f"{baseDir}_freyberg_CBC" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_freyberg_CBC" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, binary=False, xml=True, pvd=True, point_scalars=True) vtkobj.add_cell_budget(cbc, kstpkper=[(0, 0), (0, 1), (0, 2)]) @@ -361,8 +360,8 @@ def test_vtk_cbc(): assert nlines == 39243 # with point scalars and binary - ws = f"{baseDir}_freyberg_CBC_binary" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_freyberg_CBC_binary" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, xml=True, pvd=True, point_scalars=True) vtkobj.add_cell_budget(cbc, kstpkper=[(0, 0), (0, 1), (0, 2)]) @@ -380,7 +379,7 @@ def test_vtk_vector(): from flopy.utils import postprocessing as pp from flopy.utils import HeadFile, CellBudgetFile - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # test mf 2005 freyberg mpth = os.path.join( @@ -402,8 +401,8 @@ def test_vtk_vector(): filenametocheck = "discharge.vtu" # export and check with point scalar - ws = f"{baseDir}_vector_0" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_vector_0" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, xml=True, binary=False, point_scalars=True) vtkobj.add_vector(q, "discharge") @@ -414,8 +413,8 @@ def test_vtk_vector(): assert nlines == 36045 # with point scalars and binary - ws = f"{baseDir}_vector_0_binary" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_vector_0_binary" + test_setup.add_test_dir(ws) vtkobj = Vtk(m, point_scalars=True) vtkobj.add_vector(q, "discharge") @@ -428,8 +427,8 @@ def test_vtk_vector(): # test at cell centers q = pp.get_specific_discharge(vectors, m, head) - ws = f"{baseDir}_vector_1" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_vector_1" + test_setup.add_test_dir(ws) filenametocheck = "discharge_verts.vtu" vtkobj = Vtk(m, xml=True, binary=False) @@ -440,8 +439,8 @@ def test_vtk_vector(): nlines2 = count_lines_in_file(filetocheck) assert nlines2 == 27645, f"nlines != 10598 ({nlines2})" - ws = f"{baseDir}_vector_1_binary" - testFramework.addTestDir(ws, create=True) + ws = f"{base_dir}_vector_1_binary" + test_setup.add_test_dir(ws) # with values directly given at vertices and binary vtkobj = Vtk(m, xml=True, binary=False) @@ -461,7 +460,7 @@ def test_vtk_unstructured(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) def load_verts(fname): verts = np.genfromtxt( @@ -524,8 +523,8 @@ def load_iverts(fname): ncpl=ncpl, ) - ws = f"{baseDir}_unstructured" - testFramework.addTestDir(ws) + ws = f"{base_dir}_unstructured" + test_setup.add_test_dir(ws) outfile = os.path.join(ws, "disu_grid.vtu") vtkobj = Vtk( @@ -558,7 +557,7 @@ def test_vtk_vertex(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # disv test workspace = os.path.join( @@ -568,8 +567,8 @@ def test_vtk_vertex(): sim = flopy.mf6.MFSimulation.load(sim_ws=workspace) gwf = sim.get_model("gwf_1") - ws = f"{baseDir}_vertex" - testFramework.addTestDir(ws) + ws = f"{base_dir}_vertex" + test_setup.add_test_dir(ws) outfile = os.path.join(ws, "disv.vtk") vtkobj = Vtk(model=gwf, binary=True, smooth=False) @@ -602,7 +601,7 @@ def test_vtk_pathline(): except ImportError: return - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) # pathline test for vtk ws = os.path.join("..", "examples", "data", "freyberg") @@ -610,8 +609,8 @@ def test_vtk_pathline(): "freyberg.nam", model_ws=ws, exe_name="mf2005" ) - ws = f"{baseDir}_pathline" - testFramework.addTestDir(ws) + ws = f"{base_dir}_pathline" + test_setup.add_test_dir(ws) ml.change_model_ws(new_pth=ws) ml.write_input() diff --git a/autotest/t064_test_performance.py b/autotest/t064_test_performance.py index 8a56b6c9cc..92404593a1 100644 --- a/autotest/t064_test_performance.py +++ b/autotest/t064_test_performance.py @@ -9,9 +9,9 @@ import time import numpy as np import flopy.modflow as fm -from ci_framework import baseTestDir +from ci_framework import base_test_dir -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) class TestModflowPerformance: @@ -33,7 +33,7 @@ def setup_class(cls): prepend = "".join(random.choice(letters) for i in range(10)) cls.modelname = "junk" - cls.model_ws = f"{baseDir}_{prepend}" + cls.model_ws = f"{base_dir}_{prepend}" external_path = "external/" if not os.path.isdir(cls.model_ws): diff --git a/autotest/t067_test_ulstrd.py b/autotest/t067_test_ulstrd.py index 0f8eab251a..882d9c1407 100644 --- a/autotest/t067_test_ulstrd.py +++ b/autotest/t067_test_ulstrd.py @@ -1,14 +1,14 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_ulstrd(): - model_ws = f"{baseDir}_test_ulstrd" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_ulstrd" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) # Create an original model and then manually modify to use # advanced list reader capabilities diff --git a/autotest/t068_test_ssm.py b/autotest/t068_test_ssm.py index 02ef5295ee..59cfc8e3b3 100644 --- a/autotest/t068_test_ssm.py +++ b/autotest/t068_test_ssm.py @@ -5,9 +5,9 @@ import os import flopy import numpy as np -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) mf_exe_name = "mf2005" mt_exe_name = "mt3dms" @@ -19,8 +19,8 @@ def test_mt3d_ssm_with_nodata_in_1st_sp(): - model_ws = f"{baseDir}_test_mt3d_ssm_with_nodata_in_1st_sp" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_mt3d_ssm_with_nodata_in_1st_sp" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay, nrow, ncol = 3, 5, 5 perlen = np.zeros((10), dtype=float) + 10 @@ -115,8 +115,8 @@ def test_mt3d_ssm_with_nodata_in_1st_sp(): ) assert success, "MT3D did not run" - model_ws2 = f"{baseDir}_test_mt3d_ssm_with_nodata_in_1st_sp_b" - testFramework.addTestDir(model_ws2) + model_ws2 = f"{base_dir}_test_mt3d_ssm_with_nodata_in_1st_sp_b" + test_setup.add_test_dir(model_ws2) mf2 = flopy.modflow.Modflow.load( "model_mf.nam", model_ws=model_ws, exe_name="mf2005" @@ -152,8 +152,8 @@ def test_none_spdtype(): # ensure that -1 and None work as valid list entries in the # stress period dictionary - model_ws = f"{baseDir}_test_none_spdtyp" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_none_spdtyp" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) mf = flopy.modflow.Modflow(model_ws=model_ws, exe_name=mf_exe_name) dis = flopy.modflow.ModflowDis(mf, nper=2) @@ -172,8 +172,8 @@ def test_none_spdtype(): def test_ssm_readwrite(): - model_ws = f"{baseDir}_test_ssm_readwrite" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_ssm_readwrite" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) # Instantiate MODFLOW model mf = flopy.modflow.Modflow() diff --git a/autotest/t069_test_vtkexportmodel.py b/autotest/t069_test_vtkexportmodel.py index c2fc612c1f..734ae38262 100644 --- a/autotest/t069_test_vtkexportmodel.py +++ b/autotest/t069_test_vtkexportmodel.py @@ -5,16 +5,16 @@ import flopy from flopy.export import vtk from ci_framework import ( - baseTestDir, - flopyTest, + base_test_dir, + FlopyTestSetup, ) mf_exe_name = "mf6" def test_vtk_export_model_without_packages_names(): - baseDir = baseTestDir(__file__, relPath="temp", verbose=True) - testFramework = flopyTest(verbose=True, testDirs=baseDir) + base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) + test_setup = FlopyTestSetup(verbose=True, test_dirs=baseDir) name = "mymodel" sim = flopy.mf6.MFSimulation(sim_name=name, sim_ws=baseDir, exe_name="mf6") diff --git a/autotest/t070_test_quasi3layers.py b/autotest/t070_test_quasi3layers.py index 135f4be040..3ac01a07ed 100644 --- a/autotest/t070_test_quasi3layers.py +++ b/autotest/t070_test_quasi3layers.py @@ -11,9 +11,9 @@ import numpy as np import flopy import matplotlib.pyplot as plt -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_plotting_with_quasi3d_layers(): @@ -24,8 +24,8 @@ def test_plotting_with_quasi3d_layers(): runTest = False if runTest: - model_ws = f"{baseDir}_test_mfusg" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_mfusg" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) modelname = "model_mf" exe_name = "mf2005" diff --git a/autotest/t071_test_nwt_ag.py b/autotest/t071_test_nwt_ag.py index 46b957014b..896026c269 100644 --- a/autotest/t071_test_nwt_ag.py +++ b/autotest/t071_test_nwt_ag.py @@ -1,11 +1,11 @@ import os import flopy import numpy as np -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup mpth = os.path.join("..", "examples", "data", "ag_test") -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_empty_ag_package(): @@ -17,8 +17,8 @@ def test_empty_ag_package(): def test_load_write_agwater(): - model_ws = f"{baseDir}_test_load_write_agwater" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_load_write_agwater" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) agfile = "Agwater1.ag" ml = flopy.modflow.Modflow("Agwater1", version="mfnwt") @@ -52,8 +52,8 @@ def test_load_write_agwater(): def test_load_write_agwater_uzf(): - model_ws = f"{baseDir}_test_load_write_agwater_uzf" - testFramework = flopyTest(verbose=True, testDirs=model_ws) + model_ws = f"{base_dir}_test_load_write_agwater_uzf" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) uzffile = "Agwater1.uzf" ml = flopy.modflow.Modflow("Agwater1", version="mfnwt") diff --git a/autotest/t072_test_spedis.py b/autotest/t072_test_spedis.py index 51e1d40e08..78bdda10f5 100644 --- a/autotest/t072_test_spedis.py +++ b/autotest/t072_test_spedis.py @@ -16,16 +16,16 @@ import os import numpy as np import flopy.utils.binaryfile as bf -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) # model names, file names and locations modelname_mf2005 = f"mf2005" modelname_mf6 = f"mf6" -modelws_mf2005 = f"{baseDir}_{modelname_mf2005}" -modelws_mf6 = f"{baseDir}_{modelname_mf6}" +modelws_mf2005 = f"{base_dir}_{modelname_mf2005}" +modelws_mf6 = f"{base_dir}_{modelname_mf6}" cbcfile_mf2005 = os.path.join(modelws_mf2005, f"{modelname_mf2005}.cbc") cbcfile_mf6 = os.path.join(modelws_mf6, f"{modelname_mf6}.cbc") @@ -352,7 +352,7 @@ def local_balance_check(Qx_ext, Qy_ext, Qz_ext, hdsfile=None, model=None): def test_extended_budget_default(): - testFramework = flopyTest(verbose=True, testDirs=modelws_mf2005) + test_setup = FlopyTestSetup(verbose=True, test_dirs=modelws_mf2005) # build and run MODFLOW 2005 model build_model_mf2005() @@ -503,7 +503,7 @@ def test_specific_discharge_mf6(): import matplotlib.pyplot as plt from matplotlib.quiver import Quiver - testFramework = flopyTest(verbose=True, testDirs=modelws_mf6) + test_setup = FlopyTestSetup(verbose=True, test_dirs=modelws_mf6) # build and run MODFLOW 6 model build_model_mf6() diff --git a/autotest/t075_test_ugrid.py b/autotest/t075_test_ugrid.py index 12d2881957..44010fc084 100644 --- a/autotest/t075_test_ugrid.py +++ b/autotest/t075_test_ugrid.py @@ -8,9 +8,9 @@ from flopy.discretization import UnstructuredGrid, VertexGrid from flopy.utils.triangle import Triangle from flopy.utils.voronoi import VoronoiGrid -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_unstructured_grid_shell(): @@ -208,8 +208,8 @@ def load_iverts(fname): def test_triangle_unstructured_grid(): - model_ws = f"{baseDir}_test_triangle_unstructured_grid" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_triangle_unstructured_grid" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) maximum_area = 30000.0 extent = (214270.0, 221720.0, 4366610.0, 4373510.0) @@ -244,8 +244,8 @@ def test_triangle_unstructured_grid(): def test_voronoi_vertex_grid(): - model_ws = f"{baseDir}_test_voronoi_vertex_grid" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_vertex_grid" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) xmin = 0.0 xmax = 2.0 @@ -275,8 +275,8 @@ def test_voronoi_vertex_grid(): def test_voronoi_grid0(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid0" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid0" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor0" answer_ncpl = 3804 @@ -328,8 +328,8 @@ def test_voronoi_grid0(plot=False): def test_voronoi_grid1(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid1" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid1" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor1" answer_ncpl = 1679 @@ -364,8 +364,8 @@ def test_voronoi_grid1(plot=False): def test_voronoi_grid2(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid2" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid2" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor2" answer_ncpl = 538 @@ -399,8 +399,8 @@ def test_voronoi_grid2(plot=False): def test_voronoi_grid3(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid3" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid3" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor3" answer_ncpl = 300 @@ -444,8 +444,8 @@ def test_voronoi_grid3(plot=False): def test_voronoi_grid4(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid4" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid4" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor4" answer_ncpl = 410 @@ -482,8 +482,8 @@ def test_voronoi_grid4(plot=False): def test_voronoi_grid5(plot=False): - model_ws = f"{baseDir}_test_voronoi_grid5" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_voronoi_grid5" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) name = "vor5" answer_ncpl = 1067 diff --git a/autotest/t078_test_lake_connections.py b/autotest/t078_test_lake_connections.py index cb86485ba1..bdeb8ab560 100644 --- a/autotest/t078_test_lake_connections.py +++ b/autotest/t078_test_lake_connections.py @@ -1,12 +1,12 @@ import os import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup pth = os.path.join("..", "examples", "data", "mf6-freyberg") name = "freyberg" -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def __export_ascii_grid(modelgrid, file_path, v, nodata=0.0): @@ -123,8 +123,8 @@ def __get_lake_connection_data( def test_base_run(): - model_ws = f"{baseDir}_test_base_run" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_base_run" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) sim = flopy.mf6.MFSimulation().load( sim_name=name, @@ -168,8 +168,8 @@ def test_base_run(): def test_lake(): - model_ws = f"{baseDir}_test_lake" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_lake" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) top = flopy.utils.Raster.load(os.path.join(pth, "top.asc")) bot = flopy.utils.Raster.load(os.path.join(pth, "bot.asc")) @@ -294,8 +294,8 @@ def test_lake(): def test_embedded_lak_ex01(): - model_ws = f"{baseDir}_test_embedded_lak_ex01" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_embedded_lak_ex01" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nper = 1 nlay, nrow, ncol = 5, 17, 17 diff --git a/autotest/t079_test_cbc_full3D.py b/autotest/t079_test_cbc_full3D.py index a6ad07e93a..943682e604 100644 --- a/autotest/t079_test_cbc_full3D.py +++ b/autotest/t079_test_cbc_full3D.py @@ -5,7 +5,7 @@ import numpy as np import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup ex_pths = ( os.path.join("..", "examples", "data", "freyberg"), @@ -22,7 +22,7 @@ mf6_exe += ".exe" mf2005_exe += ".exe" -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def load_mf2005(name, ws_in, ws_out): @@ -126,8 +126,8 @@ def cbc_eval(cbcobj, nnodes, shape3d, modelgrid): def mf6_eval(name, ws_in): - ws_out = f"{baseDir}_{name}" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_{name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) sim = load_mf6(name, ws_in, ws_out) @@ -152,8 +152,8 @@ def mf6_eval(name, ws_in): def mf2005_eval(name, ws_in): - ws_out = f"{baseDir}_{name}" - testFramework = flopyTest(verbose=True, testDirs=ws_out, create=True) + ws_out = f"{base_dir}_{name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws_out) ml = load_mf2005(name, ws_in, ws_out) diff --git a/autotest/t080_test.py b/autotest/t080_test.py index 2e9fcf3410..4aa8dd1d98 100644 --- a/autotest/t080_test.py +++ b/autotest/t080_test.py @@ -14,7 +14,7 @@ import flopy from flopy.utils.gridgen import Gridgen -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup # Set gridgen executable gridgen_exe = "gridgen" @@ -29,13 +29,13 @@ mfusg_exe = flopy.which(mfusg_exe) # set up the example folder -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_mfusg(): # set up a gridgen workspace - gridgen_ws = f"{baseDir}_test_mfusg" - testFramework = flopyTest(verbose=True, testDirs=gridgen_ws) + gridgen_ws = f"{base_dir}_test_mfusg" + test_setup = FlopyTestSetup(verbose=True, test_dirs=gridgen_ws) name = "dummy" nlay = 3 diff --git a/autotest/t501_test.py b/autotest/t501_test.py index e2b5cd45c1..ff3c3b133b 100644 --- a/autotest/t501_test.py +++ b/autotest/t501_test.py @@ -2,12 +2,12 @@ import os import flopy -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup def test_mf6(): - baseDir = baseTestDir(__file__, relPath="temp", verbose=True) - testFramework = flopyTest(verbose=True, testDirs=baseDir) + base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) + test_setup = FlopyTestSetup(verbose=True, test_dirs=baseDir) sim = flopy.mf6.MFSimulation(sim_ws=baseDir) assert isinstance(sim, flopy.mf6.MFSimulation) diff --git a/autotest/t502_test.py b/autotest/t502_test.py index d11aed6a41..9cc8b6909f 100644 --- a/autotest/t502_test.py +++ b/autotest/t502_test.py @@ -5,14 +5,14 @@ from flopy.mf6.modflow import mfims, mftdis, mfgwfic, mfgwfnpf, mfgwfdis, mfgwf from flopy.mf6.modflow.mfsimulation import MFSimulation -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_create_and_run_model(): - testFramework = flopyTest(verbose=True, testDirs=baseDir) + test_setup = FlopyTestSetup(verbose=True, test_dirs=baseDir) # names sim_name = "testsim" @@ -140,7 +140,7 @@ def test_create_and_run_model(): # run the simulation and look for output if run: success, buff = sim.run_simulation() - assert success, f"{baseDir} did not run" f"" + assert success, f"{base_dir} did not run" f"" # head = sim.simulation_data.mfdata[(model_name, 'HDS', 'HEAD')] # print('HEAD: ', head) diff --git a/autotest/t503_test.py b/autotest/t503_test.py index c4f5e7092e..02e44a74d1 100644 --- a/autotest/t503_test.py +++ b/autotest/t503_test.py @@ -5,8 +5,8 @@ import flopy import pymake from ci_framework import ( - baseTestDir, - flopyTest, + base_test_dir, + FlopyTestSetup, download_mf6_examples, ) @@ -69,17 +69,17 @@ def simulation_subdirs(baseDir): def runmodel(exdir): - baseDir = ( - baseTestDir(__file__, relPath="temp", verbose=True) + base_dir = ( + base_test_dir(__file__, rel_path="temp", verbose=True) + "_" + os.path.basename(exdir) ) - testFramework = flopyTest(verbose=True) + test_setup = FlopyTestSetup(verbose=True) simulations = simulation_subdirs(exdir) for src in simulations: ws = copy_folder(baseDir, src) - testFramework.addTestDir(ws) + test_setup.add_test_dir(ws) f = os.path.basename(os.path.normpath(ws)) print("\n\n") print(f"**** RUNNING TEST: {f} ****") @@ -101,7 +101,7 @@ def runmodel(exdir): # set the comparison directory ws2 = f"{ws}-RERUN" - testFramework.addTestDir(ws2) + test_setup.add_test_dir(ws2) sim.simulation_data.mfpath.set_sim_path(ws2) # remove the comparison directory if it exists @@ -129,7 +129,7 @@ def runmodel(exdir): ) assert success, f"comparision for {ws} failed" - testFramework.addTestDir(baseDir) + test_setup.add_test_dir(baseDir) # for running tests with pytest diff --git a/autotest/t504_test.py b/autotest/t504_test.py index e20eee2cc1..339f51b21f 100644 --- a/autotest/t504_test.py +++ b/autotest/t504_test.py @@ -6,7 +6,7 @@ import flopy.utils.binaryfile as bf from flopy.utils.datautil import PyListUtil from flopy.mf6.modflow.mfsimulation import MFSimulation -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup try: import shapefile @@ -28,7 +28,7 @@ if v is None: run = False -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test001a_tharmonic(): @@ -38,10 +38,10 @@ def test001a_tharmonic(): model_name = "flow15" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -171,10 +171,10 @@ def test003_gwfs_disv(): model_name = "gwf_1" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -272,10 +272,10 @@ def test005_advgw_tidal(): model_name = "gwf_1" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -341,10 +341,10 @@ def test006_gwf3(): model_name = "gwf_1" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -457,7 +457,7 @@ def test006_gwf3(): # confirm that files did move save_folder = f"{run_folder}_save02" - testFramework.addTestDir(save_folder, create=True) + test_setup.add_test_dir(save_folder) sim.set_sim_path(save_folder) @@ -538,10 +538,10 @@ def test006_gwf3(): # model_name = "lakeex1b" # # pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) -# run_folder = f"{baseDir}_{test_ex_name}" +# run_folder = f"{base_dir}_{test_ex_name}" # save_folder = f"{run_folder}_save" -# testFramework = flopyTest(verbose=True) -# testFramework.addTestDir([run_folder, save_folder], create=True) +# test_setup = flopyTest(verbose=True) +# test_setup.add_test_dir([run_folder, save_folder]) # # expected_output_folder = os.path.join(pth, "expected_output") # expected_head_file_a = os.path.join( @@ -622,10 +622,10 @@ def test006_2models_mvr(): model_names = ["parent", "child"] pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -813,10 +813,10 @@ def test001e_uzf_3lay(): model_name = "gwf_1" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) # load simulation sim = MFSimulation.load(model_name, "mf6", exe_name, pth, verify_data=True) @@ -886,10 +886,10 @@ def test045_lake2tr(): model_name = "lakeex2a" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -958,10 +958,10 @@ def test036_twrihfb(): model_name = "twrihfb2015" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -1043,10 +1043,10 @@ def test027_timeseriestest(): model_name = "gwf_1" pth = os.path.join("..", "examples", "data", "mf6", test_ex_name) - run_folder = f"{baseDir}_{test_ex_name}" + run_folder = f"{base_dir}_{test_ex_name}" save_folder = f"{run_folder}_save" - testFramework = flopyTest(verbose=True) - testFramework.addTestDir([run_folder, save_folder], create=True) + test_setup = FlopyTestSetup(verbose=True) + test_setup.add_test_dir([run_folder, save_folder]) expected_output_folder = os.path.join(pth, "expected_output") expected_head_file_a = os.path.join( @@ -1119,7 +1119,7 @@ def test027_timeseriestest(): def eval_cbc_precision(): pth = os.path.join( - f"{baseDir}_test001e_UZF_3lay", "test001e_UZF_3lay.uzf.cbc" + f"{base_dir}_test001e_UZF_3lay", "test001e_UZF_3lay.uzf.cbc" ) cbc = flopy.utils.CellBudgetFile(pth, precision="auto") data = cbc.get_data(text="GWF", full3D=False) @@ -1128,7 +1128,7 @@ def eval_cbc_precision(): def eval_replace_ims_package(): - pth = f"{baseDir}_test001e_UZF_3lay" + pth = f"{base_dir}_test001e_UZF_3lay" sim = flopy.mf6.MFSimulation.load("mfsim", sim_ws=pth, exe_name=exe_name) ims = sim.ims @@ -1153,8 +1153,8 @@ def test_mf6_output(): sim_ws = os.path.join("..", "examples", "data", "mf6", ex_name) sim = flopy.mf6.MFSimulation.load(sim_ws=sim_ws, exe_name=exe_name) - ws = f"{baseDir}_{ex_name}_mf6_output" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_{ex_name}_mf6_output" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) sim.set_sim_path(ws) sim.write_simulation() @@ -1257,8 +1257,8 @@ def test_mf6_output_add_observation(): filename=obs_file, digits=10, print_input=True, continuous=obs_dict ) - ws = f"{baseDir}_test045_lake2tr_obs" - testFramework = flopyTest(verbose=True, testDirs=ws, create=True) + ws = f"{base_dir}_test045_lake2tr_obs" + test_setup = FlopyTestSetup(verbose=True, test_dirs=ws) sim.set_sim_path(ws) sim.write_simulation() diff --git a/autotest/t505_test.py b/autotest/t505_test.py index 917fd3eaab..ac53ac37aa 100644 --- a/autotest/t505_test.py +++ b/autotest/t505_test.py @@ -35,7 +35,7 @@ from flopy.mf6.utils import testutils from flopy.mf6.mfbase import MFDataException from flopy.mf6.mfbase import ExtFileAction -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup try: import shapefile @@ -57,7 +57,7 @@ if v is None: run = False -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def get_gwf_model(sim, gwfname, gwfpath, modelshape, chdspd=None, welspd=None): @@ -192,8 +192,8 @@ def test_multi_model(): test_ex_name = "test_multi_model" model_names = ["gwf_model_1", "gwf_model_2", "gwt_model_1", "gwt_model_2"] - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) # temporal discretization nper = 1 @@ -357,8 +357,8 @@ def test_np001(): test_ex_name = "np001" model_name = "np001_mod" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -918,8 +918,8 @@ def test_np002(): test_ex_name = "np002" model_name = "np002_mod" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -1185,8 +1185,8 @@ def test021_twri(): test_ex_name = "test021_twri" model_name = "twri" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -1402,8 +1402,8 @@ def test005_advgw_tidal(): test_ex_name = "test005_advgw_tidal" model_name = "AdvGW_tidal" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -2021,8 +2021,8 @@ def test004_bcfss(): test_ex_name = "test004_bcfss" model_name = "bcf2ss" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -2177,8 +2177,8 @@ def test035_fhb(): test_ex_name = "test035_fhb" model_name = "fhb2015" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -2325,8 +2325,8 @@ def test006_gwf3_disv(): test_ex_name = "test006_gwf3_disv" model_name = "flow" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -2616,8 +2616,8 @@ def test006_2models_gnc(): model_name_1 = "model1" model_name_2 = "model2" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -2966,8 +2966,8 @@ def test050_circle_island(): test_ex_name = "test050_circle_island" model_name = "ci" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -3071,8 +3071,8 @@ def test028_sfr(): test_ex_name = "test028_sfr" model_name = "test1tr" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name @@ -3342,8 +3342,8 @@ def test_transport(): test_ex_name = "test_transport" name = "mst03" - run_folder = f"{baseDir}_{test_ex_name}" - testFramework = flopyTest(verbose=True, testDirs=run_folder, create=True) + run_folder = f"{base_dir}_{test_ex_name}" + test_setup = FlopyTestSetup(verbose=True, test_dirs=run_folder) pth = os.path.join( "..", "examples", "data", "mf6", "create_tests", test_ex_name diff --git a/autotest/t506_test.py b/autotest/t506_test.py index 623b1c46ec..81e960e83e 100644 --- a/autotest/t506_test.py +++ b/autotest/t506_test.py @@ -27,7 +27,7 @@ matplotlib = None plt = None -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup # Set gridgen executable gridgen_exe = "gridgen" @@ -47,7 +47,7 @@ mfusg_exe += ".exe" mfusg_exe = flopy.which(mfusg_exe) -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) VERBOSITY_LEVEL = 0 @@ -65,8 +65,8 @@ def test_mf6disv(): return # set up a gridgen workspace - gridgen_ws = f"{baseDir}_mf6disv" - testFramework = flopyTest(verbose=True, testDirs=gridgen_ws, create=True) + gridgen_ws = f"{base_dir}_mf6disv" + test_setup = FlopyTestSetup(verbose=True, test_dirs=gridgen_ws) name = "dummy" nlay = 3 @@ -184,8 +184,8 @@ def test_mf6disv(): def test_mf6disu(): # set up a gridgen workspace - gridgen_ws = f"{baseDir}_mf6disu" - testFramework = flopyTest(verbose=True, testDirs=gridgen_ws, create=True) + gridgen_ws = f"{base_dir}_mf6disu" + test_setup = FlopyTestSetup(verbose=True, test_dirs=gridgen_ws) name = "dummy" nlay = 3 @@ -338,8 +338,8 @@ def test_mf6disu(): def test_mfusg(): # set up a gridgen workspace - gridgen_ws = f"{baseDir}_mfusg" - testFramework = flopyTest(verbose=True, testDirs=gridgen_ws, create=True) + gridgen_ws = f"{base_dir}_mfusg" + test_setup = FlopyTestSetup(verbose=True, test_dirs=gridgen_ws) name = "dummy" nlay = 3 diff --git a/autotest/t550_test.py b/autotest/t550_test.py index 5fffd8d2ea..b8c22fd1d3 100644 --- a/autotest/t550_test.py +++ b/autotest/t550_test.py @@ -15,14 +15,14 @@ except ImportError: shapefile = None -from ci_framework import baseTestDir, flopyTest +from ci_framework import base_test_dir, FlopyTestSetup -baseDir = baseTestDir(__file__, relPath="temp", verbose=True) +base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) def test_mf6_grid_shp_export(): - model_ws = f"{baseDir}_test_mf6_grid_shp_export" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_mf6_grid_shp_export" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 2 nrow = 10 @@ -154,8 +154,8 @@ def cellid(k, i, j, nrow, ncol): def test_huge_shapefile(): - model_ws = f"{baseDir}_test_huge_shapefile" - testFramework = flopyTest(verbose=True, testDirs=model_ws, create=True) + model_ws = f"{base_dir}_test_huge_shapefile" + test_setup = FlopyTestSetup(verbose=True, test_dirs=model_ws) nlay = 2 nrow = 200 From b50b9778acb6fdf6b01fd2f781790d2b1c1b2ef1 Mon Sep 17 00:00:00 2001 From: Joseph D Hughes Date: Mon, 1 Nov 2021 13:41:23 -0500 Subject: [PATCH 2/2] ci: convert addition autotests to use FlopyTestSetup testing class --- autotest/t501_test.py | 10 +++++----- autotest/t502_test.py | 4 ++-- autotest/t503_test.py | 16 ++++++++-------- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/autotest/t501_test.py b/autotest/t501_test.py index ff3c3b133b..773fb6c6cc 100644 --- a/autotest/t501_test.py +++ b/autotest/t501_test.py @@ -7,9 +7,9 @@ def test_mf6(): base_dir = base_test_dir(__file__, rel_path="temp", verbose=True) - test_setup = FlopyTestSetup(verbose=True, test_dirs=baseDir) + test_setup = FlopyTestSetup(verbose=True, test_dirs=base_dir) - sim = flopy.mf6.MFSimulation(sim_ws=baseDir) + sim = flopy.mf6.MFSimulation(sim_ws=base_dir) assert isinstance(sim, flopy.mf6.MFSimulation) tdis = flopy.mf6.modflow.mftdis.ModflowTdis(sim) @@ -97,7 +97,7 @@ def test_mf6(): sim.write_simulation() # Verify files were written - assert os.path.isfile(os.path.join(baseDir, "mfsim.nam")) + assert os.path.isfile(os.path.join(base_dir, "mfsim.nam")) exts_model = [ "nam", "dis", @@ -124,10 +124,10 @@ def test_mf6(): ] exts_sim = ["gwfgwf", "ims", "tdis"] for ext in exts_model: - fname = os.path.join(baseDir, f"model.{ext}") + fname = os.path.join(base_dir, f"model.{ext}") assert os.path.isfile(fname), f"{fname} not found" for ext in exts_sim: - fname = os.path.join(baseDir, f"sim.{ext}") + fname = os.path.join(base_dir, f"sim.{ext}") assert os.path.isfile(fname), f"{fname} not found" return diff --git a/autotest/t502_test.py b/autotest/t502_test.py index 9cc8b6909f..7b5d9bd3ed 100644 --- a/autotest/t502_test.py +++ b/autotest/t502_test.py @@ -12,7 +12,7 @@ def test_create_and_run_model(): - test_setup = FlopyTestSetup(verbose=True, test_dirs=baseDir) + test_setup = FlopyTestSetup(verbose=True, test_dirs=base_dir) # names sim_name = "testsim" @@ -22,7 +22,7 @@ def test_create_and_run_model(): # set up simulation tdis_name = f"{sim_name}.tdis" sim = MFSimulation( - sim_name=sim_name, version="mf6", exe_name=exe_name, sim_ws=baseDir + sim_name=sim_name, version="mf6", exe_name=exe_name, sim_ws=base_dir ) tdis_rc = [(6.0, 2, 1.0), (6.0, 3, 1.0)] tdis = mftdis.ModflowTdis( diff --git a/autotest/t503_test.py b/autotest/t503_test.py index 02e44a74d1..f794cabbf4 100644 --- a/autotest/t503_test.py +++ b/autotest/t503_test.py @@ -37,12 +37,12 @@ print(f" {exdir}") -def copy_folder(baseDir, src): +def copy_folder(base_dir, src): subDir = src.partition("{0}mf6examples{0}".format(os.path.sep))[2] - if os.path.basename(subDir) in os.path.basename(baseDir): - dst = baseDir + if os.path.basename(subDir) in os.path.basename(base_dir): + dst = base_dir else: - dst = os.path.join(baseDir, subDir) + dst = os.path.join(base_dir, subDir) # clean the destination directory if it exists if os.path.isdir(dst): @@ -58,9 +58,9 @@ def copy_folder(baseDir, src): return dst -def simulation_subdirs(baseDir): +def simulation_subdirs(base_dir): exsubdirs = [] - for dirName, subdirList, fileList in os.walk(baseDir): + for dirName, subdirList, fileList in os.walk(base_dir): for file_name in fileList: if file_name.lower() == "mfsim.nam": print(f"Found directory: {dirName}") @@ -78,7 +78,7 @@ def runmodel(exdir): simulations = simulation_subdirs(exdir) for src in simulations: - ws = copy_folder(baseDir, src) + ws = copy_folder(base_dir, src) test_setup.add_test_dir(ws) f = os.path.basename(os.path.normpath(ws)) print("\n\n") @@ -129,7 +129,7 @@ def runmodel(exdir): ) assert success, f"comparision for {ws} failed" - test_setup.add_test_dir(baseDir) + test_setup.add_test_dir(base_dir) # for running tests with pytest