Browse Source

DIV-1219: Don't show Marriage Certificate upload if they've indicated they aren't providing one in prequal

pull/172/head
ariannedee 5 years ago
parent
commit
203e64519d
3 changed files with 86 additions and 36 deletions
  1. +9
    -7
      edivorce/apps/core/templates/dashboard/print_form.html
  2. +67
    -19
      edivorce/apps/core/tests/test_filing.py
  3. +10
    -10
      edivorce/apps/core/utils/cso_filing.py

+ 9
- 7
edivorce/apps/core/templates/dashboard/print_form.html View File

@ -416,7 +416,8 @@
<h3>Additional Documents to Print and Complete</h3>
<p>The following additional documents are required as part of your filing:</p>
<ul>
<li>
{% if original_marriage_certificate == 'YES' %}
<li>
<span class="tooltip-link" data-toggle="tooltip" data-placement="right"
data-html="true"
title="
@ -427,17 +428,18 @@
<br /><br />
- Does not require signatures.
">Proof of marriage<i class="fa fa-question-circle" aria-hidden="true"></i></span>.
Original or certified Marriage Certificate or Registration of Divorce. If not in English, also provide
<span class="tooltip-link" data-toggle="tooltip" data-placement="right"
data-html="true"
title="
Original or certified Marriage Certificate or Registration of Divorce. If not in English, also provide
<span class="tooltip-link" data-toggle="tooltip" data-placement="right"
data-html="true"
title="
<b>Affidavit of Translation</b>
<br /><br />
The Affidavit of Translation is an affidavit which is sworn by a translator before a notary, lawyer or commissioner for taking Affidavits.
The original certificate of marriage should be exhibited to the Affidavit of Translation together with the translation of the translator.
">Affidavit of Translation<i class="fa fa-question-circle" aria-hidden="true"></i></span>
and English translation.
</li>
and English translation.
</li>
{% endif %}
<li>
<span class="tooltip-link" data-toggle="tooltip" data-placement="right"
data-html="true"


+ 67
- 19
edivorce/apps/core/tests/test_filing.py View File

@ -21,56 +21,74 @@ class FilingLogic(TestCase):
def questions_dict(self):
return get_data_for_user(self.user)
def test_forms_to_file_initial_together_in_person(self):
def assert_package_1_needed(uploaded, generated):
self.assertEqual(len(uploaded), 2)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
def test_initial_forms_to_file_in_person(self):
def assert_package_1_needed():
self.create_response('original_marriage_certificate', 'NO')
self.create_response('where_were_you_married_country', 'Canada')
self.create_response('where_were_you_married_prov', 'BC')
# Base forms required
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 1)
self.assertIn({'doc_type': doc_type("joint divorce proceedings"), 'party_code': 0}, uploaded)
self.assertEqual(len(generated), 1)
self.assertIn({'doc_type': doc_type("notice of joint family claim"), 'form_number': 1}, generated)
# Marriage certificate required
self.create_response('original_marriage_certificate', 'YES')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 2)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
# Affidavit of translation required
self.create_response('where_were_you_married_prov', 'QC')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 3)
self.assertIn({'doc_type': doc_type("affidavit of translation"), 'party_code': 0}, uploaded)
self.create_response('how_to_sign', 'Together')
self.create_response('signing_location', 'In-person')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
assert_package_1_needed(uploaded, generated)
assert_package_1_needed()
self.create_response('how_to_sign', 'Separately')
self.create_response('signing_location_you', 'In-person')
self.create_response('signing_location_spouse', 'In-person')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
assert_package_1_needed(uploaded, generated)
assert_package_1_needed()
self.create_response('how_to_sign', 'Separately')
self.create_response('signing_location_you', 'In-person')
self.create_response('signing_location_spouse', 'Virtual')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
assert_package_1_needed(uploaded, generated)
assert_package_1_needed()
def test_forms_to_file_both_virtual_prov_quebec(self):
def test_initial_forms_to_file_both_virtual(self):
def assert_package_1_2_3_needed(with_efss_spouse=False):
# No conditional forms
self.create_response('children_of_marriage', 'NO')
self.create_response('name_change_you', 'NO')
self.create_response('name_change_spouse', 'NO')
self.create_response('original_marriage_certificate', 'NO')
self.create_response('where_were_you_married_country', 'Canada')
self.create_response('where_were_you_married_prov', 'BC')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
doc_count = len(uploaded)
if with_efss_spouse:
self.assertEqual(doc_count, 6)
self.assertEqual(doc_count, 4)
else:
self.assertEqual(doc_count, 5)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
self.assertEqual(doc_count, 3)
self.assertIn({'doc_type': doc_type("draft final order"), 'party_code': 0}, uploaded)
self.assertIn({'doc_type': doc_type("joint divorce proceedings"), 'party_code': 0}, uploaded)
self.assertIn({'doc_type': doc_type("electronic filing"), 'party_code': 1}, uploaded)
if with_efss_spouse:
self.assertIn({'doc_type': doc_type("electronic filing"), 'party_code': 2}, uploaded)
self.assertIn({'doc_type': doc_type("affidavit of translation"), 'party_code': 0}, uploaded)
self.assertEqual(len(generated), 3)
self.assertIn({'doc_type': doc_type("notice of joint family claim"), 'form_number': 1}, generated)
@ -95,10 +113,22 @@ class FilingLogic(TestCase):
self.assertEqual(len(uploaded), doc_count + 3)
self.assertIn({'doc_type': doc_type("identification of applicant"), 'party_code': 2}, uploaded)
# Marriage certificate required
self.create_response('original_marriage_certificate', 'YES')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), doc_count + 4)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
# Affidavit of translation + F96 required
self.create_response('where_were_you_married_prov', 'QC')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), doc_count + 5)
self.assertIn({'doc_type': doc_type("affidavit of translation"), 'party_code': 0}, uploaded)
self.create_response('how_to_sign', 'Together')
self.create_response('signing_location', 'Virtual')
self.create_response('where_were_you_married_country', 'Canada')
self.create_response('where_were_you_married_prov', 'QC')
assert_package_1_2_3_needed()
@ -108,12 +138,16 @@ class FilingLogic(TestCase):
assert_package_1_2_3_needed(with_efss_spouse=True)
def test_forms_to_file_you_virtual_spouse_in_person(self):
def test_initial_forms_to_file_you_virtual_spouse_in_person(self):
def assert_package_1_2_needed():
# No conditional forms
self.create_response('original_marriage_certificate', 'NO')
self.create_response('where_were_you_married_country', 'Canada')
self.create_response('where_were_you_married_prov', 'BC')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 3)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
self.assertIn({'doc_type': doc_type("electronic filing"), 'party_code': 1}, uploaded)
self.assertIn({'doc_type': doc_type("draft final order"), 'party_code': 0}, uploaded)
self.assertIn({'doc_type': doc_type("joint divorce proceedings"), 'party_code': 0}, uploaded)
@ -136,6 +170,20 @@ class FilingLogic(TestCase):
self.assertEqual(len(uploaded), 5)
self.assertIn({'doc_type': doc_type("identification of applicant"), 'party_code': 1}, uploaded)
# Marriage certificate required
self.create_response('original_marriage_certificate', 'YES')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 6)
self.assertIn({'doc_type': doc_type("proof of marriage"), 'party_code': 0}, uploaded)
# Affidavit of translation required
self.create_response('where_were_you_married_prov', 'QC')
uploaded, generated = forms_to_file(self.questions_dict, initial=True)
self.assertEqual(len(uploaded), 7)
self.assertIn({'doc_type': doc_type("affidavit of translation"), 'party_code': 0}, uploaded)
self.create_response('how_to_sign', 'Separately')
self.create_response('signing_location_you', 'Virtual')
self.create_response('signing_location_spouse', 'In-person')


