toulouse-maelis: [functests] add subscriptions out from Toulouse (#77634)

This commit is contained in:
Nicolas Roche 2023-05-17 17:35:34 +02:00
parent 78f89d48d7
commit a577b95fe5
3 changed files with 457 additions and 18 deletions

View File

@ -689,42 +689,55 @@ def get_subscription_info(nature, activity_text, unit_text, place_text, con, nam
}
@pytest.fixture(scope='session')
def loisirs_subscribe_info(conn, create_data, reference_year):
unlink(conn, create_data['name_id'])
link(conn, create_data)
def get_loisirs_subscribe_info(con, data, year):
return get_subscription_info(
'LOISIRS',
# Sigec made this loisirs activity available for functests
'TEST ECOLE DES SPORTS 22/23 SEMESTRE 2 - MULTIACTIVITES',
'MERCREDI - 15h30/17h - 8/15Ans',
'ARGOULETS',
conn,
create_data['name_id'],
create_data['bart_num'],
reference_year,
con,
data['name_id'],
data['bart_num'],
year,
)
@pytest.fixture(scope='session')
def extrasco_subscribe_info(conn, create_data, reference_year):
unlink(conn, create_data['name_id'])
link(conn, create_data)
def get_extrasco_subscribe_info(con, data, year):
return get_subscription_info(
'EXTRASCO',
# Sigec made this extra-sco activity available for functests
'TEST ADL ELEMENTAIRE Maourine Juin',
'TEST ADL ELEMENTAIRE Maourine FEVRIER 22/23',
'MAOURINE (la) ELEMENTAIRE',
conn,
create_data['name_id'],
create_data['bart_num'],
reference_year,
con,
data['name_id'],
data['bart_num'],
year,
)
@pytest.fixture(scope='session')
def loisirs_subscribe_info(conn, create_data, reference_year):
unlink(conn, create_data['name_id'])
link(conn, create_data)
return get_loisirs_subscribe_info(conn, create_data, reference_year)
@pytest.fixture(scope='session')
def loisirs_subscribe_info2(conn, create_data2, reference_year):
unlink(conn, create_data2['name_id'])
link(conn, create_data2)
return get_loisirs_subscribe_info(conn, create_data2, reference_year)
@pytest.fixture(scope='session')
def extrasco_subscribe_info(conn, create_data, reference_year):
unlink(conn, create_data['name_id'])
link(conn, create_data)
return get_extrasco_subscribe_info(conn, create_data, reference_year)
@pytest.fixture(scope='session')
def perisco_subscribe_info(conn, create_data, reference_year):
'''This fixture is a configuration trick from Sigec

View File

@ -0,0 +1,406 @@
{
"number": "N/A",
"category": "BI",
"situation": "MARI",
"flagCom": false,
"nbChild": 3,
"nbTotalChild": 4,
"nbAES": "1",
"RL1": {
"num": "N/A",
"firstname": "MARGE",
"lastname": "N/A",
"maidenName": "BOUVIER",
"quality": "MERE",
"civility": "MME",
"birth": {
"dateBirth": "1950-10-01T00:00:00+01:00",
"place": null,
"communeCode": null,
"countryCode": "404",
"cdDepartment": null,
"countryCode_text": "USA"
},
"adresse": {
"idStreet": null,
"num": 742,
"numComp": null,
"street1": "Evergreen Terrace",
"street2": null,
"town": "Springfield",
"zipcode": "90701"
},
"contact": {
"phone": null,
"mobile": null,
"mail": null,
"isContactMail": false,
"isContactSms": false,
"isInvoicePdf": false
},
"profession": null,
"CAFInfo": null,
"indicatorList": [],
"quotientList": [
{
"yearRev": 2022,
"dateStart": "2023-05-15T00:00:00+02:00",
"dateEnd": "3000-12-31T00:00:00+01:00",
"mtt": 5000.0,
"cdquo": "1",
"codeUti": null,
"cdquo_text": "Revenus fiscaux"
}
],
"subscribeActivityList": [],
"civility_text": "MADAME",
"quality_text": "M\u00e8re"
},
"RL2": {
"num": "N/A",
"firstname": "HOMER",
"lastname": "N/A",
"maidenName": null,
"quality": "PERE",
"civility": "MR",
"birth": {
"dateBirth": "1956-05-12T00:00:00+01:00",
"place": "Brive-la-Gaillarde",
"communeCode": "19031",
"countryCode": null,
"cdDepartment": "19",
"communeCode_text": "BRIVE-LA-GAILLARDE",
"cdDepartment_text": "CORREZE"
},
"adresse": {
"idStreet": "2317",
"num": 4,
"numComp": null,
"street1": "RUE ACHILLE VIADIEU",
"street2": null,
"town": "Toulouse",
"zipcode": "31000",
"idStreet_text": "RUE ACHILLE VIADIEU"
},
"contact": {
"phone": "0122222222",
"mobile": "0622222222",
"mail": "homer.simpson@example.org.com",
"isContactMail": true,
"isContactSms": true,
"isInvoicePdf": true
},
"profession": {
"codeCSP": "46",
"profession": "Inspecteur de s\u00e9curit\u00e9",
"employerName": "Burns",
"phone": "0133333333",
"addressPro": {
"num": null,
"street": null,
"zipcode": "90701",
"town": "Springfield"
},
"situation": null,
"weeklyHours": null,
"codeCSP_text": "EMPLOYES"
},
"CAFInfo": {
"number": "123",
"organ": "GENE",
"organ_text": "CAF 31"
},
"indicatorList": [
{
"code": "AVL",
"libelle": "Auxiliaire de Vie loisirs",
"note": null,
"choice": null,
"code_text": "Auxiliaire de Vie loisirs"
},
{
"code": "ETABSPEC",
"libelle": "Etablissement sp\u00e9cialis\u00e9",
"note": "SNPP",
"choice": null,
"code_text": "Etablissement sp\u00e9cialis\u00e9"
}
],
"quotientList": [],
"subscribeActivityList": [],
"civility_text": "MONSIEUR",
"quality_text": "P\u00e8re"
},
"quotientList": [],
"childList": [
{
"num": "N/A",
"lastname": "N/A",
"firstname": "BART",
"sexe": "M",
"birth": {
"dateBirth": "2014-04-01T00:00:00+02:00",
"place": "Brive-la-Gaillarde",
"communeCode": "19031",
"countryCode": null,
"cdDepartment": "19",
"communeCode_text": "BRIVE-LA-GAILLARDE",
"cdDepartment_text": "CORREZE"
},
"dietcode": "MENU_AV",
"bPhoto": true,
"bLeaveAlone": true,
"authorizedPersonList": [
{
"personInfo": {
"num": "N/A",
"lastname": "TEST_SIMPSON",
"firstname": "ABRAHAM JEBEDIAH",
"dateBirth": "1927-05-24T00:00:00+01:00",
"civility": "MR",
"sexe": "M",
"contact": {
"phone": "0312345678",
"mobile": null,
"mail": "abe.simpson@example.org"
},
"civility_text": "MONSIEUR",
"sexe_text": "Masculin"
},
"personQuality": {
"code": "13",
"libelle": "Famille",
"code_text": "Famille"
}
},
{
"personInfo": {
"num": "N/A",
"lastname": "TEST_SIMPSON",
"firstname": "MONA PENELOPE",
"dateBirth": "1929-03-15T00:00:00Z",
"civility": "MME",
"sexe": "F",
"contact": {
"phone": "0412345678",
"mobile": "0612345678",
"mail": "mona.simpson@example.org"
},
"civility_text": "MADAME",
"sexe_text": "F\u00e9minin"
},
"personQuality": {
"code": "13",
"libelle": "Famille",
"code_text": "Famille"
}
}
],
"indicatorList": [
{
"code": "AUTRE",
"libelle": "Autre",
"note": "rebellious",
"choice": null,
"code_text": "Autre"
},
{
"code": "LUNETTE",
"libelle": "Port de lunettes",
"note": null,
"choice": null,
"code_text": "Port de lunettes"
}
],
"medicalRecord": {
"familyDoctor": {
"name": "MONROE",
"phone": "0612341234",
"address": {
"street1": "Alameda",
"zipcode": "90701",
"town": "Springfield"
}
},
"allergy1": "butterscotch, imitation butterscotch, glow-in-the-dark monster make-up",
"allergy2": "shrimp and cauliflower",
"comment1": "the shrimp allergy isn't fully identified",
"comment2": null,
"observ1": "Ay Caramba!",
"observ2": "Eat my shorts!",
"isAuthHospital": false,
"hospital": null,
"vaccinList": [
{
"code": "24",
"libelle": "IMOVAX OREILLONS",
"vaccinationDate": "2022-02-22T00:00:00+01:00"
},
{
"code": "45",
"libelle": "DT TETANOS COQ",
"vaccinationDate": "2011-01-11T00:00:00+01:00"
}
]
},
"insurance": null,
"paiInfoBean": {
"code": "PAI_01",
"dateDeb": "2022-09-01T00:00:00+02:00",
"dateFin": "2023-07-01T00:00:00+02:00",
"description": "mischievous, rebellious, misunderstood, disruptive",
"code_text": "PAI Alimentaire Int\u00e9gral"
},
"mother": "N/A",
"father": "N/A",
"rl": null,
"subscribeSchoolList": [],
"subscribeActivityList": [],
"sexe_text": "Masculin",
"dietcode_text": "Avec viande"
},
{
"num": "N/A",
"lastname": "N/A",
"firstname": "LISA",
"sexe": "F",
"birth": {
"dateBirth": "2016-05-09T00:00:00+02:00",
"place": null,
"communeCode": null,
"countryCode": null,
"cdDepartment": null
},
"dietcode": "MENU_SV",
"bPhoto": false,
"bLeaveAlone": false,
"authorizedPersonList": [],
"indicatorList": [],
"medicalRecord": null,
"insurance": null,
"paiInfoBean": {
"code": "PAI_02",
"dateDeb": null,
"dateFin": null,
"description": null,
"code_text": "PAI Alimentaire Partiel"
},
"mother": "N/A",
"father": "N/A",
"rl": null,
"subscribeSchoolList": [],
"subscribeActivityList": [],
"sexe_text": "F\u00e9minin",
"dietcode_text": "Sans viande"
},
{
"num": "N/A",
"lastname": "N/A",
"firstname": "MAGGIE",
"sexe": "F",
"birth": {
"dateBirth": "2018-12-17T00:00:00+01:00",
"place": null,
"communeCode": null,
"countryCode": null,
"cdDepartment": null
},
"dietcode": "MENU_PAI",
"bPhoto": false,
"bLeaveAlone": false,
"authorizedPersonList": [],
"indicatorList": [],
"medicalRecord": null,
"insurance": null,
"paiInfoBean": {
"code": "PAI_02",
"dateDeb": null,
"dateFin": null,
"description": null,
"code_text": "PAI Alimentaire Partiel"
},
"mother": "N/A",
"father": "N/A",
"rl": null,
"subscribeSchoolList": [],
"subscribeActivityList": [],
"sexe_text": "F\u00e9minin",
"dietcode_text": "Panier PAI"
},
{
"num": "N/A",
"lastname": "N/A",
"firstname": "HUGO",
"sexe": "M",
"birth": {
"dateBirth": "2018-04-01T00:00:00+02:00",
"place": null,
"communeCode": null,
"countryCode": null,
"cdDepartment": null
},
"dietcode": "MENU_AV",
"bPhoto": false,
"bLeaveAlone": false,
"authorizedPersonList": [],
"indicatorList": [],
"medicalRecord": null,
"insurance": null,
"paiInfoBean": {
"code": "PAI_01",
"dateDeb": null,
"dateFin": null,
"description": null,
"code_text": "PAI Alimentaire Int\u00e9gral"
},
"mother": "N/A",
"father": "N/A",
"rl": null,
"subscribeSchoolList": [],
"subscribeActivityList": [],
"sexe_text": "Masculin",
"dietcode_text": "Avec viande"
}
],
"emergencyPersonList": [
{
"numPerson": "N/A",
"civility": "MME",
"firstname": "PATTY",
"lastname": "BOUVIER",
"dateBirth": "1948-08-30T00:00:00+01:00",
"sexe": "F",
"quality": "13",
"contact": {
"phone": "0112345678",
"mobile": "0612345678",
"mail": "patty.bouvier@example.org"
},
"civility_text": "MADAME",
"quality_text": "Famille",
"sexe_text": "F\u00e9minin"
},
{
"numPerson": "N/A",
"civility": "MME",
"firstname": "SELMA",
"lastname": "BOUVIER",
"dateBirth": "1946-04-29T00:00:00+01:00",
"sexe": "F",
"quality": "13",
"contact": {
"phone": "0112345678",
"mobile": "0612345678",
"mail": "selma.bouvier@example.org"
},
"civility_text": "MADAME",
"quality_text": "Famille",
"sexe_text": "F\u00e9minin"
}
],
"indicatorList": [],
"childErrorList": [],
"category_text": "BIPARENTALE",
"situation_text": "MARIE(E)",
"family_id": "N/A"
}

View File

@ -117,6 +117,26 @@ def test_direct_subscribe(conn, create_data, loisirs_subscribe_info, reference_y
assert resp.json()['data'] == {'controlOK': True, 'message': None}
def test_direct_subscribe_out_town(conn, create_data2, loisirs_subscribe_info2, reference_year):
assert loisirs_subscribe_info2['info']['controlResult']['controlOK'] is True
url = conn + '/add-person-subscription?NameID=%s' % create_data2['name_id']
payload = {
'person_id': create_data2['hugo_num'],
'activity_id': loisirs_subscribe_info2['activity']['id'],
'unit_id': loisirs_subscribe_info2['unit']['id'],
'place_id': loisirs_subscribe_info2['place']['id'],
'start_date': '%s-09-01' % reference_year,
'end_date': '%s-08-31' % (reference_year + 1),
}
resp = requests.post(url, json=payload)
resp.raise_for_status()
assert resp.json()['err'] == 0
# no idIns provided to remove subscription later
assert resp.json()['data'] == {'controlOK': True, 'message': None}
@pytest.mark.xfail(run=False)
def test_subscribe_with_conveyance(conn, create_data, loisirs_subscribe_info, reference_year):
assert loisirs_subscribe_info['info']['controlResult']['controlOK'] is True