|
| 1 | +import atexit |
1 | 2 | import datetime as dt
|
2 | 3 | import filecmp
|
| 4 | +import importlib.resources |
3 | 5 | import re
|
4 | 6 | import shutil
|
5 | 7 | import warnings
|
| 8 | +from contextlib import ExitStack |
6 | 9 | from copy import deepcopy
|
7 | 10 | from os import listdir
|
8 | 11 | from os.path import basename, dirname, isfile, join
|
|
11 | 14 | import f90nml
|
12 | 15 | import numpy as np
|
13 | 16 | import pandas as pd
|
14 |
| -import pkg_resources |
15 | 17 | import pytest
|
16 | 18 | from numpy import testing as npt
|
17 | 19 | from openscm_units import unit_registry
|
|
36 | 38 | from pymagicc.io.compact import find_parameter_groups
|
37 | 39 | from pymagicc.io.scen import get_special_scen_code
|
38 | 40 |
|
39 |
| -MAGICC6_DIR = pkg_resources.resource_filename("pymagicc", "MAGICC6/run") |
| 41 | +file_manager = ExitStack() |
| 42 | +atexit.register(file_manager.close) |
| 43 | +MAGICC6_DIR_REF = importlib.resources.files("pymagicc") / "MAGICC6" / "run" |
| 44 | +MAGICC6_DIR = file_manager.enter_context(importlib.resources.as_file(MAGICC6_DIR_REF)) |
| 45 | + |
40 | 46 | TEST_DATA_DIR = join(dirname(__file__), "test_data")
|
41 | 47 | TEST_OUT_DIR = join(TEST_DATA_DIR, "out_dir")
|
42 | 48 |
|
@@ -1291,8 +1297,9 @@ def test_load_rewritten_scen7(temp_dir):
|
1291 | 1297 | with warnings.catch_warnings(record=True) as warn_autorename_region:
|
1292 | 1298 | writer.write(write_file, magicc_version=7)
|
1293 | 1299 |
|
1294 |
| - assert len(warn_autorename_region) == 1 |
1295 |
| - assert warn_msg == str(warn_autorename_region[0].message) |
| 1300 | + # warning is emitted twice because data block is written twice |
| 1301 | + assert len(warn_autorename_region) == 2 |
| 1302 | + assert all(warn_msg == str(w.message) for w in warn_autorename_region) |
1296 | 1303 |
|
1297 | 1304 | mdata = MAGICCData(write_file, columns=cols)
|
1298 | 1305 |
|
|
0 commit comments