def test_member_post_add_membership_ok(api_client): body = { "duration": 360, "start": "2000-01-23T04:56:07.000+00:00", "paymentMethod": "card", } result = api_client.post( '{}/member/{}/membership/'.format(base_url, "dubois_j"), data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS, ) assert result.status_code == 200 assert_modification_was_created(db.get_db().get_session()) s = db.get_db().get_session() q = s.query(Adherent) q = q.filter(Adherent.login == "dubois_j") assert q.one().date_de_depart == datetime.date(2001, 1, 17) e: Ecriture = s.query(Ecriture).one() assert 'dubois_j' == e.adherent.login assert 1 == e.compte_id assert 'Internet - 1 an' == e.intitule assert 1 == e.utilisateur_id assert 'card' == e.moyen
def test_member_patch_firstname(api_client): body = { "firstName": "TEST", } res = api_client.patch('{}/member/{}'.format(base_url, "dubois_j"), data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS) assert res.status_code == 204 assert_modification_was_created(db.get_db().get_session()) assert_member_in_db({ "firstName": "TEST", "lastName": "Dubois", "roomNumber": 5110, "comment": None, "departureDate": str(datetime.datetime(2005, 7, 14, 12, 30)), "associationMode": "2011-04-30T17:50:17", "email": "*****@*****.**", "username": "******" })
def test_member_delete_existant(client, sample_member): r = client.delete(f'{base_url}{sample_member.id}', headers=TEST_HEADERS) assert r.status_code == 204 assert_modification_was_created(db.session()) s = db.session() q = s.query(Adherent) q = q.filter(Adherent.login == "dubois_j") assert not s.query(q.exists()).scalar()
def test_member_delete_existant(api_client): r = api_client.delete('{}/member/{}'.format(base_url, "dubois_j"), headers=TEST_HEADERS) assert r.status_code == 204 assert_modification_was_created(db.get_db().get_session()) s = db.get_db().get_session() q = s.query(Adherent) q = q.filter(Adherent.login == "dubois_j") assert not s.query(q.exists()).scalar()
def test_member_patch(client, sample_member: Adherent, key: str, value: str): body = { key: value, } res = client.patch(f'{base_url}{sample_member.id}', data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS) assert res.status_code == 204 assert_modification_was_created(db.session()) member_to_check = { "firstName": sample_member.prenom, "lastName": sample_member.nom, # "comment": sample_member.commentaires, "mail": sample_member.mail, "username": sample_member.login } member_to_check[key] = value assert_member_in_db(member_to_check)
def test_member_change_password_ok(api_client): USERNAME = "******" body = { "password": "******"#NyL#+k:_xEdJrEDT7", } result = api_client.put( '{}/member/{}/password/'.format(base_url, USERNAME), data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS, ) assert result.status_code == 204 assert_modification_was_created(db.get_db().get_session()) s = db.get_db().get_session() q = s.query(Adherent) q = q.filter(Adherent.login == USERNAME) r = q.one() assert r.password == ntlm_hash(body["password"])
def test_member_put_member_update(api_client): body = { "firstName": "Jean-Louis", "lastName": "Dubois", "roomNumber": 4592, "comment": "comment", "departureDate": "2000-01-23T04:56:07.000+00:00", "associationMode": "2000-01-23T04:56:07.000+00:00", "email": "*****@*****.**", "username": "******" } res = api_client.put('{}/member/{}'.format(base_url, body["username"]), data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS) assert res.status_code == 204 assert_modification_was_created(db.get_db().get_session()) assert_member_in_db(body)
def test_member_post_member_create(client): body = { "firstName": "John", "lastName": "Doe", "mail": "*****@*****.**", "username": "******" } res = client.post(f'{base_url}', data=json.dumps(body), content_type='application/json', headers=TEST_HEADERS) assert 201 == res.status_code assert_modification_was_created(db.session()) assert_member_in_db(body) r = client.get( f"{host_url}/mailinglist/member/{int(res.text)}", headers=TEST_HEADERS, ) assert r.status_code == 200 response = json.loads(r.data.decode('utf-8')) assert response == 249