diff --git a/src/quacc/calculators/vasp/params.py b/src/quacc/calculators/vasp/params.py index f0f47a13ce..cda4559d30 100644 --- a/src/quacc/calculators/vasp/params.py +++ b/src/quacc/calculators/vasp/params.py @@ -398,11 +398,11 @@ def __init__( ------- None """ + if atoms is None and prev_dir is None: + raise ValueError("Either atoms or prev_dir must be provided.") self.atoms = atoms self.prev_dir = prev_dir self.structure = AseAtomsAdaptor.get_structure(atoms) - if atoms is None and prev_dir is None: - raise ValueError("Either atoms or prev_dir must be provided.") def convert_dict_set(self, dict_set: DictSet) -> dict: """ diff --git a/tests/core/calculators/vasp/test_vasp.py b/tests/core/calculators/vasp/test_vasp.py index 907aefbf7d..061aa7d3dc 100644 --- a/tests/core/calculators/vasp/test_vasp.py +++ b/tests/core/calculators/vasp/test_vasp.py @@ -816,6 +816,11 @@ def test_preset_override(): assert calc.parameters.get("efermi") is None +def test_bad_pmg_converter(): + with pytest.raises(ValueError, match="Either atoms or prev_dir must be provided"): + MPtoASEConverter() + + def test_pmg_input_set(): atoms = bulk("Cu") parameters = MPtoASEConverter(atoms=atoms).convert_dict_set(MPRelaxSet)