class ClassSearchTest(unittest.TestCase): """Test class search """ def test_Orderby(self): """Test class Orderby """ coluna1 = "coluna1" coluna2 = "coluna2" coluna3 = "coluna3" coluna4 = "coluna4" OrderBy([coluna1, coluna2], [coluna3, coluna4]) def test_Search(self): """Test class Search """ coluna1 = "coluna1" coluna2 = "coluna2" coluna3 = "coluna3" coluna4 = "coluna4" obj_orderby = OrderBy([coluna1, coluna2], [coluna3, coluna4]) select = ["coluna1", "coluna2"] literal = 'select *' limit = 10 offset = 10 self.obj_Search = Search(select, obj_orderby, literal, limit, offset) self.obj_Search._asjson()
def element_exists(self, element, value, orgao=None): """ Return a crime by name """ orderby = OrderBy([element]) if orgao is None: search = Search( limit=1, order_by=orderby, literal="document->>'" + element + "' = '" + value + "'", ) else: search = Search( limit=1, order_by=orderby, literal="document->>'" + element + "' = '" + value + "' and document->>'nome' <> '" + orgao + "'", ) params = {'$$': search._asjson()} url = self.rest_url + '/' + self.lbbase.metadata.name + '/doc' result = requests.get(url=url, params=params) results = result.json() print(results) if results['result_count'] == 0: return False else: return True
def get_collection(self, search_obj=None): """ Retrieves collection of documents according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request(self.httpget, url_path=[self.basename, self.doc_prefix], params={self.search_param: search_obj._asjson()}) return Collection(self.base, **lbutils.json2object(response))
def update_collection(self, search_obj=None, path_list=[]): """ Updates collection of documents according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request(self.httpput, url_path=[self.basename, self.doc_prefix], params={self.search_param: search_obj._asjson(), self.path_param: lbutils.object2json(path_list)}) return response
def get_collection(self, search_obj=None): """ Retrieves collection of "file text" according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request( self.httpget, url_path=[self.basename, self.file_prefix], params={self.search_param: search_obj._asjson()}) return FileCollection(**lbutils.json2object(response))
def get_collection(self, search_obj=None, instance=True): """ Retrieves collection of documents according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request( self.httpget, url_path=[self.basename, self.doc_prefix], params={self.search_param: search_obj._asjson()}) #return Collection(self.base, **lbutils.json2object(response)) #return dict2genericbase(response.json()) return dict2genericbase(lbutils.json2object(response))
def update_collection(self, search_obj=None, path_list=[]): """ Updates collection of documents according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request(self.httpput, url_path=[self.basename, self.doc_prefix], params={ self.search_param: search_obj._asjson(), self.path_param: lbutils.object2json(path_list) }) return response
def get_collection(self, search_obj=None, instance=True, return_as_dict=False): """ Retrieves collection of documents according to search object. @param search_obj: JSON which represents a search object. """ if search_obj is not None: msg = 'search_obj must be a Search object.' assert isinstance(search_obj, Search), msg else: search_obj = Search() response = self.send_request(self.httpget, url_path=[self.basename, self.doc_prefix], params={self.search_param: search_obj._asjson()}) # NOTE: Adicionado pelo Bleno 06/10/2016. Adicionado por Bleno Nascimento # Silva aproximadamente 2 anos atrás removendo a validação no retorno do método # "get_collection". By Alexandre # return Collection(self.base, **lbutils.json2object(response)) # return dict2genericbase(response.json()) if return_as_dict: return dict2genericbase(lbutils.json2object(response)) else: return Collection(self.base, **lbutils.json2object(response))