def __init__(self, name, nic):
     self.nic = nic
     self.name = name
     self.dob = Parser(f"{nic}").birth_date
     self.gender = Parser(f"{nic}").gender
     if self.gender == Gender.MALE:
         self.gender = "male"
     else:
         self.gender = "female"
示例#2
0
    def test_id_type(self):
        nics = {
            '952903022V': (0, 'OLD'),
            '199602235437': (1, 'NEW'),
        }

        for key, value in nics.items():
            # Test values.
            self.assertEqual(Parser(key).id_type.value, value[0])
            # Test names.
            self.assertEqual(Parser(key).id_type.name, value[1])
示例#3
0
    def test_gender(self):
        nics = {
            '952903022V': (0, 'MALE'),
            '957903022V': (1, 'FEMALE'),
            '199602235437': (0, 'MALE'),
            '199652235437': (1, 'FEMALE'),
        }

        for key, value in nics.items():
            # Test values.
            self.assertEqual(Parser(key).gender.value, value[0])
            # Test names.
            self.assertEqual(Parser(key).gender.name, value[1])
示例#4
0
    def test_special_letter(self):
        nics = {
            '952903022V': 'V',
            '199602235437': None,
        }

        for key, value in nics.items():
            self.assertEqual(Parser(key).special_letter, value)
示例#5
0
    def test_check_digit(self):
        nics = {
            '952903022V': 2,
            '199602235437': 7,
        }

        for key, value in nics.items():
            self.assertEqual(Parser(key).check_digit, value)
示例#6
0
    def test_serial_number(self):
        nics = {
            '952903022V': 302,
            '199602235437': 3543,
        }

        for key, value in nics.items():
            self.assertEqual(Parser(key).serial_number, value)
示例#7
0
    def test_birth_date(self):
        nics = {
            '952903022V': datetime(1995, 10, 16, 0, 0),
            '199602235437': datetime(1996, 1, 21, 0, 0),
        }

        for key, value in nics.items():
            self.assertEqual(Parser(key).birth_date, value)
示例#8
0
    def test_birth_year(self):
        nics = {
            '952903022V': 1995,
            '199602235437': 1996,
        }

        for key, value in nics.items():
            self.assertEqual(Parser(key).birth_year, value)
示例#9
0
def end_point():
    name = f"{request.args['name']}"
    nic = f"{request.args['nic']}"

    np = Parser(nic)
    dob = np.birth_date.strftime("%m/%d/%Y")
    gender = np.gender

    response = {'name': name, 'nic': nic, 'dob': dob, 'gender': f"{gender}"}

    return f"{response}"
示例#10
0
def hello_world():
    name = f"{request.args['name']}"
    nic = f"{request.args['nic']}"
    nic_pass = Parser(f"{request.args['nic']}")
    bday = nic_pass.birth_date
    gender = nic_pass.gender

    print(f"Name is {name}")
    print(f"NIC is {nic}")

    return f"{name} <br> {nic} <br> {bday} <br> {gender}"
示例#11
0
 def __init__(self, name, nic):
     self.nic = nic
     self.name = name
     self.dob = Parser(f"{nic}").birth_date
     self.gender = Parser(f"{nic}").gender.name.capitalize()
示例#12
0
 def test_is_bad_match(self):
     with self.assertRaises(ValueError):
         Parser('INVALID')