def test_searchBytickets_wrong_column(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'wrong column', '34') self.assertIsNotNone(conn) self.assertEqual(len(result), 0) conn.close()
def test_searchByTickets_empty_description(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'description') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '4cce7415-ef12-42b6-b7b5-fb00e24f9cc1') self.assertEqual(result[0]['user_name'], 'Josefa Mcfadden') self.assertEqual(result[0]['organization_name'], 'Xylar') conn.close()
def test_searchByTickets_assignee_id(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'assignee_id', '24') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') conn.close()
def test_searchByTickets_subject(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets( conn, 'subject', 'A Catastrophe in Micronesia') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '1a227508-9f39-427c-8f57-1b72f3fab87c') self.assertEqual(result[0]['subject'], 'A Catastrophe in Micronesia') self.assertEqual(result[0]['user_name'], 'Prince Hinton') self.assertEqual(result[0]['organization_name'], 'Quilk') conn.close()
def test_searchByTickets_tags(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'tags', [ "Ohio", "Pennsylvania", "American Samoa", "Northern Mariana Islands" ]) self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') conn.close()
def test_searchByTickets_via(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'via', 'web') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') self.assertEqual(result[-1]['_id'], '59d803f6-a9cd-448c-a6bd-91ce9f044305') self.assertEqual(result[-1]['user_name'], 'Key Mendez') self.assertEqual(result[-1]['organization_name'], 'Comtext') conn.close()
def test_searchByTickets_has_incidents(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'has_incidents', False) self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') self.assertEqual(result[-1]['_id'], '50f3fdbd-f8a6-481d-9bf7-572972856628') self.assertEqual(result[-1]['user_name'], 'Geneva Poole') self.assertEqual(result[-1]['organization_name'], 'Strezzö') conn.close()
def test_searchByTickets_priority(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets(conn, 'priority', 'high') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') self.assertEqual(result[-1]['_id'], '50dfc8bc-31de-411e-92bf-a6d6b9dfa490') self.assertEqual(result[-1]['user_name'], 'Charlene Coleman') self.assertEqual(result[-1]['organization_name'], 'Plasmos') conn.close()
def test_searchByTickets_description(self): conn = database.create_data_base( ["users.json", "organizations.json", "tickets.json"]) result = search_engine.search_by_tickets( conn, 'description', 'Nostrud ad sit velit cupidatat laboris ipsum nisi amet laboris ex ' 'exercitation amet et proident. Ipsum fugiat aute dolore tempor ' 'nostrud velit ipsum.') self.assertIsNotNone(conn) self.assertEqual(result[0]['_id'], '436bf9b0-1147-4c0a-8439-6f79833bff5b') self.assertEqual(result[0]['user_name'], 'Elma Castro') self.assertEqual(result[0]['organization_name'], 'Zentry') conn.close()
def run_application(): # Messages welcome = '\n\nWelcome to Zendesk Search' information_text_1 = 'Type "quit" to exit at any time, Press "Enter" to continue\n' information_text_2 = '\t\tSelect search options:\n\t\t* Press 1 to search\n\t\t* Press 2 to view a list of ' \ 'searchable field\n\t\t* Type "quit" to exit\n ' information_text_3 = '\t\tSelect table:\n\t\t* Select 1 users\n\t\t* Select 2 organizations\n\t\t* Select 3 ' \ 'tickets\n ' # Data base initialization json_files = ["users.json", "organizations.json", "tickets.json"] connection = create_data_base(json_files) # Start our application print(f'{welcome}') command = input(information_text_1) # Exit any time while not command == 'quit': # Client press "Enter" if command == '': # Exit any time while not command == 'quit': # Display options command = input(information_text_2) # Selected Search option if command == '1': # Exit any time while not command == 'quit': # Display table options command = input(information_text_3) # Selected users table if command == '1': # Enter search column search_attr = input('Enter search term\n') # Enter search value search_value = input('Enter search value\n') # Searching search_by_user(connection, search_attr, search_value) # Selected organizations table elif command == '2': # Enter search column search_attr = input('Enter search term\n') # Enter search value search_value = input('Enter search value\n') # Searching search_by_organization(connection, search_attr, search_value) # Selected tickets table elif command == '3': # Enter search column search_attr = input('Enter search term\n') # Enter search value search_value = input('Enter search value\n') # Searching search_by_tickets(connection, search_attr, search_value) # Selected Searchable field list option elif command == '2': searchable_fields(connection) else: command = input(information_text_1) # Close connection and free up the memory connection.close() print('Good Bye')