-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_api.py
More file actions
26 lines (20 loc) · 7.78 KB
/
Copy pathtest_api.py
File metadata and controls
26 lines (20 loc) · 7.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import unittest
import api as app
def read_file(filename):
with open(filename, "r") as my_data:
data = my_data.read()
return data
def convert_data(json_data):
json_data = eval(json_data)
return json_data
class app_api(unittest.TestCase):
def test_users(self):
data_file = read_file("data.json")
data = convert_data(data_file)
self.assertEqual(app.find_all(data),[{'id': 1, 'first_name': 'Chane', 'last_name': 'Kesley', 'email': 'ckesley0@upenn.edu', 'gender': 'Male', 'ip_address': '217.198.143.159'}, {'id': 2, 'first_name': 'Lebbie', 'last_name': 'Jouen', 'email': 'ljouen1@i2i.jp', 'gender': 'Female', 'ip_address': '179.201.45.22'}, {'id': 3, 'first_name': 'Kimbell', 'last_name': 'Tysall', 'email': 'ktysall2@naver.com', 'gender': 'Bigender', 'ip_address': '80.22.25.117'}, {'id': 4, 'first_name': 'Joletta', 'last_name': 'Novelli', 'email': 'jnovelli3@youtube.com', 'gender': 'Female', 'ip_address': '71.123.39.55'}, {'id': 5, 'first_name': 'Christye', 'last_name': 'Suttell', 'email': 'csuttell4@weibo.com', 'gender': 'Genderqueer', 'ip_address': '206.238.233.45'}, {'id': 6, 'first_name': 'Stanley', 'last_name': 'Cornick', 'email': 'scornick5@earthlink.net', 'gender': 'Male', 'ip_address': '0.114.28.3'}, {'id': 7, 'first_name': 'Selma', 'last_name': 'Atyea', 'email': 'satyea6@wisc.edu', 'gender': 'Female', 'ip_address': '26.130.232.154'}, {'id': 8, 'first_name': 'Jamill', 'last_name': 'Sillitoe', 'email': 'jsillitoe7@weibo.com', 'gender': 'Male', 'ip_address': '157.80.20.28'}, {'id': 9, 'first_name': 'Violetta', 'last_name': 'Harly', 'email': 'vharly8@about.me', 'gender': 'Female', 'ip_address': '141.51.41.202'}, {'id': 10, 'first_name': 'Lucio', 'last_name': "O'Cuddie", 'email': 'locuddie9@gizmodo.com', 'gender': 'Male', 'ip_address': '98.194.106.99'}, {'id': 11, 'first_name': 'Kaja', 'last_name': 'Kell', 'email': 'kkella@nbcnews.com', 'gender': 'Genderfluid', 'ip_address': '215.181.146.111'}, {'id': 12, 'first_name': 'Jethro', 'last_name': 'Fawdery', 'email': 'jfawderyb@vistaprint.com', 'gender': 'Male', 'ip_address': '189.138.59.95'}, {'id': 13, 'first_name': 'Marleah', 'last_name': 'Pond-Jones', 'email': 'mpondjonesc@msu.edu', 'gender': 'Female', 'ip_address': '95.223.91.154'}, {'id': 14, 'first_name': 'Ethe', 'last_name': 'Millsom', 'email': 'emillsomd@nba.com', 'gender': 'Male', 'ip_address': '245.132.156.170'}, {'id': 15, 'first_name': 'Trey', 'last_name': 'Caseley', 'email': 'tcaseleye@com.com', 'gender': 'Male', 'ip_address': '102.189.64.20'}, {'id': 16, 'first_name': 'Conny', 'last_name': 'Craigg', 'email': 'ccraiggf@last.fm', 'gender': 'Male', 'ip_address': '178.23.159.121'}, {'id': 17, 'first_name': 'Ethelbert', 'last_name': 'Bosworth', 'email': 'ebosworthg@guardian.co.uk', 'gender': 'Male', 'ip_address': '78.37.157.38'}, {'id': 18, 'first_name': 'Gennie', 'last_name': 'McChesney', 'email': 'gmcchesneyh@ameblo.jp', 'gender': 'Genderqueer', 'ip_address': '230.195.55.51'}, {'id': 19, 'first_name': 'Bertrando', 'last_name': 'Iannello', 'email': 'biannelloi@wp.com', 'gender': 'Male', 'ip_address': '128.215.9.186'}, {'id': 20, 'first_name': 'Abigail', 'last_name': 'Piotrowski', 'email': 'apiotrowskij@china.com.cn', 'gender': 'Female', 'ip_address': '47.206.3.143'}, {'id': 21, 'first_name': 'Galvan', 'last_name': 'Makiver', 'email': 'gmakiverk@paginegialle.it', 'gender': 'Male', 'ip_address': '192.154.104.249'}, {'id': 22, 'first_name': 'Adah', 'last_name': 'Skerman', 'email': 'askermanl@dropbox.com', 'gender': 'Female', 'ip_address': '148.74.105.28'}, {'id': 23, 'first_name': 'Ignacius', 'last_name': 'Gregori', 'email': 'igregorim@nytimes.com', 'gender': 'Male', 'ip_address': '211.212.181.121'}, {'id': 24, 'first_name': 'Nessie', 'last_name': 'Milne', 'email': 'nmilnen@youku.com', 'gender': 'Female', 'ip_address': '221.233.51.147'}, {'id': 25, 'first_name': 'Teddi', 'last_name': 'Dumingos', 'email': 'tdumingoso@soup.io', 'gender': 'Genderfluid', 'ip_address': '144.224.184.73'}, {'id': 26, 'first_name': 'Shermie', 'last_name': 'Bartle', 'email': 'sbartlep@angelfire.com', 'gender': 'Male', 'ip_address': '153.127.208.186'}, {'id': 27, 'first_name': 'Grant', 'last_name': 'Duck', 'email': 'gduckq@cargocollective.com', 'gender': 'Male', 'ip_address': '172.157.240.128'}, {'id': 28, 'first_name': 'Moses', 'last_name': "O'Garmen", 'email': 'mogarmenr@unicef.org', 'gender': 'Male', 'ip_address': '207.199.78.119'}, {'id': 29, 'first_name': 'Burgess', 'last_name': 'Chasmoor', 'email': 'bchasmoors@slate.com', 'gender': 'Male', 'ip_address': '30.5.166.133'}, {'id': 30, 'first_name': 'Buck', 'last_name': 'Smithin', 'email': 'bsmithint@nasa.gov', 'gender': 'Male', 'ip_address': '64.56.197.41'}, {'id': 31, 'first_name': 'Nadia', 'last_name': 'Edmonstone', 'email': 'nedmonstoneu@behance.net', 'gender': 'Female', 'ip_address': '231.123.117.116'}, {'id': 32, 'first_name': 'Nilson', 'last_name': 'Pridham', 'email': 'npridhamv@earthlink.net', 'gender': 'Male', 'ip_address': '177.154.175.42'}, {'id': 33, 'first_name': 'Gasparo', 'last_name': 'Creboe', 'email': 'gcreboew@globo.com', 'gender': 'Male', 'ip_address': '81.72.49.97'}, {'id': 34, 'first_name': 'Jobey', 'last_name': 'Davidai', 'email': 'jdavidaix@hugedomains.com', 'gender': 'Female', 'ip_address': '156.230.142.243'}, {'id': 35, 'first_name': 'Carlee', 'last_name': 'Peschet', 'email': 'cpeschety@va.gov', 'gender': 'Female', 'ip_address': '45.167.173.147'}, {'id': 36, 'first_name': 'Tessy', 'last_name': 'Pomeroy', 'email': 'tpomeroyz@hostgator.com', 'gender': 'Female', 'ip_address': '100.76.175.65'}, {'id': 37, 'first_name': 'Ailina', 'last_name': 'Bartke', 'email': 'abartke10@elegantthemes.com', 'gender': 'Female', 'ip_address': '114.199.102.180'}, {'id': 38, 'first_name': 'Andy', 'last_name': 'Warner', 'email': 'awarner11@weibo.com', 'gender': 'Agender', 'ip_address': '98.232.60.244'}, {'id': 39, 'first_name': 'Lanni', 'last_name': 'Baly', 'email': 'lbaly12@xrea.com', 'gender': 'Female', 'ip_address': '164.223.241.251'}, {'id': 40, 'first_name': 'Aldus', 'last_name': 'Link', 'email': 'alink13@cam.ac.uk', 'gender': 'Male', 'ip_address': '5.176.224.48'}, {'id': 41, 'first_name': 'Chrisy', 'last_name': 'Saffill', 'email': 'csaffill14@gravatar.com', 'gender': 'Male', 'ip_address': '158.173.244.30'}, {'id': 42, 'first_name': 'Edwin', 'last_name': 'Haythorn', 'email': 'ehaythorn15@free.fr', 'gender': 'Male', 'ip_address': '207.115.42.153'}, {'id': 43, 'first_name': 'Hervey', 'last_name': 'Sansum', 'email': 'hsansum16@bluehost.com', 'gender': 'Male', 'ip_address': '29.226.147.163'}, {'id': 44, 'first_name': 'Karna', 'last_name': 'Lewty', 'email': 'klewty17@hugedomains.com', 'gender': 'Female', 'ip_address': '214.198.174.86'}, {'id': 45, 'first_name': 'Aleksandr', 'last_name': 'Shipley', 'email': 'ashipley18@about.com', 'gender': 'Male', 'ip_address': '235.68.1.28'}, {'id': 46, 'first_name': 'Hastings', 'last_name': 'Melmore', 'email': 'hmelmore19@parallels.com', 'gender': 'Male', 'ip_address': '63.93.249.18'}, {'id': 47, 'first_name': 'Fara', 'last_name': 'Darter', 'email': 'fdarter1a@ucoz.ru', 'gender': 'Female', 'ip_address': '199.201.232.190'}, {'id': 48, 'first_name': 'Emmalee', 'last_name': 'Blackaller', 'email': 'eblackaller1b@dion.ne.jp', 'gender': 'Female', 'ip_address': '88.50.248.245'}, {'id': 49, 'first_name': 'Wilmar', 'last_name': 'Herreran', 'email': 'wherreran1c@tripadvisor.com', 'gender': 'Male', 'ip_address': '93.157.255.61'}, {'id': 50, 'first_name': 'Darius', 'last_name': 'Durrell', 'email': 'ddurrell1d@chicagotribune.com', 'gender': 'Male', 'ip_address': '44.196.17.0'}])
def test_user(self):
data_file = read_file("data.json")
data = convert_data(data_file)
self.assertEqual(app.find_user_by_id(data, 1), {'id': 2, 'first_name': 'Lebbie', 'last_name': 'Jouen', 'email': 'ljouen1@i2i.jp', 'gender': 'Female', 'ip_address': '179.201.45.22'})
if __name__ == "__main__":
unittest.main()