Skip to content

Commit

Permalink
Merge branch 'dev' into LTD-5926-FF-F680-Allowed-orgs
Browse files Browse the repository at this point in the history
  • Loading branch information
depsiatwal authored Feb 18, 2025
2 parents 504d81b + 0c980e0 commit 39559f9
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 78 deletions.
6 changes: 4 additions & 2 deletions caseworker/queues/views/cases.py
Original file line number Diff line number Diff line change
Expand Up @@ -143,9 +143,11 @@ def get_params(self):
if session_sort_by:
params["sort_by"] = session_sort_by
elif self.queue_pk == ALL_CASES_QUEUE_ID:
params["sort_by"] = "submitted_at"
else:
# newest to oldest
params["sort_by"] = "-submitted_at"
else:
# oldest to newest
params["sort_by"] = "submitted_at"

self.request.session["case_search_sort_by"] = params["sort_by"]

Expand Down
4 changes: 0 additions & 4 deletions exporter/f680/constants.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,2 @@
class ApplicationFormSteps:
APPLICATION_NAME = "APPLICATION_NAME"


class ApprovalTypeSteps:
APPROVAL_TYPE = "APPROVAL_TYPE"
17 changes: 0 additions & 17 deletions exporter/f680/forms.py
Original file line number Diff line number Diff line change
@@ -1,23 +1,6 @@
from django import forms

from core.common.forms import BaseForm


class ApplicationNameForm(BaseForm):
class Layout:
TITLE = "Name of the application"
TITLE_AS_LABEL_FOR = "name"
SUBMIT_BUTTON_TEXT = "Continue"

name = forms.CharField(
label="",
help_text="Give the application a reference name so you can refer back to it when needed",
)

def get_layout_fields(self):
return ("name",)


class ApplicationSubmissionForm(BaseForm):
class Layout:
TITLE = ""
Expand Down
13 changes: 1 addition & 12 deletions exporter/f680/payloads.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,6 @@
from deepmerge import always_merger

from core.wizard.payloads import MergingPayloadBuilder, get_cleaned_data, get_questions_data
from .constants import ApplicationFormSteps


class F680CreatePayloadBuilder(MergingPayloadBuilder):
payload_dict = {
ApplicationFormSteps.APPLICATION_NAME: get_cleaned_data,
}

def build(self, form_dict):
payload = super().build(form_dict)
return {"application": payload}
from core.wizard.payloads import get_cleaned_data, get_questions_data


class F680PatchPayloadBuilder:
Expand Down
29 changes: 8 additions & 21 deletions exporter/f680/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,13 @@
from django.contrib.auth.mixins import AccessMixin
from django.shortcuts import redirect
from django.urls import reverse
from django.views.generic import FormView
from django.views.generic import FormView, RedirectView

from core.auth.views import LoginRequiredMixin
from core.decorators import expect_status
from core.wizard.views import BaseSessionWizardView

from .constants import (
ApplicationFormSteps,
)
from .forms import (
ApplicationNameForm,
ApplicationSubmissionForm,
)
from .payloads import (
F680CreatePayloadBuilder,
)
from .forms import ApplicationSubmissionForm

from .services import (
post_f680_application,
get_f680_application,
Expand All @@ -40,10 +31,7 @@ def dispatch(self, request, *args, **kwargs):
return super().dispatch(request, *args, **kwargs)


class F680ApplicationCreateView(LoginRequiredMixin, F680FeatureRequiredMixin, BaseSessionWizardView):
form_list = [
(ApplicationFormSteps.APPLICATION_NAME, ApplicationNameForm),
]
class F680ApplicationCreateView(LoginRequiredMixin, F680FeatureRequiredMixin, RedirectView):

@expect_status(
HTTPStatus.CREATED,
Expand All @@ -61,11 +49,10 @@ def get_success_url(self, application_id):
},
)

def get_payload(self, form_dict):
return F680CreatePayloadBuilder().build(form_dict)

def done(self, form_list, form_dict, **kwargs):
data = self.get_payload(form_dict)
def get(self, request, *args, **kwargs):
super().get(request, *args, **kwargs)
# Data required to create a base application
data = {"application": {}}
response_data, _ = self.post_f680_application(data)
return redirect(self.get_success_url(response_data["id"]))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
</div>
<div class="govuk-summary-list__row" id="org-country">
<dt class="govuk-summary-list__key">
County or state
County
</dt>
<dd class="govuk-summary-list__value">
{{ registration_data.site.address.region}}
Expand Down
24 changes: 12 additions & 12 deletions unit_tests/caseworker/queues/views/test_cases.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"queue_id": ["00000000-0000-0000-0000-000000000001"],
"selected_tab": ["all_cases"],
"hidden": ["true"],
"sort_by": ["submitted_at"],
"sort_by": ["-submitted_at"],
}