+ 10
- 10
edivorce/apps/core/utils/cso_filing.py View File

@ -69,15 +69,17 @@ def forms_to_file(responses_dict, initial=False):
name_change_spouse = derived['wants_other_orders'] and responses_dict.get('name_change_spouse') == 'YES'
has_children = derived['has_children_of_marriage']
provide_marriage_certificate = responses_dict.get('original_marriage_certificate') == 'YES'
married_in_canada = responses_dict.get('where_were_you_married_country') == 'Canada'
marriage_province = responses_dict.get('where_were_you_married_prov', '').strip().upper()
married_in_quebec = married_in_canada and marriage_province.startswith('Q')
married_in_quebec = married_in_canada and marriage_province.lower().startswith('q')
if initial:
generated.append({'doc_type': 'NJF', 'form_number': 1})
uploaded.append({'doc_type': 'MC', 'party_code': 0})
if married_in_quebec:
uploaded.append({'doc_type': 'AFTL', 'party_code': 0})
if provide_marriage_certificate:
uploaded.append({'doc_type': 'MC', 'party_code': 0})
if married_in_quebec:
uploaded.append({'doc_type': 'AFTL', 'party_code': 0})
if signing_location_both == 'In-person' or signing_location_you == 'In-person':
# claimant 1 is signing with a commissioner
@ -88,8 +90,7 @@ def forms_to_file(responses_dict, initial=False):
generated.append({'doc_type': 'RFO', 'form_number': 35})
generated.append({'doc_type': 'RCP', 'form_number': 36})
uploaded.append({'doc_type': 'OFI', 'party_code': 0})
if married_in_quebec:
uploaded.append({'doc_type': 'EFSS', 'party_code': 1})
uploaded.append({'doc_type': 'EFSS', 'party_code': 1})
uploaded.append({'doc_type': 'RDP', 'party_code': 0})
if has_children:
uploaded.append({'doc_type': 'AAI', 'party_code': 0})
@ -101,10 +102,9 @@ def forms_to_file(responses_dict, initial=False):
generated.append({'doc_type': 'RFO', 'form_number': 35})
generated.append({'doc_type': 'RCP', 'form_number': 36})
uploaded.append({'doc_type': 'OFI', 'party_code': 0})
if married_in_quebec:
uploaded.append({'doc_type': 'EFSS', 'party_code': 1})
if how_to_sign == 'Separately':
uploaded.append({'doc_type': 'EFSS', 'party_code': 2})
uploaded.append({'doc_type': 'EFSS', 'party_code': 1})
if how_to_sign == 'Separately':
uploaded.append({'doc_type': 'EFSS', 'party_code': 2})
uploaded.append({'doc_type': 'RDP', 'party_code': 0})
if has_children:
uploaded.append({'doc_type': 'AAI', 'party_code': 0})


Loading…
Cancel
Save