def validate_HTTP_code(self, http_code): """ validate http status code :param resp: response from server :param expected_status_code: Http code expected """ http_utils.assert_status_code(http_utils.status_codes[http_code], self.resp, "Wrong status code received: %s. Expected: %s. \n\nBody content: %s" % (str(self.resp.status_code), str(http_utils.status_codes[http_code]), str(self.resp.text)))
def validate_HTTP_code(self, http_code): """ validate http status code :param resp: response from server :param expected_status_code: Http code expected """ http_utils.assert_status_code( http_utils.status_codes[http_code], self.resp, "Wrong status code received: %s. Expected: %s. \n\nBody content: %s" % (str(self.resp.status_code), str(http_utils.status_codes[http_code]), str(self.resp.text)))
def __create_datastore_in_resource (self, resource_id, fields): """ create a datastore in a resource :param resource_id: resource id :param fields: field in datastore """ payload = general_utils.convert_dict_to_str({RESOURCE_ID: resource_id, FIELD:fields, FORCE: TRUE}, general_utils.JSON) resp = http_utils.request(http_utils.POST, url=self.__create_url(DATASTORE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - Creating datastore in resource id: %s" % (resource_id))
def create_organization (self, name): """ Create a new organization if it does not exist :param name: organization name """ self.organization = name if not(self.verify_if_organization_exist(name)): payload = general_utils.convert_dict_to_str({NAME: name}, general_utils.JSON) resp= http_utils.request(http_utils.POST, url=self.__create_url(ORGANIZATION_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - creating organization: %s ..." % (name)) return True return False
def verify_if_organization_exist(self, name): """ Verify if the organization exist :param name: organization name :return: return True if de organization does not exist, False if it does exist """ resp = http_utils.request(http_utils.GET, url=self.__create_url(ORGANIZATION_LIST, name), headers=self.__create_headers()) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - list of the names of the site's organizations...") body_dict = general_utils.convert_str_to_dict(resp.text, general_utils.JSON) for i in range(len(body_dict[RESULT])): if body_dict[RESULT][i] == name: return True return False
def create_resource(self, name, dataset_name, fields=[]): self.resource = name if not(self.verify_if_resource_exist(name, dataset_name)): payload = general_utils.convert_dict_to_str({NAME: self.resource, URL: URL_EXAMPLE, PACKAGE_ID: self.dataset_id}, general_utils.JSON) resp= http_utils.request(http_utils.POST, url=self.__create_url(RESOURCE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - creating resource: %s ..." % (name)) bodyDict= general_utils.convert_str_to_dict(resp.text, general_utils.JSON) self.resource_id = bodyDict[RESULT][ID] self.__create_datastore_in_resource (self.resource_id, fields) return self.resource_id return False
def datastore_search_last_sql (self, rows, resource_name, dataset_name): """ get last record in a resource :param name: resource name :param dataset_name: dataset name :return: record dict """ resource_id = self.verify_if_resource_exist(resource_name, dataset_name) if resource_id != False: sql = 'SELECT * from "' + resource_id + '" ORDER BY 1 DESC LIMIT '+str (rows) resp= http_utils.request(http_utils.POST, url=self.__create_url(DATASTORE_SEARCH_SQL, sql), headers=self.__create_headers(), data=EMPTY) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - creating resource: %s ..." % (resource_name)) return resp return resource_id
def create_dataset (self, name): """ Create a new dataset if it does not exist :param name: dataset name """ self.dataset = name if not(self.verify_if_dataset_exist( name)): payload = general_utils.convert_dict_to_str({NAME: self.dataset, OWNER_ORG: self.organization}, general_utils.JSON) resp= http_utils.request(http_utils.POST, url=self.__create_url(PACKAGE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code(http_utils.status_codes[http_utils.OK], resp, "ERROR - creating dataset: %s ..." % (name)) bodyDict= general_utils.convert_str_to_dict(resp.text, general_utils.JSON) self.dataset_id = bodyDict[RESULT][ID] return bodyDict[RESULT][ID] return False
def verify_if_organization_exist(self, name): """ Verify if the organization exist :param name: organization name :return: return True if de organization does not exist, False if it does exist """ resp = http_utils.request(http_utils.GET, url=self.__create_url( ORGANIZATION_LIST, name), headers=self.__create_headers()) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - list of the names of the site's organizations...") body_dict = general_utils.convert_str_to_dict(resp.text, general_utils.JSON) for i in range(len(body_dict[RESULT])): if body_dict[RESULT][i] == name: return True return False
def create_organization(self, name): """ Create a new organization if it does not exist :param name: organization name """ self.organization = name if not (self.verify_if_organization_exist(name)): payload = general_utils.convert_dict_to_str({NAME: name}, general_utils.JSON) resp = http_utils.request( http_utils.POST, url=self.__create_url(ORGANIZATION_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - creating organization: %s ..." % (name)) return True return False
def __create_datastore_in_resource(self, resource_id, fields): """ create a datastore in a resource :param resource_id: resource id :param fields: field in datastore """ payload = general_utils.convert_dict_to_str( { RESOURCE_ID: resource_id, FIELD: fields, FORCE: TRUE }, general_utils.JSON) resp = http_utils.request(http_utils.POST, url=self.__create_url(DATASTORE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - Creating datastore in resource id: %s" % (resource_id))
def datastore_search_last_sql(self, rows, resource_name, dataset_name): """ get last record in a resource :param name: resource name :param dataset_name: dataset name :return: record dict """ resource_id = self.verify_if_resource_exist(resource_name, dataset_name) if resource_id != False: sql = 'SELECT * from "' + resource_id + '" ORDER BY 1 DESC LIMIT ' + str( rows) resp = http_utils.request(http_utils.POST, url=self.__create_url( DATASTORE_SEARCH_SQL, sql), headers=self.__create_headers(), data=EMPTY) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - creating resource: %s ..." % (resource_name)) return resp return resource_id
def create_resource(self, name, dataset_name, fields=[]): self.resource = name if not (self.verify_if_resource_exist(name, dataset_name)): payload = general_utils.convert_dict_to_str( { NAME: self.resource, URL: URL_EXAMPLE, PACKAGE_ID: self.dataset_id }, general_utils.JSON) resp = http_utils.request(http_utils.POST, url=self.__create_url(RESOURCE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - creating resource: %s ..." % (name)) bodyDict = general_utils.convert_str_to_dict( resp.text, general_utils.JSON) self.resource_id = bodyDict[RESULT][ID] self.__create_datastore_in_resource(self.resource_id, fields) return self.resource_id return False
def create_dataset(self, name): """ Create a new dataset if it does not exist :param name: dataset name """ self.dataset = name if not (self.verify_if_dataset_exist(name)): payload = general_utils.convert_dict_to_str( { NAME: self.dataset, OWNER_ORG: self.organization }, general_utils.JSON) resp = http_utils.request(http_utils.POST, url=self.__create_url(PACKAGE_CREATE), headers=self.__create_headers(), data=payload) http_utils.assert_status_code( http_utils.status_codes[http_utils.OK], resp, "ERROR - creating dataset: %s ..." % (name)) bodyDict = general_utils.convert_str_to_dict( resp.text, general_utils.JSON) self.dataset_id = bodyDict[RESULT][ID] return bodyDict[RESULT][ID] return False