def METHOD_NAME():
    # Vacuum calc
    assert solvent({"rem": {"method": "wb97mv", "basis": "6-31g*"}}) == "NONE"
    # PCM - non-default
    assert (
        solvent(
            {
                "rem": {
                    "method": "wb97xd",
                    "basis": "def2-svpd",
                    "solvent_method": "pcm",
                },
                "pcm": {"theory": "cpcm"},
                "solvent": {"dielectric": 20},
            }
        )
        == "DIELECTRIC=20,00"
    )
    # PCM - default
    assert (
        solvent(
            {
                "rem": {
                    "method": "wb97xd",
                    "basis": "def2-svpd",
                    "solvent_method": "pcm",
                },
                "pcm": {"theory": "cpcm"},
            }
        )
        == "DIELECTRIC=78,39"
    )
    # SMD - custom solvent
    assert (
        solvent(
            {
                "rem": {
                    "method": "wb97xv",
                    "basis": "def2-tzvppd",
                    "solvent_method": "smd",
                },
                "smx": {"solvent": "other"},
            },
            custom_smd="4.9,1.558,0.0,0.576,49.94,0.667,0.0",
        )
        == "DIELECTRIC=4,900;N=1,558;ALPHA=0,000;BETA=0,576;GAMMA=49,940;PHI=0,667;PSI=0,000"
    )
    # SMD - missing custom_solvent
    with pytest.raises(ValueError):
        solvent(
            {
                "rem": {
                    "method": "wb97xv",
                    "basis": "def2-tzvppd",
                    "solvent_method": "smd",
                },
                "smx": {"solvent": "other"},
            }
        )
    # SMD - existing solvent
    assert (
        solvent(
            {
                "rem": {
                    "method": "wb97xv",
                    "basis": "def2-tzvppd",
                    "solvent_method": "smd",
                },
                "smx": {"solvent": "ethanol"},
            }
        )
        == "SOLVENT=ETHANOL"
    )
    # SMD - unknown solvent
    assert (
        solvent(
            {
                "rem": {
                    "method": "wb97xv",
                    "basis": "def2-tzvppd",
                    "solvent_method": "smd",
                },
            }
        )
        == "SOLVENT=WATER"
    )