From eaf6aeeccc7a590c28127a5b0a0d92a33f1fd09e Mon Sep 17 00:00:00 2001 From: David Kilias Date: Sun, 6 Dec 2020 22:10:52 +0100 Subject: [PATCH] id field testcases --- test.py | 31 ++++++++++++++++++++++++- test_cases/invalid/invalid_id.json | 36 ++++++++++++++++++++++++++++++ test_cases/invalid/missing_id.json | 36 ++++++++++++++++++++++++++++++ 3 files changed, 102 insertions(+), 1 deletion(-) create mode 100644 test_cases/invalid/invalid_id.json create mode 100644 test_cases/invalid/missing_id.json diff --git a/test.py b/test.py index c562bdc..0aa7420 100644 --- a/test.py +++ b/test.py @@ -71,7 +71,7 @@ class TestValidation(tornado.testing.AsyncHTTPTestCase): self.assertIn('valid', validation_result, "Key 'valid' expected in validation result") self.assertTrue(validation_result['valid'], "Validation result is expected to be valid==true") - def test_invalid_entity(self): + def test_invalid_iban(self): entity_file = json.load(open('test_cases/invalid/invalid_iban.json','r')) response = self.fetch('/v0/validate', @@ -85,6 +85,35 @@ class TestValidation(tornado.testing.AsyncHTTPTestCase): 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_missing_id(self): + entity_file = json.load(open('test_cases/invalid/missing_id.json','r')) + + response = self.fetch('/v0/validate', + method='POST', + body=json.dumps(entity_file)) + + 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.assertFalse(validation_result['valid'], "Validation result is expected to be valid==false") + self.assertIn('id', validation_result['errors']) + + def test_invalid_id(self): + entity_file = json.load(open('test_cases/invalid/invalid_id.json','r')) + + response = self.fetch('/v0/validate', + method='POST', + body=json.dumps(entity_file)) + + 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.assertFalse(validation_result['valid'], "Validation result is expected to be valid==false") + self.assertIn('id', validation_result['errors']) if __name__ == "__main__": unittest.main() diff --git a/test_cases/invalid/invalid_id.json b/test_cases/invalid/invalid_id.json new file mode 100644 index 0000000..ed6e759 --- /dev/null +++ b/test_cases/invalid/invalid_id.json @@ -0,0 +1,36 @@ +{ + "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": "6ay68" +} \ No newline at end of file diff --git a/test_cases/invalid/missing_id.json b/test_cases/invalid/missing_id.json new file mode 100644 index 0000000..21beb16 --- /dev/null +++ b/test_cases/invalid/missing_id.json @@ -0,0 +1,36 @@ +{ + "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": "" +} \ No newline at end of file