From 2b28ee68d6896cf8fcf1704777b27e3799be2400 Mon Sep 17 00:00:00 2001
From: Cornelia Michlits <cornelia.michlits@tuwien.ac.at>
Date: Sun, 5 Dec 2021 20:11:13 +0100
Subject: [PATCH] #104 ontology - add tests for validator function

---
 fda-units-service/test/test_validator.py | 35 ++++++++++++++++++++++++
 1 file changed, 35 insertions(+)
 create mode 100644 fda-units-service/test/test_validator.py

diff --git a/fda-units-service/test/test_validator.py b/fda-units-service/test/test_validator.py
new file mode 100644
index 0000000000..d30013e2d4
--- /dev/null
+++ b/fda-units-service/test/test_validator.py
@@ -0,0 +1,35 @@
+#!/usr/bin/env python3
+# -*- coding: utf-8 -*-
+"""
+Created on Sun Dec  5 19:41:04 2021
+
+@author: Cornelia Michlits
+"""
+import unittest 
+import sys
+sys.path.append("..")
+from validate import validator, stringmapper
+
+exp_out_True = "{'valid': True}"
+exp_out_False = "{'valid': False}"
+
+class TestStringMethods(unittest.TestCase):
+
+    #metre is SI Unit
+    def test_validator_true(self): 
+        self.assertEqual(str(validator('metre')),exp_out_True)
+    #diameter is measure, but no SI Unit
+    def test_validator_no_SI_Unit(self): 
+        self.assertEqual(str(validator('diameter')),exp_out_False)
+    #misspelling
+    def test_validator_misspelling(self): 
+        self.assertEqual(str(validator('metreee')),exp_out_False)
+    #Divided unit
+    def test_validator_dividedunit(self): 
+        self.assertEqual(str(validator(stringmapper('mole per metre'))),exp_out_True)
+    #Prefixed unit
+    def test_validator_prefixedunit(self): 
+        self.assertEqual(str(validator(stringmapper('zettamole'))),exp_out_True)
+
+if __name__ == '__main__':
+    unittest.main()
\ No newline at end of file
-- 
GitLab