Exemple #1
0
def test__shift_code_add__redirect_on_valid_post(calendar_user):
    """Test for proper redirection on valid post."""
    valid_data = {
        'code': 'A1',
        'monday_start': '01:00:00',
        'monday_duration': '1.1',
        'tuesday_start': '02:00:00',
        'tuesday_duration': '2.2',
        'wednesday_start': '03:00:00',
        'wednesday_duration': '3.3',
        'thursday_start': '04:00:00',
        'thursday_duration': '4.4',
        'friday_start': '05:00:00',
        'friday_duration': '5.5',
        'saturday_start': '06:00:00',
        'saturday_duration': '6.6',
        'sunday_start': '07:00:00',
        'sunday_duration': '7.7',
        'stat_start': '08:00:00',
        'stat_duration': '8.8',
    }

    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.post(reverse('rdrhc_calendar:code_add'), valid_data)

    assert response.status_code == 302
Exemple #2
0
def test_entry_is_added_on_valid_post(calendar_user):
    """Tests model entry is properly added on valid post."""
    valid_data = {
        'code': 'A1',
        'monday_start': '01:00:00',
        'monday_duration': '1.1',
        'tuesday_start': '02:00:00',
        'tuesday_duration': '2.2',
        'wednesday_start': '03:00:00',
        'wednesday_duration': '3.3',
        'thursday_start': '04:00:00',
        'thursday_duration': '4.4',
        'friday_start': '05:00:00',
        'friday_duration': '5.5',
        'saturday_start': '06:00:00',
        'saturday_duration': '6.6',
        'sunday_start': '07:00:00',
        'sunday_duration': '7.7',
        'stat_start': '08:00:00',
        'stat_duration': '8.8',
    }

    # Get current count of model
    shift_code_count = models.ShiftCode.objects.count()

    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    client.post(reverse('rdrhc_calendar:code_add'), valid_data)

    assert models.ShiftCode.objects.count() == shift_code_count + 1
Exemple #3
0
def test__calendar_code_delete__url_exists_at_desired_location(shift_code):
    """Test that URL exists at desired location."""
    # Add permission to user
    utils.add_view_permission(shift_code.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=shift_code.sb_user)
    response = client.get(f'/rdrhc-calendar/shifts/delete/{shift_code.id}/')

    assert response.status_code == 200
Exemple #4
0
def test__calendar_settings__404_response_if_authorized_but_no_calendar(user):
    """Test 404 response if user doesn't have a calendar."""
    # Add permission to user
    utils.add_view_permission(user)

    # Set up client and response
    client = Client()
    client.force_login(user=user)
    response = client.get(reverse('rdrhc_calendar:settings'))

    assert response.status_code == 404
Exemple #5
0
def test__calendar_index__url_exists_at_desired_location(user):
    """Test for 200 response for the RDRHC Calendar index page."""
    # Add permission to user
    utils.add_view_permission(user)

    # Set up client and response
    client = Client()
    client.force_login(user=user)
    response = client.get(reverse('rdrhc_calendar:index'))

    assert response.status_code == 200
Exemple #6
0
def test__calendar_settings__url_exists_at_desired_location(calendar_user):
    """Test that URL exists at desired location."""
    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.get(reverse('rdrhc_calendar:settings'))

    assert response.status_code == 200
Exemple #7
0
def test__calendar_settings__200_response_if_authorized(calendar_user):
    """Test for 200 response if user is authorized with calendar."""
    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.get(reverse('rdrhc_calendar:settings'))

    # Check that user logged in
    assert response.context['user'] == calendar_user.sb_user
    assert response.status_code == 200
Exemple #8
0
def test__shift_code_delete__redirect_on_valid_post(shift_code):
    """Test for proper redirection on valid post."""
    # Add permission to user
    utils.add_view_permission(shift_code.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=shift_code.sb_user)
    response = client.post(
        reverse('rdrhc_calendar:code_delete',
                kwargs={'code_id': shift_code.id}))

    assert response.status_code == 302
