Exemple #1
0
def test_update(client):
    company = CompanyFactory()
    client_login(client, company=company)

    company.name = 'New name'
    payload = payload_from_form(CompanyViewForm(instance=company))
    payload['color'] = payload['color'][1:]
    response = client.post(reverse('company_index'), payload)
    assert response.status_code == 200
Exemple #2
0
def test_user_delete(client):
    client_login(client, is_admin=True)

    user = User()

    payload = payload_from_form(UserForm(instance=user), delete=True)
    response = client.post(reverse('admin_users'), payload)

    assert response.status_code == 200
    assert DoorDevice.objects.filter(id=user.id).count() == 0
Exemple #3
0
def test_company_add(client):
    is_admin_route(client, reverse('admin_company_add'))

    client_login(client, is_admin=True)
    company_payload = payload_from_form(
        CompanyForm(instance=CompanyFactory.build()), prefix='company')
    user_payload = payload_from_form(
        AddCompanyUserForm(instance=UserFactory.build()), prefix='user')
    payload = {**company_payload, **user_payload}

    response = client.post(reverse('admin_company_add'), payload)

    assert response.status_code == 302
    assert response.url == reverse('admin_companies')
    assert Company.objects.count() == 1
    assert len(mail.outbox) == 1
    assert mail.outbox[0].subject == 'Welkom'
    assert User.objects.count(
    ) == 2  # One is logged in user, other created user
Exemple #4
0
def test_users_update_own(client):
    user = client_login(client, is_admin=True)

    user.is_admin = False
    payload = payload_from_form(UserForm(instance=user))
    response = client.post(reverse('admin_users'), payload)

    assert response.status_code == 200
    # Check that is admin is not updated
    assert User.objects.get(id=user.id).is_admin
Exemple #5
0
def test_update_other_company(client):
    company = CompanyFactory()
    client_login(client, company=company)

    other_company = CompanyFactory()
    other_company.name = 'New name'
    payload = payload_from_form(CompanyViewForm(instance=other_company))
    response = client.post(reverse('company_index'), payload)

    assert response.status_code == 403
Exemple #6
0
def test_users_update(client):
    client_login(client, is_admin=True)

    user = UserFactory()

    user.first_name = 'New name'
    payload = payload_from_form(UserForm(instance=user))
    response = client.post(reverse('admin_users'), payload)

    assert response.status_code == 200
    assert User.objects.get(id=user.id).first_name == 'New name'
Exemple #7
0
def test_company_delete(client):
    client_login(client, is_admin=True)

    company = CompanyFactory()
    user = UserFactory(company=company)

    payload = payload_from_form(CompanyForm(instance=company), delete=True)
    response = client.post(reverse('admin_companies'), payload)

    assert response.status_code == 200

    assert Company.objects.filter(id=company.id).count() == 0
    assert User.objects.filter(id=user.id).count() == 0
Exemple #8
0
def test_door_device_update(client):
    client_login(client, is_admin=True)

    door_device = DoorDeviceFactory()
    company = CompanyFactory()
    door_device.company = company

    payload = payload_from_form(DoorDeviceForm(instance=door_device))
    response = client.post(reverse('admin_door_devices'), payload)

    assert response.status_code == 200
    assert DoorDevice.objects.get(
        id=door_device.id).company.name == company.name
Exemple #9
0
def test_door_device_delete(client):
    client_login(client, is_admin=True)

    company = CompanyFactory()
    door_device = DoorDeviceFactory(company=company)

    payload = payload_from_form(DoorDeviceForm(instance=door_device),
                                delete=True)
    response = client.post(reverse('admin_door_devices'), payload)

    assert response.status_code == 200

    assert DoorDevice.objects.filter(id=door_device.id).count() == 0
    assert Company.objects.filter(id=company.id).count() == 1