diff --git a/test.py b/test.py index ee268d3..06c0165 100644 --- a/test.py +++ b/test.py @@ -54,6 +54,58 @@ class TestValidation(tornado.testing.AsyncHTTPTestCase): validation_result = json.loads(response.body.decode()) + self.assertIn('valid', validation_result, "Key 'valid' expected in validation result") + self.assertFalse(validation_result['valid'], "Validation result is expected to be valid==false") + + def test_valid_entity(self): + entity = { + 'finanzdaten': + { + 'bic': 'PBNKDEFFXXX', + 'holder': '', + 'iban': 'DE89370400440532013000', + 'issuance': '2012-01-01', + 'reference': '0042', + 'scan-sepa-mandate': '' + }, + 'mitgliederdaten': + { + 'bis': '', + 'mitgliedsbeitrag': '30', + 'scan-antrag': '', + 'schliessberechtigung': 'Ja', + 'spendenbeitrag': '0', + 'status': 'V', + 'von': '2012-01-01' + }, + 'stammdaten': + { + 'address_code': '39104', + 'address_country': 'DE', + 'address_label': 'Max Hackerberg\nLeibnizstr. 32\n39104 Magdeburg', + 'address_locality': 'Magdeburg', + 'address_region': '', + 'address_street': 'Leibnizstr. 32', + 'birth_date': '1970-01-01', + 'birth_location': 'Hackstadt', + 'email': 'max.hackerberg@netz39.de', + 'fullname': 'Max Hackerberg', + 'nickname': 'maxH', + 'pgp-key': '', + 'ssh-key': '' + }, + 'timestamp': '2020-03-25T23:58:11', + 'id': '6af68' + } + + response = self.fetch('/v0/validate', + method='POST', + body=json.dumps(entity)) + + self.assertEqual(200, response.code, "Validation must always return 200") + + validation_result = json.loads(response.body.decode()) + self.assertIn('valid', validation_result, "Key 'valid' expected in validation result") self.assertTrue(validation_result['valid'], "Validation result is expected to be valid==true")