コード例 #1
0
ファイル: test_core_handler.py プロジェクト: maktec/baserow
def test_delete_group(data_fixture):
    user = data_fixture.create_user()
    group_1 = data_fixture.create_group(user=user)
    database = data_fixture.create_database_application(group=group_1)
    table = data_fixture.create_database_table(database=database)
    data_fixture.create_group(user=user)
    user_2 = data_fixture.create_user()
    group_3 = data_fixture.create_group(user=user_2)

    handler = CoreHandler()
    handler.delete_group(user, group_1)

    assert Database.objects.all().count() == 0
    assert Table.objects.all().count() == 0
    assert f'database_table_{table.id}' not in connection.introspection.table_names()
    assert Group.objects.all().count() == 2
    assert GroupUser.objects.all().count() == 2

    with pytest.raises(UserNotInGroupError):
        handler.delete_group(user, group_3)

    handler.delete_group(user_2, group_3)

    assert Group.objects.all().count() == 1
    assert GroupUser.objects.all().count() == 1

    with pytest.raises(ValueError):
        handler.delete_group(user=user_2, group=object())
コード例 #2
0
def test_delete_group(send_mock, data_fixture):
    user = data_fixture.create_user()
    group_1 = data_fixture.create_group(user=user)
    database = data_fixture.create_database_application(group=group_1)
    table = data_fixture.create_database_table(database=database)
    data_fixture.create_group(user=user)
    user_2 = data_fixture.create_user()
    group_3 = data_fixture.create_group(user=user_2)

    handler = CoreHandler()
    handler.delete_group(user, group_1)

    send_mock.assert_called_once()
    assert send_mock.call_args[1]['group'].id == group_1.id
    assert send_mock.call_args[1]['user'].id == user.id
    assert len(send_mock.call_args[1]['group_users']) == 1
    assert send_mock.call_args[1]['group_users'][0].id == user.id

    assert Database.objects.all().count() == 0
    assert Table.objects.all().count() == 0
    assert f'database_table_{table.id}' not in connection.introspection.table_names(
    )
    assert Group.objects.all().count() == 2
    assert GroupUser.objects.all().count() == 2

    with pytest.raises(UserNotInGroupError):
        handler.delete_group(user, group_3)

    handler.delete_group(user_2, group_3)

    assert Group.objects.all().count() == 1
    assert GroupUser.objects.all().count() == 1

    with pytest.raises(ValueError):
        handler.delete_group(user=user_2, group=object())