From 626b1b07351a3c2f07d31a58f4b05fea9f1a4812 Mon Sep 17 00:00:00 2001 From: ColinBruce Date: Tue, 17 Dec 2024 09:39:13 +0000 Subject: [PATCH 1/5] AP-5592: Create feature test of scope limits on check provider answers This changes the proceeding_details partial IDs quite heavily to make testing easier. --- .../stylesheets/check-your-answers.scss | 4 + .../_proceeding_details.html.erb | 7 +- ..._limitations_are_displayed_as_expected.yml | 1289 +++++++++++++++++ .../providers/check_provider_answers.feature | 84 ++ .../check_provider_answers_steps.rb | 69 + 5 files changed, 1450 insertions(+), 3 deletions(-) create mode 100644 features/cassettes/Checking_client_details_answers_backwards_and_forwards/Multiple_scope_limitations_are_displayed_as_expected.yml diff --git a/app/assets/stylesheets/check-your-answers.scss b/app/assets/stylesheets/check-your-answers.scss index ecf2c9feb2..0b951b7cb3 100644 --- a/app/assets/stylesheets/check-your-answers.scss +++ b/app/assets/stylesheets/check-your-answers.scss @@ -74,3 +74,7 @@ .print-no-break>.govuk-body { word-wrap: break-word; } + +.single-scope-limit-heading { + font-weight: bold; +} diff --git a/app/views/shared/check_answers/_proceeding_details.html.erb b/app/views/shared/check_answers/_proceeding_details.html.erb index 83c1d50c84..ffec55d9ed 100644 --- a/app/views/shared/check_answers/_proceeding_details.html.erb +++ b/app/views/shared/check_answers/_proceeding_details.html.erb @@ -4,11 +4,12 @@ unless @show_linked_proceedings || @read_only govuk_link_to(t("generic.change"), providers_legal_aid_application_client_involvement_type_path(@legal_aid_application, proceeding), + id: "app-check-your-answers__#{proceeding.ccms_code.downcase}", visually_hidden_suffix: "#{proceeding.meaning} #{t('.description')}") end end - card.with_summary_list(actions: false) do |summary_list| + card.with_summary_list(actions: false, html_attributes: { id: "#{proceeding.ccms_code.downcase}-questions" }) do |summary_list| summary_list.with_row(html_attributes: { id: "app-check-your-answers__#{proceeding.name}_client_involvement_type" }) do |row| row.with_key(text: t(".client_involvement_type_details.question"), classes: "govuk-!-width-one-third") row.with_value { proceeding.client_involvement_type_description } @@ -34,7 +35,7 @@ end end - summary_list.with_row(html_attributes: { id: "app-check-your-answers__#{proceeding.name}_emergency_scope_limitations_#{proceeding.id}" }) do |row| + summary_list.with_row(html_attributes: { id: "app-check-your-answers__#{proceeding.ccms_code.downcase}_emergency_scope_limitations" }) do |row| row.with_key(text: t(".scope_limits.emergency.question")) row.with_value { scope_limits(proceeding, "emergency") } end @@ -54,7 +55,7 @@ end end - summary_list.with_row(html_attributes: { id: "app-check-your-answers__#{proceeding.name}_substantive_scope_limitations_#{proceeding.id}" }) do |row| + summary_list.with_row(html_attributes: { id: "app-check-your-answers__#{proceeding.ccms_code.downcase}_substantive_scope_limitations" }) do |row| row.with_key(text: t(".scope_limits.substantive.question")) row.with_value { scope_limits(proceeding, "substantive") } end diff --git a/features/cassettes/Checking_client_details_answers_backwards_and_forwards/Multiple_scope_limitations_are_displayed_as_expected.yml b/features/cassettes/Checking_client_details_answers_backwards_and_forwards/Multiple_scope_limitations_are_displayed_as_expected.yml new file mode 100644 index 0000000000..6bfe940f8e --- /dev/null +++ b/features/cassettes/Checking_client_details_answers_backwards_and_forwards/Multiple_scope_limitations_are_displayed_as_expected.yml @@ -0,0 +1,1289 @@ +--- +http_interactions: +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/client_involvement_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 11:59:55 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '320' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"634b8c627a1b078b5d1fffcb51ca2121" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 7877b76844e24f7dbed6bcd38895d4a9 + x-runtime: + - '0.033896' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"client_involvement_type":[{"ccms_code":"A","description":"Applicant/claimant/petitioner"},{"ccms_code":"D","description":"Defendant/respondent"},{"ccms_code":"W","description":"Subject + of proceedings (child)"},{"ccms_code":"I","description":"Intervenor"},{"ccms_code":"Z","description":"Joined + party"}]}' + recorded_at: Tue, 17 Dec 2024 11:59:55 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/client_involvement_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 11:59:56 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '320' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"634b8c627a1b078b5d1fffcb51ca2121" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 34c488b2b3b342e1dfe0ab6607b32cf0 + x-runtime: + - '0.028573' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"client_involvement_type":[{"ccms_code":"A","description":"Applicant/claimant/petitioner"},{"ccms_code":"D","description":"Defendant/respondent"},{"ccms_code":"W","description":"Subject + of proceedings (child)"},{"ccms_code":"I","description":"Intervenor"},{"ccms_code":"Z","description":"Joined + party"}]}' + recorded_at: Tue, 17 Dec 2024 11:59:56 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 11:59:57 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '477' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"f6e255747b495453398cd82197a149da" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 467af104b1478986b91e95d76963dd23 + x-runtime: + - '0.012353' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 11:59:56 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 11:59:57 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '477' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"f6e255747b495453398cd82197a149da" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 50aaa6c8e9eb0230c8a1cad532a4d34a + x-runtime: + - '0.008937' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 11:59:57 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 11:59:58 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - c4747fbc3e55808720796788f045d86c + x-runtime: + - '0.015243' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 11:59:57 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:00:02 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 56648956ecfb1c37764079aca2971d05 + x-runtime: + - '0.013626' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 12:00:02 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:00:03 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '477' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"f6e255747b495453398cd82197a149da" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 11b2fbae8cfc9f8573b8876a458047e8 + x-runtime: + - '0.016662' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 12:00:02 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:00:03 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1622' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"5cb81d0b5c30be0e006d4ba352304f2b" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 6d0201336c0f94c9e4e40f599e4a709f + x-runtime: + - '0.019752' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:00:03 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:02:39 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1622' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"5cb81d0b5c30be0e006d4ba352304f2b" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - a65d9b0b3557a1d5bfedf0f024457055 + x-runtime: + - '0.023321' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":true,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:02:39 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:02:40 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '708' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"05375658d64485716c2575dd3e911e59" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - a9342dbaf7b630aba460985c7ff1cb42 + x-runtime: + - '0.011476' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 12:02:40 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:15 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '708' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"05375658d64485716c2575dd3e911e59" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 6e2ddb9720917e2a3d426ba2be4ca880 + x-runtime: + - '0.011011' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 12:03:15 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:17 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 463f84c2ca0279017d658bd3cc9f4ed3 + x-runtime: + - '0.013570' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 12:03:16 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:19 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 3e5081796fa482ea39ecfcb8cc5b522a + x-runtime: + - '0.020593' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 12:03:19 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:20 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '708' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"05375658d64485716c2575dd3e911e59" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - dac602a7b71567d9fcef573ac61ad37c + x-runtime: + - '0.010117' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 12:03:20 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:21 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '2101' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"607af38910362a3060b3c421d9bd769e" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 9b86f27d48eca8868f70d4e91e95fef2 + x-runtime: + - '0.026515' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:03:20 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:43 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - ebca3ac678b43c4b4d5ae4a55b2ab72d + x-runtime: + - '0.018057' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 12:03:43 GMT +- request: + method: get + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_types/DA004 + body: + encoding: US-ASCII + string: '' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:59 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '1352' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"134c006d151f82b397c0f27ceb33a746" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 1247033474ede3c4966d69446af03d66 + x-runtime: + - '0.016882' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"ccms_code":"DA004","meaning":"Non-molestation order","ccms_category_law_code":"MAT","ccms_matter_code":"MINJN","name":"nonmolestation_order","description":"to + be represented on an application for a non-molestation order.","full_s8_only":false,"sca_core":false,"sca_related":false,"ccms_category_law":"Family","ccms_matter":"domestic + abuse (DA)","cost_limitations":{"substantive":{"start_date":"1970-01-01","value":"25000.0"},"delegated_functions":{"start_date":"2021-09-13","value":"2250.0"}},"default_scope_limitations":{"substantive":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings)."},"delegated_functions":{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date."}},"service_levels":[{"level":3,"name":"Full + Representation","stage":8,"proceeding_default":true}]}' + recorded_at: Tue, 17 Dec 2024 12:03:59 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_defaults + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:03:59 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '708' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"05375658d64485716c2575dd3e911e59" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 60c5a436029b993db22ee603da5b5e34 + x-runtime: + - '0.010505' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A"},"default_level_of_service":{"level":3,"name":"Full + Representation","stage":8},"default_scope":{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]}}' + recorded_at: Tue, 17 Dec 2024 12:03:59 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:04:00 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '2101' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"607af38910362a3060b3c421d9bd769e" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - 68b936c38edac4cad0093ce1fc9d8581 + x-runtime: + - '0.028305' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:04:00 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:04:33 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '2101' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"607af38910362a3060b3c421d9bd769e" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - ea9bebd251e467bb68ab52c99a57ac99 + x-runtime: + - '0.021301' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:04:33 GMT +- request: + method: post + uri: https://legal-framework-api-staging.cloud-platform.service.justice.gov.uk/proceeding_type_scopes + body: + encoding: UTF-8 + string: '{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3}' + headers: + Content-Type: + - application/json + User-Agent: + - Faraday v2.12.2 + response: + status: + code: 200 + message: OK + headers: + date: + - Tue, 17 Dec 2024 12:04:43 GMT + content-type: + - application/json; charset=utf-8 + content-length: + - '2101' + connection: + - keep-alive + x-frame-options: + - SAMEORIGIN + x-xss-protection: + - '0' + x-content-type-options: + - nosniff + x-permitted-cross-domain-policies: + - none + referrer-policy: + - strict-origin-when-cross-origin + vary: + - Accept, Origin + etag: + - W/"607af38910362a3060b3c421d9bd769e" + cache-control: + - max-age=0, private, must-revalidate + x-request-id: + - c18f01de3d45fdc8830cd9155558c0f1 + x-runtime: + - '0.027983' + strict-transport-security: + - max-age=31536000; includeSubDomains + body: + encoding: UTF-8 + string: '{"success":true,"requested_params":{"proceeding_type_ccms_code":"DA004","delegated_functions_used":false,"client_involvement_type":"A","level_of_service_code":3},"level_of_service":{"level":3,"name":"Full + Representation","stage":8,"scope_limitations":[{"code":"CV079","meaning":"Counsel''s + Opinion","description":"Limited to obtaining external Counsel''s Opinion or + the opinion of an external solicitor with higher court advocacy rights on + the information already available.","additional_params":[]},{"code":"CV118","meaning":"Hearing","description":"Limited + to all steps up to and including the hearing on [see additional limitation + notes]","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"CV027","meaning":"Hearing/Adjournment","description":"Limited + to all steps (including any adjournment thereof) up to and including the hearing + on","additional_params":[{"name":"hearing_date","type":"date","mandatory":true}]},{"code":"AA019","meaning":"Injunction + FLA-to final hearing","description":"As to proceedings under Part IV Family + Law Act 1996 limited to all steps up to and including obtaining and serving + a final order and in the event of breach leading to the exercise of a power + of arrest to representation on the consideration of the breach by the court + (but excluding applying for a warrant of arrest, if not attached, and representation + in contempt proceedings).","additional_params":[]},{"code":"CV117","meaning":"Interim + order inc. return date","description":"Limited to all steps necessary to apply + for an interim order; where application is made without notice to include + representation on the return date.","additional_params":[]},{"code":"FM054","meaning":"Overseas + applicant (forced marriage)","description":"Limited where the applicant is + overseas, to their return to the jurisdiction and thereafter a solicitor''s + report","additional_params":[]},{"code":"AA009","meaning":"Warrant of arrest + FLA","description":"As to an order under Part IV Family Law Act 1996 limited + to an application for the issue of a warrant of arrest.","additional_params":[]}]}}' + recorded_at: Tue, 17 Dec 2024 12:04:43 GMT +recorded_with: VCR 6.3.1 diff --git a/features/providers/check_provider_answers.feature b/features/providers/check_provider_answers.feature index da46210d36..cd9e9d11dc 100644 --- a/features/providers/check_provider_answers.feature +++ b/features/providers/check_provider_answers.feature @@ -479,3 +479,87 @@ Feature: Checking client details answers backwards and forwards When I choose "No" And I click "Save and continue" Then I should be on a page showing 'Check your answers' + + @javascript @vcr + Scenario: Multiple scope limitations are displayed as expected + Given I have created an application with da004 proceedings with delegated functions + And I view the check provider answers page + + Then the following sections should exist: + | tag | section | + | h2 | Client details | + | h2 | Proceedings | + | h2 | Non-molestation order | + | h2 | What happens next | + + And the "DA004" proceeding check your answers section should contain: + | question | answer | + | Client role | Applicant/Claimant/Petitioner | + | Emergency level of service | Full Representation | + | Emergency scope limitations | Interim order inc. return date\nLimited to Family Help (Higher) and to all steps necessary to negotiate and conclude a settlement. To include the issue of proceedings and representation in those proceedings save in relation to or at a contested final hearing. | + | Substantive level of service | Full Representation | + | Substantive scope limitations | Final hearing\nLimited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order. | + And the Delegated functions answer for DA004 should match \d{1,2} \w+ \d{4} + + And the emergency scope limitation Interim order inc. return date heading for DA004 should not be bold + And the substantive scope limitation Final hearing heading for DA004 should not be bold + + When I click Check Your Answers summary card Change link for "DA004" + Then I should see 'Proceeding 1\nNon-molestation order\nWhat is your client's role in this proceeding?' + + When I click "Save and continue" + Then I should see 'Proceeding 1\nNon-molestation order\nHave you used delegated functions for this proceeding?' + + When I click 'Save and continue' + Then I should see 'Proceeding 1\nNon-molestation order' + And I should see 'Do you want to use the default level of service and scope for the emergency application?' + + When I choose 'No' + And I click 'Save and continue' + Then I should see "Proceeding 1\nNon-molestation order" + And I should see "You cannot change the default level of service for the emergency application for this proceeding." + + When I click 'Save and continue' + Then I should see 'Proceeding 1\nNon-molestation order' + Then I should see 'Proceeding 1\nNon-molestation order\nFor the emergency application, select the scope' + + When I select "Hearing" + And I enter the "hearing date" date of 2 months in the future + And I select "Warrant of arrest FLA" + And I click 'Save and continue' + Then I should see 'Proceeding 1\nNon-molestation order' + And I should see 'Do you want to use the default level of service and scope for the substantive application?' + + When I choose 'No' + And I click 'Save and continue' + Then I should see "Proceeding 1\nNon-molestation order" + And I should see "You cannot change the default level of service for the substantive application for this proceeding." + + When I click 'Save and continue' + Then I should see 'Proceeding 1\nNon-molestation order' + Then I should see 'Proceeding 1\nNon-molestation order\nFor the substantive application, select the scope' + + When I select "Hearing/Adjournment" + And I enter the "hearing date" date of 3 months in the future + And I click 'Save and continue' + Then I should be on a page with title "What you're applying for" + + When I choose "No" + And I click "Save and continue" + Then I should be on a page with title "Check your answers" + + And the "DA004" proceeding check your answers section should contain: + | question | answer | + | Client role | Applicant, claimant or petitioner | + | Emergency level of service | Full Representation | + | Substantive level of service | Full Representation | + And the Delegated functions answer for DA004 should match \d{1,2} \w+ \d{4} + + And the emergency scope limitation Hearing heading for DA004 should be bold + And the Emergency scope limitations answer for DA004 should match Limited to all steps up to and including the hearing on \d{1,2} \w+ \d{4} + And the Emergency scope limitations answer for DA004 should not match Date\: \d{1,2} \w+ \d{4} + And the emergency scope limitation Warrant of arrest FLA heading for DA004 should be bold + And the Emergency scope limitations answer for DA004 should match As to an order under Part IV Family Law Act 1996 limited to an application for the issue of a warrant of arrest. + + And the substantive scope limitation Hearing/Adjournment heading for DA004 should not be bold + And the Substantive scope limitations answer for DA004 should match Limited to all steps \(including any adjournment thereof\) up to and including the hearing on diff --git a/features/step_definitions/check_provider_answers_steps.rb b/features/step_definitions/check_provider_answers_steps.rb index 09a8127430..f366cb86ca 100644 --- a/features/step_definitions/check_provider_answers_steps.rb +++ b/features/step_definitions/check_provider_answers_steps.rb @@ -9,3 +9,72 @@ Then("the \"Partner details\" check your answers section should contain:") do |table| expect_questions_and_answers_in(selector: "#partner-details-questions", expected: table) end + +Given(/^I have created an application with (.*) proceedings (with|without) delegated functions$/) do |proceedings, df| + proceeding_array = proceedings.split(",").map(&:to_sym) + df_options = df == "with" ? proceeding_array.map { |p| { p.upcase => [10.days.ago, 10.days.ago] } }[0] : {} + applicant = create( + :applicant, + first_name: "Test", + last_name: "Test", + national_insurance_number: "JA123456A", + date_of_birth: "01-01-1970", + email: "test@test.com", + has_partner: false, + ) + create( + :address, + address_line_one: "Transport For London", + address_line_two: "98 Petty France", + city: "London", + postcode: "SW1H 9EA", + lookup_used: true, + applicant:, + ) + @legal_aid_application = create( + :legal_aid_application, + :with_non_passported_state_machine, + :at_entering_applicant_details, + :with_proceedings, + :with_delegated_functions_on_proceedings, + explicit_proceedings: proceeding_array, + set_lead_proceeding: proceeding_array.first, + df_options:, + applicant:, + ) + login_as @legal_aid_application.provider +end + +And("I view the check provider answers page") do + visit(providers_legal_aid_application_check_provider_answers_path(@legal_aid_application)) + steps %(Then I should be on a page showing 'Check your answers') +end + +Then("the {string} proceeding check your answers section should contain:") do |proceeding_code, table| + expect_questions_and_answers_in(selector: "##{proceeding_code.downcase}-questions", expected: table) +end + +Then(/^the (.*) answer for (.*) (should|should not) match (.*)$/) do |question, proceeding_code, match, regex| + selector = "##{proceeding_code.downcase}-questions" + answer = Regexp.new(regex) + within(selector) do + expect(page).to have_css("dt", text: question), "expected to find tag \"dt\" with text: \"#{question}\"" + if match == "should" + expect(page).to have_css("dd", text: answer), "expected to find tag \"dd\" with text: \"#{answer}\"" + else + expect(page).to have_no_css("dd", text: answer), "expected to find tag \"dd\" without text: \"#{answer}\"" + end + end +end + +Then(/^the (emergency|substantive) scope limitation (.*) heading for (.*) should (be|not be) bold$/) do |type, text, proceeding_code, match| + within("##{proceeding_code.downcase}-questions") do + within("#app-check-your-answers__#{proceeding_code.downcase}_#{type}_scope_limitations") do + if match == "be" + expect(page).to have_css("span.single-scope-limit-heading", text:, visible: :visible) + else + expect(page).to have_no_css("span.single-scope-limit-heading", text:) + end + end + end +end From 820154f695e00b119d15b9db4c0066d998c26df7 Mon Sep 17 00:00:00 2001 From: ColinBruce Date: Tue, 17 Dec 2024 15:01:20 +0000 Subject: [PATCH 2/5] AP-5592: Update proceeding_helper Add the date to the end of the description if has not been added by the proceeding method. This is needed to remove the duplication of date values on the check your answer pages This may be a temp fix while scope limitation texts are reviewed --- app/helpers/proceeding_helper.rb | 12 ++++++--- spec/factories/scope_limitations.rb | 7 +++++ spec/helpers/proceeding_helper_spec.rb | 36 ++++++++++++++++++++++---- 3 files changed, 47 insertions(+), 8 deletions(-) diff --git a/app/helpers/proceeding_helper.rb b/app/helpers/proceeding_helper.rb index f662d88e1f..d5c5cf9242 100644 --- a/app/helpers/proceeding_helper.rb +++ b/app/helpers/proceeding_helper.rb @@ -21,10 +21,16 @@ def scope_limits(proceeding, scope_type) private def scope_limitation_details(scope_limitation) - scope_limitation_details = [scope_limitation.meaning, scope_limitation.description] + sole_scope_limitation = scope_limitation.proceeding.scope_limitations.where(scope_type: scope_limitation.scope_type).count.eql?(1) + scope_limitation_meaning = if sole_scope_limitation + scope_limitation.meaning + else + "#{scope_limitation.meaning}".html_safe + end + scope_limitation_details = [scope_limitation_meaning, scope_limitation.description] - if scope_limitation.hearing_date - scope_limitation_details << "Date: #{scope_limitation.hearing_date}" + if scope_limitation.hearing_date && scope_limitation.description.exclude?(scope_limitation.hearing_date.to_s) + scope_limitation_details[1] = "#{scope_limitation.description} #{scope_limitation.hearing_date}" elsif scope_limitation.limitation_note scope_limitation_details << "Note: #{scope_limitation.limitation_note}" end diff --git a/spec/factories/scope_limitations.rb b/spec/factories/scope_limitations.rb index 88aedb7fa7..d26370e9bf 100644 --- a/spec/factories/scope_limitations.rb +++ b/spec/factories/scope_limitations.rb @@ -32,5 +32,12 @@ meaning { "General Report" } description { "Limited to obtaining a report from [see additional limitation notes]" } end + + trait :substantive_cv027 do + scope_type { 0 } + code { "CV027" } + meaning { "Hearing/Adjournment" } + description { "Limited to all steps (including any adjournment thereof) up to and including the hearing on" } + end end end diff --git a/spec/helpers/proceeding_helper_spec.rb b/spec/helpers/proceeding_helper_spec.rb index f359d5bb48..2af1e6d7be 100644 --- a/spec/helpers/proceeding_helper_spec.rb +++ b/spec/helpers/proceeding_helper_spec.rb @@ -40,7 +40,7 @@ :scope_limitation, :emergency, meaning: "Special hearing", - description: "Limited to Family Help (Higher) and to all steps necessary to negotiate and conclude a settlement.", + description: "Made up scope to take all steps necessary to negotiate and conclude a settlement on", hearing_date: Date.new(2022, 12, 25), ), create( @@ -64,6 +64,11 @@ meaning: "General report", limitation_note: "This is a note", ), + create( + :scope_limitation, + :substantive_cv027, + hearing_date: Date.new(2024, 12, 25), + ), ] end @@ -80,8 +85,8 @@ let(:scope_type) { "emergency" } it "returns only the emergency scope limitation meanings" do - expect(scope_limitations).to include("Special hearing
Limited to Family Help (Higher) and to all steps necessary to negotiate and conclude a settlement.
Date: 25 December 2022") - expect(scope_limitations).to include("Interim order
Limited to all steps up to and including the hearing on [see additional limitation notes]") + expect(scope_limitations).to include("Special hearing
Made up scope to take all steps necessary to negotiate and conclude a settlement on 25 December 2022") + expect(scope_limitations).to include("Interim order
Limited to all steps up to and including the hearing on [see additional limitation notes]") end end @@ -89,8 +94,29 @@ let(:scope_type) { "substantive" } it "returns only the substantive scope limitation meanings" do - expect(scope_limitations).to include("Final heading
Limited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order.") - expect(scope_limitations).to include("General report
Limited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order.
Note: This is a note") + expect(scope_limitations).to include("Final heading
Limited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order.") + expect(scope_limitations).to include("General report
Limited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order.
Note: This is a note") + expect(scope_limitations).to include("Hearing/Adjournment
Limited to all steps (including any adjournment thereof) up to and including the hearing on 25 December 2024") + end + end + + context "when there is a single scope limitation" do + let(:emergency_scope_limitations) do + [ + create( + :scope_limitation, + :emergency_cv118, + meaning: "Interim order", + ), + ] + end + + context "and the scope type is emergency" do + let(:scope_type) { "emergency" } + + it "returns scope limitation meanings with a bolded span around them" do + expect(scope_limitations).to include("Interim order
Limited to all steps up to and including the hearing on [see additional limitation notes]") + end end end end From be389decf3bf5ba701b26ce199667d5a31aaa434 Mon Sep 17 00:00:00 2001 From: ColinBruce Date: Wed, 18 Dec 2024 07:18:07 +0000 Subject: [PATCH 3/5] AP-5592: Update step definition to clarify name --- features/providers/check_provider_answers.feature | 10 +++++----- .../step_definitions/check_provider_answers_steps.rb | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/features/providers/check_provider_answers.feature b/features/providers/check_provider_answers.feature index cd9e9d11dc..267907a90d 100644 --- a/features/providers/check_provider_answers.feature +++ b/features/providers/check_provider_answers.feature @@ -499,7 +499,7 @@ Feature: Checking client details answers backwards and forwards | Emergency scope limitations | Interim order inc. return date\nLimited to Family Help (Higher) and to all steps necessary to negotiate and conclude a settlement. To include the issue of proceedings and representation in those proceedings save in relation to or at a contested final hearing. | | Substantive level of service | Full Representation | | Substantive scope limitations | Final hearing\nLimited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order. | - And the Delegated functions answer for DA004 should match \d{1,2} \w+ \d{4} + And the Delegated functions answer for the DA004 proceeding should match \d{1,2} \w+ \d{4} And the emergency scope limitation Interim order inc. return date heading for DA004 should not be bold And the substantive scope limitation Final hearing heading for DA004 should not be bold @@ -556,10 +556,10 @@ Feature: Checking client details answers backwards and forwards And the Delegated functions answer for DA004 should match \d{1,2} \w+ \d{4} And the emergency scope limitation Hearing heading for DA004 should be bold - And the Emergency scope limitations answer for DA004 should match Limited to all steps up to and including the hearing on \d{1,2} \w+ \d{4} - And the Emergency scope limitations answer for DA004 should not match Date\: \d{1,2} \w+ \d{4} + And the Emergency scope limitations answer for the DA004 proceeding should match Limited to all steps up to and including the hearing on \d{1,2} \w+ \d{4} + And the Emergency scope limitations answer for the DA004 proceeding should not match Date\: \d{1,2} \w+ \d{4} And the emergency scope limitation Warrant of arrest FLA heading for DA004 should be bold - And the Emergency scope limitations answer for DA004 should match As to an order under Part IV Family Law Act 1996 limited to an application for the issue of a warrant of arrest. + And the Emergency scope limitations answer for the DA004 proceeding should match As to an order under Part IV Family Law Act 1996 limited to an application for the issue of a warrant of arrest. And the substantive scope limitation Hearing/Adjournment heading for DA004 should not be bold - And the Substantive scope limitations answer for DA004 should match Limited to all steps \(including any adjournment thereof\) up to and including the hearing on + And the Substantive scope limitations answer for the DA004 proceeding should match Limited to all steps \(including any adjournment thereof\) up to and including the hearing on diff --git a/features/step_definitions/check_provider_answers_steps.rb b/features/step_definitions/check_provider_answers_steps.rb index f366cb86ca..9679f8b380 100644 --- a/features/step_definitions/check_provider_answers_steps.rb +++ b/features/step_definitions/check_provider_answers_steps.rb @@ -54,7 +54,7 @@ expect_questions_and_answers_in(selector: "##{proceeding_code.downcase}-questions", expected: table) end -Then(/^the (.*) answer for (.*) (should|should not) match (.*)$/) do |question, proceeding_code, match, regex| +Then(/^the (.*) answer for the (.*) proceeding (should|should not) match (.*)$/) do |question, proceeding_code, match, regex| selector = "##{proceeding_code.downcase}-questions" answer = Regexp.new(regex) within(selector) do From fb1036ed0dc43ee66c33ae2910c0acd0bc3c8e8a Mon Sep 17 00:00:00 2001 From: ColinBruce Date: Wed, 18 Dec 2024 07:22:06 +0000 Subject: [PATCH 4/5] AP-5592: refactor downcasing of selector names Rather than downcase each interpolated value, downcase the entire selector name --- features/step_definitions/check_provider_answers_steps.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/features/step_definitions/check_provider_answers_steps.rb b/features/step_definitions/check_provider_answers_steps.rb index 9679f8b380..7d1a7ed916 100644 --- a/features/step_definitions/check_provider_answers_steps.rb +++ b/features/step_definitions/check_provider_answers_steps.rb @@ -51,11 +51,11 @@ end Then("the {string} proceeding check your answers section should contain:") do |proceeding_code, table| - expect_questions_and_answers_in(selector: "##{proceeding_code.downcase}-questions", expected: table) + expect_questions_and_answers_in(selector: "##{proceeding_code}-questions".downcase, expected: table) end Then(/^the (.*) answer for the (.*) proceeding (should|should not) match (.*)$/) do |question, proceeding_code, match, regex| - selector = "##{proceeding_code.downcase}-questions" + selector = "##{proceeding_code}-questions".downcase answer = Regexp.new(regex) within(selector) do expect(page).to have_css("dt", text: question), "expected to find tag \"dt\" with text: \"#{question}\"" @@ -68,8 +68,8 @@ end Then(/^the (emergency|substantive) scope limitation (.*) heading for (.*) should (be|not be) bold$/) do |type, text, proceeding_code, match| - within("##{proceeding_code.downcase}-questions") do - within("#app-check-your-answers__#{proceeding_code.downcase}_#{type}_scope_limitations") do + within("##{proceeding_code}-questions".downcase) do + within("#app-check-your-answers__#{proceeding_code}_#{type}_scope_limitations".downcase) do if match == "be" expect(page).to have_css("span.single-scope-limit-heading", text:, visible: :visible) else From f43e70eb32ec6614b04d3055803b4c9c050b8f51 Mon Sep 17 00:00:00 2001 From: ColinBruce Date: Wed, 18 Dec 2024 07:23:31 +0000 Subject: [PATCH 5/5] AP-5592: refactor new step allow both upper and lower case emeregency or substantive types to be passed this allows a more uniform appearance in the the feature test scenarios --- features/providers/check_provider_answers.feature | 12 ++++++------ .../step_definitions/check_provider_answers_steps.rb | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/features/providers/check_provider_answers.feature b/features/providers/check_provider_answers.feature index 267907a90d..fcfce89103 100644 --- a/features/providers/check_provider_answers.feature +++ b/features/providers/check_provider_answers.feature @@ -501,8 +501,8 @@ Feature: Checking client details answers backwards and forwards | Substantive scope limitations | Final hearing\nLimited to all steps up to and including final hearing and any action necessary to implement (but not enforce) the order. | And the Delegated functions answer for the DA004 proceeding should match \d{1,2} \w+ \d{4} - And the emergency scope limitation Interim order inc. return date heading for DA004 should not be bold - And the substantive scope limitation Final hearing heading for DA004 should not be bold + And the Emergency scope limitation Interim order inc. return date heading for DA004 should not be bold + And the Substantive scope limitation Final hearing heading for DA004 should not be bold When I click Check Your Answers summary card Change link for "DA004" Then I should see 'Proceeding 1\nNon-molestation order\nWhat is your client's role in this proceeding?' @@ -553,13 +553,13 @@ Feature: Checking client details answers backwards and forwards | Client role | Applicant, claimant or petitioner | | Emergency level of service | Full Representation | | Substantive level of service | Full Representation | - And the Delegated functions answer for DA004 should match \d{1,2} \w+ \d{4} + And the Delegated functions answer for the DA004 proceeding should match \d{1,2} \w+ \d{4} - And the emergency scope limitation Hearing heading for DA004 should be bold + And the Emergency scope limitation Hearing heading for DA004 should be bold And the Emergency scope limitations answer for the DA004 proceeding should match Limited to all steps up to and including the hearing on \d{1,2} \w+ \d{4} And the Emergency scope limitations answer for the DA004 proceeding should not match Date\: \d{1,2} \w+ \d{4} - And the emergency scope limitation Warrant of arrest FLA heading for DA004 should be bold + And the Emergency scope limitation Warrant of arrest FLA heading for DA004 should be bold And the Emergency scope limitations answer for the DA004 proceeding should match As to an order under Part IV Family Law Act 1996 limited to an application for the issue of a warrant of arrest. - And the substantive scope limitation Hearing/Adjournment heading for DA004 should not be bold + And the Substantive scope limitation Hearing/Adjournment heading for DA004 should not be bold And the Substantive scope limitations answer for the DA004 proceeding should match Limited to all steps \(including any adjournment thereof\) up to and including the hearing on diff --git a/features/step_definitions/check_provider_answers_steps.rb b/features/step_definitions/check_provider_answers_steps.rb index 7d1a7ed916..b90ae0f7de 100644 --- a/features/step_definitions/check_provider_answers_steps.rb +++ b/features/step_definitions/check_provider_answers_steps.rb @@ -67,7 +67,7 @@ end end -Then(/^the (emergency|substantive) scope limitation (.*) heading for (.*) should (be|not be) bold$/) do |type, text, proceeding_code, match| +Then(/^the ([eE]mergency|[sS]ubstantive) scope limitation (.*) heading for (.*) should (be|not be) bold$/) do |type, text, proceeding_code, match| within("##{proceeding_code}-questions".downcase) do within("#app-check-your-answers__#{proceeding_code}_#{type}_scope_limitations".downcase) do if match == "be"