def test_layer(self, api_client): to_return = {'example': 1} api_client.ApiClient.return_value.get.return_value = to_return reader = ApiReader() self.assertEqual( to_return, reader.layer("layer-here", "label-here", "date-here")) get = api_client.ApiClient.return_value.get self.assertEqual(1, get.call_count) param = api_client.ApiClient.return_value.get.call_args[0][0] self.assertTrue('layer-here' in param) self.assertTrue('label' in param) # grabs the root self.assertTrue('date-here' in param) # Cache self.assertEqual( to_return, reader.layer("layer-here", "label-abc", "date-here")) self.assertEqual(1, get.call_count) self.assertEqual( to_return, reader.layer("layer-here", "lablab", "date-here")) self.assertEqual(2, get.call_count) param = get.call_args[0][0] self.assertTrue('layer-here' in param) self.assertTrue('lablab' in param) self.assertTrue('date-here' in param)
def test_layer(self, fetch): to_return = {'example': 1} fetch.return_value = to_return reader = ApiReader() self.assertEqual( to_return, reader.layer("layer-here", "cfr", "label-here", "version-here")) self.assertEqual(1, fetch.call_count) param = fetch.call_args[0][0] self.assertIn('layer-here/cfr/version-here/label', param) self.assertNotIn('label-here', param) # only grabs the root, "label" # Cache self.assertEqual( to_return, reader.layer("layer-here", "cfr", "label-abc", "version-here")) self.assertEqual(1, fetch.call_count) self.assertEqual( to_return, reader.layer("layer-here", "cfr", "lablab", "version-here")) self.assertEqual(2, fetch.call_count) param = fetch.call_args[0][0] self.assertIn('layer-here/cfr/version-here/lablab', param) self.assertEqual( to_return, reader.layer("layer-here", "preamble", "lablab")) self.assertEqual(3, fetch.call_count) param = fetch.call_args[0][0] self.assertIn('layer-here/preamble/lablab', param)
def test_layer(self, api_client): to_return = {'example': 1} api_client.ApiClient.return_value.get.return_value = to_return reader = ApiReader() self.assertEqual( to_return, reader.layer("layer-here", "cfr", "label-here", "version-here")) get = api_client.ApiClient.return_value.get self.assertEqual(1, get.call_count) param = api_client.ApiClient.return_value.get.call_args[0][0] self.assertIn('layer-here/cfr/version-here/label', param) self.assertNotIn('label-here', param) # only grabs the root, "label" # Cache self.assertEqual( to_return, reader.layer("layer-here", "cfr", "label-abc", "version-here")) self.assertEqual(1, get.call_count) self.assertEqual( to_return, reader.layer("layer-here", "cfr", "lablab", "version-here")) self.assertEqual(2, get.call_count) param = get.call_args[0][0] self.assertIn('layer-here/cfr/version-here/lablab', param) self.assertEqual( to_return, reader.layer("layer-here", "preamble", "lablab")) self.assertEqual(3, get.call_count) param = get.call_args[0][0] self.assertIn('layer-here/preamble/lablab', param)
def test_layer(self, api_client): to_return = {'example': 1} api_client.ApiClient.return_value.get.return_value = to_return reader = ApiReader() self.assertEqual(to_return, reader.layer("layer-here", "label-here", "date-here")) get = api_client.ApiClient.return_value.get self.assertEqual(1, get.call_count) param = api_client.ApiClient.return_value.get.call_args[0][0] self.assertTrue('layer-here' in param) self.assertTrue('label' in param) # grabs the root self.assertTrue('date-here' in param) # Cache self.assertEqual(to_return, reader.layer("layer-here", "label-abc", "date-here")) self.assertEqual(1, get.call_count) self.assertEqual(to_return, reader.layer("layer-here", "lablab", "date-here")) self.assertEqual(2, get.call_count) param = get.call_args[0][0] self.assertTrue('layer-here' in param) self.assertTrue('lablab' in param) self.assertTrue('date-here' in param)
def fetch_toc(reg_part, version, flatten=False): """Fetch the toc, transform it into a list usable by navigation, etc.""" api = ApiReader() toc = api.layer('toc', reg_part, version) toc_list = [] if reg_part in toc: for data in toc[reg_part]: if 'Subpart' in data['index']: toc_list.append(toc_subpart(data, toc_list, toc)) elif 'Subjgrp' in data['index']: toc_list.append(toc_subjgrp(data, toc_list, toc)) elif 'Interp' in data['index']: toc_list.append(toc_interp(data, toc_list, toc)) else: toc_list.append(toc_sect_appendix(data, toc_list)) if flatten: flattened = [] for el in toc_list: if 'sub_toc' in el: flattened.extend(el['sub_toc']) else: flattened.append(el) return flattened return toc_list
def fetch_toc(reg_part, version, flatten=False): """Fetch the toc, transform it into a list usable by navigation, etc.""" api = ApiReader() toc = api.layer('toc', reg_part, version) toc_list = [] if reg_part in toc: for data in toc[reg_part]: if 'Subpart' in data['index']: toc_list.append(toc_subpart(data, toc_list, toc)) elif 'Subjgrp' in data['index']: toc_list.append(toc_subjgrp(data, toc_list, toc)) elif 'Interp' in data['index']: toc_list.append(toc_interp(data, toc_list, toc)) else: toc_list.append(toc_sect_appendix(data, toc_list)) if flatten: flattened = [] for el in toc_list: if 'sub_toc' in el: flattened.extend(el['sub_toc']) else: flattened.append(el) return flattened return toc_list