Exemple #9
0
def test__shift_code_list__template(calendar_user):
    """Test for proper template in shift_code_list views."""
    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.get(reverse('rdrhc_calendar:code_list'))

    # Test for template
    assert ('rdrhc_calendar/shiftcode_list.html'
            in [t.name for t in response.templates])
Exemple #10
0
def test__calendar_index__template(user):
    """Test for proper template in calendar_index view."""
    # Add permission to user
    utils.add_view_permission(user)

    # Set up client and response
    client = Client()
    client.force_login(user=user)
    response = client.get(reverse('rdrhc_calendar:index'))

    # Test for template
    assert ('rdrhc_calendar/index.html'
            in [t.name for t in response.templates])
Exemple #11
0
def test__shift_code_list__200_response_if_authorized(calendar_user):
    """Tests for 200 response when user is logged in with permissions."""
    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.get(reverse('rdrhc_calendar:code_list'))

    # Check that user logged in
    assert response.context['user'] == calendar_user.sb_user
    assert response.status_code == 200
Exemple #12
0
def test__calendar_code_delete__404_response_if_authorized_but_no_calendar(
        shift_code):
    """Test 404 response if user doesn't have a calendar."""
    # Add permission to user
    utils.add_view_permission(shift_code.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=shift_code.sb_user)
    client.get(
        reverse(
            'rdrhc_calendar:code_delete',
            kwargs={'code_id': shift_code.id},
        ))
Exemple #13
0
def test__calendar_index__200_response_if_authorized(user):
    """Tests for 200 response when user is logged in with permissions."""
    # Add permission to user
    utils.add_view_permission(user)

    # Set up client and response
    client = Client()
    client.force_login(user=user)
    response = client.get(reverse('rdrhc_calendar:index'))

    # Check that user logged in
    assert str(response.context['user']) == str(user)

    # Check for 200 response
    assert response.status_code == 200
Exemple #14
0
def test__shift_code_delete__instance_deleted_on_valid_post(shift_code):
    """Tests model entry is properly deleted on valid post."""
    # Get current model count
    shift_code_count = models.ShiftCode.objects.count()

    # Add permission to user
    utils.add_view_permission(shift_code.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=shift_code.sb_user)
    client.post(
        reverse('rdrhc_calendar:code_delete',
                kwargs={'code_id': shift_code.id}))

    assert models.ShiftCode.objects.count() == shift_code_count - 1
Exemple #15
0
def test__calendar_code_edit__404_response_if_authorized_but_no_calendar(
        user, shift_code):
    """Test 404 response if user doesn't have a calendar."""
    # Add permission to user
    utils.add_view_permission(user)

    # Set up client and response
    client = Client()
    client.force_login(user=user)
    response = client.get(
        reverse(
            'rdrhc_calendar:code_edit',
            kwargs={'code_id': shift_code.id},
        ))

    assert response.status_code == 404
Exemple #16
0
def test__shift_code_edit__template(shift_code):
    """Test for proper template in shift_code_edit views."""
    # Add permission to user
    utils.add_view_permission(shift_code.sb_user)

    # Set up client and response
    client = Client()
    client.force_login(user=shift_code.sb_user)
    response = client.get(
        reverse(
            'rdrhc_calendar:code_edit',
            kwargs={'code_id': shift_code.id},
        ))

    # Test for template
    assert ('rdrhc_calendar/shiftcode_edit.html'
            in [t.name for t in response.templates])
Exemple #17
0
def test__calendar_settings__redirect_on_valid_post(calendar_user):
    """Test for proper redirection on valid post."""
    # Add permission to user
    utils.add_view_permission(calendar_user.sb_user)

    # Create valid data
    valid_data = {
        'calendar_name': 'SecretCalendar',
        'full_day': False,
        'reminder': '',
    }

    # Set up client and response
    client = Client()
    client.force_login(user=calendar_user.sb_user)
    response = client.post(reverse('rdrhc_calendar:settings'), valid_data)

    # Confirm response status_code
    assert response.status_code == 302