Expand Down Expand Up @@ -313,7 +313,7 @@ def test_cases_queue_page_assigned_queues(authorized_client, mock_cases_search_t
"queue_id": [queue_pk],
"selected_tab": ["all_cases"],
"hidden": ["false"],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
}


Expand Down Expand Up @@ -620,7 +620,7 @@ def test_tabs_with_all_cases_default(authorized_client, mock_cases_search, mock_
"page": ["1"],
"queue_id": ["00000000-0000-0000-0000-000000000001"],
"selected_tab": [tab],
"sort_by": ["submitted_at"],
"sort_by": ["-submitted_at"],
} in head_request_history


Expand Down Expand Up @@ -655,7 +655,7 @@ def test_tabs_on_all_cases_queue(authorized_client, mock_cases_search, tab_name,
"page": ["1"],
"queue_id": ["00000000-0000-0000-0000-000000000001"],
"selected_tab": [tab_name],
"sort_by": ["submitted_at"],
"sort_by": ["-submitted_at"],
}


Expand Down Expand Up @@ -684,15 +684,15 @@ def test_tabs_on_team_queue(
"page": ["1"],
"queue_id": [queue_pk],
"selected_tab": [tab_name],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
}
head_request_history = [x.qs for x in mock_cases_search_head.request_history]
assert {
"hidden": ["false"],
"page": ["1"],
"queue_id": [queue_pk],
"selected_tab": ["all_cases"],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
} in head_request_history

tabs_with_hidden_param = ("my_cases", "open_queries")
Expand All @@ -702,7 +702,7 @@ def test_tabs_on_team_queue(
"page": ["1"],
"queue_id": [queue_pk],
"selected_tab": [tab],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
} in head_request_history


Expand All @@ -717,7 +717,7 @@ def test_tabs_on_team_queue_with_hidden_param(
"page": ["1"],
"queue_id": [queue_pk],
"selected_tab": ["all_cases"],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
}
head_request_history = [x.qs for x in mock_cases_search_head.request_history]
tabs_with_hidden_param = ("all_cases", "my_cases", "open_queries")
Expand All @@ -727,7 +727,7 @@ def test_tabs_on_team_queue_with_hidden_param(
"page": ["1"],
"queue_id": [queue_pk],
"selected_tab": [tab],
"sort_by": ["-submitted_at"],
"sort_by": ["submitted_at"],
} in head_request_history


Expand Down Expand Up @@ -1156,8 +1156,8 @@ def test_product_search_is_visible_to_specific_users_only(
def test_queue_view_sort_params_persist(authorized_client):
response = authorized_client.get(reverse("core:index"))
assert response.status_code == 200
assert authorized_client.session["case_search_sort_by"] == "submitted_at"
assert authorized_client.session["case_search_sort_by"] == "-submitted_at"

authorized_client.get(reverse("core:index") + "?sort_by=-submitted_at")
authorized_client.get(reverse("core:index") + "?sort_by=submitted_at")
assert response.status_code == 200
assert authorized_client.session["case_search_sort_by"] == "-submitted_at"
assert authorized_client.session["case_search_sort_by"] == "submitted_at"
16 changes: 7 additions & 9 deletions unit_tests/exporter/applications/views/test_f680s.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,7 @@
from pytest_django.asserts import assertTemplateUsed

from core import client
from exporter.f680.constants import (
ApplicationFormSteps,
)
from exporter.f680.forms import ApplicationNameForm, ApplicationSubmissionForm
from exporter.f680.forms import ApplicationSubmissionForm


@pytest.fixture(autouse=True)
Expand Down Expand Up @@ -80,13 +77,14 @@ def test_get_create_f680_view_success(
self,
authorized_client,
f680_apply_url,
mock_f680_application_get,
f680_summary_url_with_application,
mock_application_post,
):
response = authorized_client.get(f680_apply_url)

assert isinstance(response.context["form"], ApplicationNameForm)
soup = BeautifulSoup(response.content, "html.parser")
assert "Name of the application" in soup.find("h1").text
assert response.status_code == 302
assert response.url == f680_summary_url_with_application
assert mock_application_post.called_once
assert mock_application_post.last_request.json() == {"application": {}}

def test_get_create_f680_view_success_allowed_organisation(
self,
Expand Down

0 comments on commit 39559f9

Please sign in to comment.