Beispiel #1
0
def test_get_group(meetup_groups: dict, app: Flask):
    runner: FlaskCliRunner = app.test_cli_runner()

    # run command without params
    result_1: Result = runner.invoke(get_group)
    assert result_1.exit_code == 1

    # test with exiting group
    result_2: Result = runner.invoke(get_group,
                                     [meetup_groups["sandbox"]["urlname"]])
    assert result_2.exit_code == 0

    # test with sandbox group
    result_3: Result = runner.invoke(get_group, ["--sandbox", "True"])
    assert result_3.exit_code == 0

    # test with not-exist group
    result_4: Result = runner.invoke(get_group,
                                     [meetup_groups["not-exist"]["urlname"]])
    assert result_4.exit_code == 2

    # test with gone group
    result_5: Result = runner.invoke(get_group,
                                     [meetup_groups["gone"]["urlname"]])
    assert result_5.exit_code == 2
Beispiel #2
0
def test_get_groups_with_events(meetup_groups: dict, app: Flask):
    runner: FlaskCliRunner = app.test_cli_runner()

    # load all groups from JSON test file
    result_1: Result = runner.invoke(
        get_groups, ["/app/compose/local/flask/meetup_groups"]
    )
    assert result_1.exit_code == 0

    sleep(1)

    # load group
    group_1: Group = Group.get_group(urlname=meetup_groups["sandbox"]["urlname"])

    # check if group has events
    assert len(group_1.events) > 0
def test_update_groups(group_1: Group, meetup_groups: dict, app: Flask):
    runner: FlaskCliRunner = app.test_cli_runner()

    # init group to update
    group_1.urlname = meetup_groups["sandbox"]["urlname"]
    group_1.save()
    sleep(2)

    # update all groups
    result_1: Result = runner.invoke(update_groups)
    assert result_1.exit_code == 0
    sleep(2)

    # check if group was updated
    group_2: Group = Group.get_group(urlname=group_1.urlname)
    assert len(group_2.events) > 0
Beispiel #4
0
def test_load_zip_codes(app: Flask):
    runner: FlaskCliRunner = app.test_cli_runner()

    # load zip codes from berlin
    result_1: Result = runner.invoke(
        load_zip_codes_command, ["52.3570365", "52.6770365", "13.2288599", "13.5488599"]
    )
    assert result_1.exit_code == 0

    sleep(2)

    assert len(MeetupZip.get_all_zips()) > 0

    # force http error
    result_2: Result = runner.invoke(
        load_zip_codes_command, ["10000", "10001", "10000", "10001"]
    )
    assert result_2.exit_code == 1
Beispiel #5
0
def test_migrate_models_command(app: Flask):
    runner: FlaskCliRunner = app.test_cli_runner()

    # delete index
    delte_index()

    # check if index was deleted
    with pytest.raises(NotFoundError):
        Group.get_all_groups()
    with pytest.raises(NotFoundError):
        MeetupZip.get_all_zips()

    # migrate models
    result_1: Result = runner.invoke(migrate_models_command)
    assert result_1.exit_code == 0
    sleep(2)

    # check if indexes was created
    assert isinstance(Group.get_all_groups(), List)
    assert isinstance(MeetupZip.get_all_zips(), List)
Beispiel #6
0
def runner(app: Flask):
    return app.test_cli_runner()