Redirect the old jobs URL

This commit is contained in:
Chris Hill-Scott
2020-03-02 13:48:32 +00:00
parent 0fdabbdb5d
commit 7d57a4d9b8
2 changed files with 15 additions and 143 deletions

View File

@@ -42,26 +42,10 @@ from app.utils import (
@main.route("/services/<uuid:service_id>/jobs") @main.route("/services/<uuid:service_id>/jobs")
@user_has_permissions() @user_has_permissions()
def view_jobs(service_id): def view_jobs(service_id):
jobs = current_service.get_page_of_jobs(page=request.args.get('page')) return redirect(url_for(
'main.uploads',
prev_page = None service_id=current_service.id,
if jobs.prev_page: ))
prev_page = generate_previous_dict('main.view_jobs', service_id, jobs.current_page)
next_page = None
if jobs.next_page:
next_page = generate_next_dict('main.view_jobs', service_id, jobs.current_page)
return render_template(
'views/jobs/jobs.html',
jobs=jobs,
prev_page=prev_page,
next_page=next_page,
show_scheduled_jobs=(
jobs.current_page == 1
and not current_user.has_permissions('view_activity')
and current_service.scheduled_jobs
),
)
@main.route("/services/<uuid:service_id>/jobs/<uuid:job_id>") @main.route("/services/<uuid:service_id>/jobs/<uuid:job_id>")

View File

@@ -18,131 +18,19 @@ from tests.conftest import (
) )
@pytest.mark.parametrize('user, expected_rows', [ def test_old_jobs_hub_redirects(
(create_active_user_with_permissions(), (
(
'File Status'
),
(
'export 1/1/2016.xls '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'all email addresses.xlsx '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'applicants.ods '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'thisisatest.csv '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
)),
(create_active_caseworking_user(), (
(
'File Messages to be sent'
),
(
'even_later.csv '
'Sending 1 January 2016 at 11:09pm 1'
),
(
'send_me_later.csv '
'Sending 1 January 2016 at 11:09am 1'
),
(
'File Status'
),
(
'export 1/1/2016.xls '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'all email addresses.xlsx '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'applicants.ods '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'thisisatest.csv '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
)),
])
@freeze_time("2012-12-12 12:12")
def test_jobs_page_shows_scheduled_jobs_if_user_doesnt_have_dashboard(
client_request, client_request,
service_one,
active_user_with_permissions,
mock_get_jobs,
user,
expected_rows,
): ):
client_request.login(user) client_request.get(
page = client_request.get('main.view_jobs', service_id=service_one['id']) 'main.view_jobs',
service_id=SERVICE_ONE_ID,
for index, row in enumerate(expected_rows): _expected_status=302,
assert normalize_spaces(page.select('tr')[index].text) == row _expected_redirect=url_for(
'main.uploads',
service_id=SERVICE_ONE_ID,
@pytest.mark.parametrize('user', [ _external=True,
create_active_user_with_permissions(), )
create_active_caseworking_user(), )
])
def test_get_jobs_shows_page_links(
client_request,
active_user_with_permissions,
mock_get_jobs,
user,
):
client_request.login(user)
page = client_request.get('main.view_jobs', service_id=SERVICE_ONE_ID)
assert 'Next page' in page.find('li', {'class': 'next-page'}).text
assert 'Previous page' in page.find('li', {'class': 'previous-page'}).text
@pytest.mark.parametrize('user', [
create_active_user_with_permissions(),
create_active_caseworking_user(),
])
@freeze_time("2012-12-12 12:12")
def test_jobs_page_doesnt_show_scheduled_on_page_2(
client_request,
service_one,
active_user_with_permissions,
mock_get_jobs,
user,
):
client_request.login(user)
page = client_request.get('main.view_jobs', service_id=service_one['id'], page=2)
for index, row in enumerate((
(
'File Status'
),
(
'export 1/1/2016.xls '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'all email addresses.xlsx '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'applicants.ods '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
(
'thisisatest.csv '
'Sent today at 12:12pm 1 sending 0 delivered 0 failed'
),
)):
assert normalize_spaces(page.select('tr')[index].text) == row
@pytest.mark.parametrize('user', [ @pytest.mark.parametrize('user', [