def test_bossrequest_init_coordinateframe(self): """ Test initialization of requests from the meta data service with a valid collection and experiment and dataset """ # create the request url = '/' + version + '/meta/col1/exp1/channel1/?key=mkey' expected_col = 'col1' expected_exp = 'exp1' expected_channel = 'channel1' expected_coord = 'cf1' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version # Create the request dict request_args = { "user": self.user, "method": request.method, "service": "meta", "version": version, "collection_name": expected_col, "experiment_name": expected_exp, "channel_name": expected_channel, "key": "mkey", } ret = BossRequest(drfrequest, request_args) # Data model objects self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) self.assertEqual(ret.get_channel(), expected_channel) # Check coordinate frame self.assertEqual(ret.get_coordinate_frame(), expected_coord)
def test_request_tile_init_channel(self): """ Test initialization of tile requests for the datamodel with a channel :return: """ url = '/' + version + '/tile/col1/exp1/channel1/xy/512/2/0/0/1' col = 'col1' exp = 'exp1' channel = 'channel1' boss_key = 'col1&exp1&channel1' boss_key_list = 'col1&exp1&channel1&2&0' # Create the request req = HttpRequest() req.META = {'PATH_INFO': url} drfrequest = Request(req) drfrequest.version = version ret = BossRequest(drfrequest) self.assertEqual(ret.get_collection(), col) self.assertEqual(ret.get_experiment(), exp) self.assertEqual(ret.get_channel_layer(), channel) self.assertEqual(ret.get_boss_key(), boss_key) self.assertEqual(ret.get_boss_key_list()[0], boss_key_list)
def test_experiment_init(self): """ Test initialization of requests from the meta data service with valid collection and experiment """ # create the request url = '/' + version + '/meta/col1/exp1/?key=mkey&value=TestValue' expected_col = 'col1' expected_exp = 'exp1' expected_bosskey = 'col1&exp1' expected_key = 'mkey' expected_value = 'TestValue' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version ret = BossRequest(drfrequest) # Datamodel object self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) # Boss key boss_key = ret.get_boss_key() self.assertEqual(boss_key, expected_bosskey) # Key and value key = ret.get_key() self.assertEqual(key, expected_key) value = ret.get_value() self.assertEqual(value, expected_value)
def test_request_ids_service(self): """ Test initialization of cutout requests for the datamodel :return: """ url = '/' + version + '/reserve/col1/exp1/layer1/10' col = 'col1' exp = 'exp1' channel = 'layer1' boss_key = 'col1&exp1&layer1' # Create the request request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = Reserve().initialize_request(request) drfrequest.version = version # Create the request dict request_args = { "service": "reserve", "version": version, "collection_name": col, "experiment_name": exp, "channel_name": channel, } ret = BossRequest(drfrequest, request_args) self.assertEqual(ret.get_collection(), col) self.assertEqual(ret.get_experiment(), exp) self.assertEqual(ret.get_channel(), channel) self.assertEqual(ret.get_boss_key(), boss_key)
def test_bossrequest_init_channel(self): """ Test initialization of requests from the meta data service with a valid collection and experiment and channel """ # create the request url = '/' + version + '/meta/col1/exp1/channel1/?key=mkey&value=TestValue' expected_col = 'col1' expected_exp = 'exp1' expected_channel = 'channel1' expected_bosskey = 'col1&exp1&channel1' expected_key = 'mkey' expected_value = 'TestValue' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version # Create the request dict request_args = { "user": self.user, "method": request.method, "service": "meta", "version": version, "collection_name": expected_col, "experiment_name": expected_exp, "channel_name": expected_channel, "key": "mkey", "value": "TestValue" } # Data model Objects ret = BossRequest(drfrequest, request_args) self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) self.assertEqual(ret.get_channel(), expected_channel) # Boss key boss_key = ret.get_boss_key() self.assertEqual(boss_key, expected_bosskey) # Key and value key = ret.get_key() self.assertEqual(key, expected_key) value = ret.get_value() self.assertEqual(value, expected_value)
def test_bossrequest_init_coordinateframe(self): """ Test initialization of requests from the meta data service with a valid collection and experiment and dataset """ # create the request url = '/' + version + '/meta/col1/exp1/channel1/?key=mkey' expected_col = 'col1' expected_exp = 'exp1' expected_channel = 'channel1' expected_coord = 'cf1' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version ret = BossRequest(drfrequest) # Data model objects self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) self.assertEqual(ret.get_channel_layer(), expected_channel) # Check coordinate frame self.assertEqual(ret.get_coordinate_frame(), expected_coord)
def test_request_tile_init_channel(self): """ Test initialization of tile requests for the datamodel with a channel :return: """ url = '/' + version + '/tile/col1/exp1/channel1/xy/512/2/0/0/1' col = 'col1' exp = 'exp1' channel = 'channel1' boss_key = 'col1&exp1&channel1' # Create the request dict request_args = { "service": "tile", "collection_name": col, "experiment_name": exp, "channel_name": channel, "orientation": "xy", "tile_size": 512, "resolution": 2, "x_args": "0", "y_args": "0", "z_args": "1", "time_args": None } # Create the request request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = Tile().initialize_request(request) drfrequest.version = version ret = BossRequest(drfrequest, request_args) self.assertEqual(ret.get_collection(), col) self.assertEqual(ret.get_experiment(), exp) self.assertEqual(ret.get_channel(), channel) self.assertEqual(ret.get_boss_key(), boss_key)
def test_bossrequest_list_all_keys(self): """ Test initialization of requests from the meta data service with a valid collection and experiment and channel """ # create the request url = '/' + version + '/meta/col1/exp1/channel1/' expected_col = 'col1' expected_exp = 'exp1' expected_channel = 'channel1' expected_coord = 'cf1' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version # Create the request dict request_args = { "user": self.user, "method": request.method, "service": "meta", "version": version, "collection_name": expected_col, "experiment_name": expected_exp, "channel_name": expected_channel, "key": None, "value": None } ret = BossRequest(drfrequest, request_args) # Data model objects self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) self.assertEqual(ret.get_channel(), expected_channel) # Key and value should be empty self.assertEqual(ret.get_key(), None) self.assertEqual(ret.get_value(), None)
def test_bossrequest_list_all_keys(self): """ Test initialization of requests from the meta data service with a valid collection and experiment and channel """ # create the request url = '/' + version + '/meta/col1/exp1/channel1/' expected_col = 'col1' expected_exp = 'exp1' expected_channel = 'channel1' expected_coord = 'cf1' request = self.rf.get(url) force_authenticate(request, user=self.user) drfrequest = BossMeta().initialize_request(request) drfrequest.version = version ret = BossRequest(drfrequest) # Data model objects self.assertEqual(ret.get_collection(), expected_col) self.assertEqual(ret.get_experiment(), expected_exp) self.assertEqual(ret.get_channel_layer(), expected_channel) # Key and value should be empty self.assertEqual(ret.get_key(), None) self.assertEqual(ret.get_value(), None)