Exemple #1
0
def test_cli_help():

    with pytest.raises(docopt.DocoptExit) as excinfo:
        cli.run()

    response = str(excinfo.value)
    assert "wetterdienst dwd stations" in response
    assert "wetterdienst dwd readings" in response
    assert "wetterdienst dwd about" in response
Exemple #2
0
def test_cli_about_coverage(capsys):

    sys.argv = ["wetterdienst", "dwd", "about", "coverage"]
    cli.run()
    stdout, stderr = capsys.readouterr()

    response = stdout
    assert "DWDObservationResolution.ANNUAL" in response
    assert "DWDObservationParameterSet.CLIMATE_SUMMARY" in response
    assert "DWDObservationPeriod.HISTORICAL" in response
Exemple #3
0
def test_cli_about_periods(capsys):

    sys.argv = ["wetterdienst", "dwd", "about", "periods"]
    cli.run()
    stdout, stderr = capsys.readouterr()

    response = stdout
    assert "historical" in response
    assert "recent" in response
    assert "now" in response
Exemple #4
0
def test_cli_about_resolutions(capsys):

    sys.argv = ["wetterdienst", "dwd", "about", "resolutions"]
    cli.run()
    stdout, stderr = capsys.readouterr()

    response = stdout
    assert "1_minute" in response
    assert "hourly" in response
    assert "annual" in response
Exemple #5
0
def test_cli_about_parameters(capsys):

    sys.argv = ["wetterdienst", "dwd", "about", "parameters"]
    cli.run()
    stdout, stderr = capsys.readouterr()

    response = stdout
    assert "precipitation" in response
    assert "air_temperature" in response
    assert "weather_phenomena" in response
Exemple #6
0
def invoke_wetterdienst_readings_static(format="json"):
    argv = shlex.split(
        f"wetterdienst dwd readings --resolution=daily --parameter=kl --period=recent --station=4411,7341 --date=2020-06-30 --format={format}"  # noqa:E501,B950
    )
    sys.argv = argv
    cli.run()
Exemple #7
0
def invoke_wetterdienst_stations_geo(format="json"):
    argv = shlex.split(
        f"wetterdienst dwd stations --resolution=daily --parameter=kl --period=recent --lat=49.9195 --lon=8.9671 --num=5 --format={format}"  # noqa:E501,B950
    )
    sys.argv = argv
    cli.run()
Exemple #8
0
def invoke_wetterdienst_stations_empty(format="json"):
    argv = shlex.split(
        f"wetterdienst dwd stations --resolution=daily --parameter=kl --period=recent --station=123456 --format={format}"  # noqa:E501,B950
    )
    sys.argv = argv
    cli.run()
Exemple #9
0
def invoke_wetterdienst_stations_empty(setting, fmt="json"):
    argv = shlex.split(
        f"wetterdienst dwd {setting} --station=123456 --format={fmt}")
    sys.argv = argv
    cli.run()
Exemple #10
0
def invoke_wetterdienst_readings_geo(setting, fmt="json"):
    argv = shlex.split(
        f"wetterdienst dwd {setting} --latitude=49.9195 --longitude=8.9671 --number=5 "
        f"--format={fmt}")
    sys.argv = argv
    cli.run()
Exemple #11
0
def invoke_wetterdienst_readings_static_tidy(setting, station, fmt="json"):
    argv = shlex.split(
        f"wetterdienst dwd {setting} --station={station} --format={fmt} --tidy"
    )
    sys.argv = argv
    cli.run()