def test_get_search_result(self): searchOptions = createSearchOptions('Users', 'external_id', '74341f74-9c79-49d5-9611-87ef9b6eb75f') mockDb = TinyDbDAO() mockDb.search = MagicMock(return_value=[(0, "fake row", 0.0)]) search = Search(mockDb) searchResult = search.getSearchResult(searchOptions) assert searchResult == [(0, "fake row", 0.0)]
def test_list_search_fields(self): db = TinyDbDAO() db.organizationTable.all = MagicMock(return_value=[{"hi": "there"}]) db.userTable.all = MagicMock(return_value=[{"hi": "there"}]) db.ticketTable.all = MagicMock(return_value=[{"hi": "there"}]) search = Search(db) fieldDict = search.listSearchFields() assert fieldDict["organization"] == ["hi"]
class AlgorithmThread(QThread): signal = pyqtSignal('PyQt_PyObject') def __init__(self, puzzle): QThread.__init__(self) self.algorithm = "BFS" self.search = Search() self.puzzle = puzzle def set_algorithm_type(self, new_algorithm): self.algorithm = new_algorithm def set_puzzle(self, puzzle): self.puzzle = puzzle def run(self): if self.algorithm == "BFS": result = self.search.bfs(self.puzzle) self.signal.emit(result) elif self.algorithm == "DFS": result = self.search.dfs(self.puzzle) self.signal.emit(result) elif self.algorithm == "UCS": result = self.search.ucs(self.puzzle) self.signal.emit(result) elif self.algorithm == "A*": result = self.search.a_star(self.puzzle) self.signal.emit(result) elif self.algorithm == "IDS": result = self.search.ids(self.puzzle) self.signal.emit(result) elif self.algorithm == "IDA*": result = self.search.ida_star(self.puzzle) self.signal.emit(result)
def __init__(self, puzzle): QThread.__init__(self) self.algorithm = "BFS" self.search = Search() self.puzzle = puzzle
def test_get_deduplicated_list_from_contents_holds_correct_key(self): search = Search() contents = [{"hi": "there"}, {"hi": "back"}] dedupedList = search.getDeduplicatedListFromContents(contents) assert "hi" in dedupedList
def test_get_deduplicated_list_from_contents_dedupes(self): search = Search() contents = [{"hi": "there"}, {"hi": "back"}] dedupedList = search.getDeduplicatedListFromContents(contents) assert len(dedupedList) == 1
def test_parse_search_inputs_throws_exception_if_input_cannot_be_cast_to_bool(self): searchOptions = createSearchOptions('Users', 'active', 'abc') search = Search() with self.assertRaises(Exception): search.parseSearchInputs(searchOptions)
def test_parse_search_inputs_throws_exception_if_input_cannot_be_cast_to_int(self): searchOptions = createSearchOptions('Organizations', '_id', 'abc') search = Search() with self.assertRaises(Exception): search.parseSearchInputs(searchOptions)
def test_parse_search_inputs_converts_to_int_for_organization(self): searchOptions = createSearchOptions('Organizations', '_id', '1') search = Search() parsedSearchOptions = search.parseSearchInputs(searchOptions) assert isinstance(parsedSearchOptions['searchValue'], int)
def test_parse_search_inputs_converts_to_int_for_tickets(self): searchOptions = createSearchOptions('Tickets', 'assignee_id', '1') search = Search() parsedSearchOptions = search.parseSearchInputs(searchOptions) assert isinstance(parsedSearchOptions['searchValue'], int)
def test_parse_search_inputs_converts_to_bool_for_users(self): searchOptions = createSearchOptions('Users', 'active', 'true') search = Search() parsedSearchOptions = search.parseSearchInputs(searchOptions) assert isinstance(parsedSearchOptions['searchValue'], bool)
import click import sys from pprint import pprint from model.Search import Search optionDict = {} search = Search() def runMenu(): print("Welcome to Zendesk Search") continueOption = input( "Type 'quit' to exit at any time, Press 'Enter' to continue: ") if continueOption.lower() == "quit": exitProgram() print("Select search options:") print("Press 1 to search Zendesk") print("Press 2 to view a list of searchable fields") print("Type 'quit' to exit") mainMenu() @click.command() @click.option('--menu_option', prompt='Please enter your search option', default="1", help='menu_option.') def mainMenu(menu_option):