Esempio n. 1
0
 def test_get_filled_base(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     ret = do_get('{0}/{1}'.format(self.url, self.service))
     self.assertEqual(ret.json().sort(key=lambda item: item['id']),
                      CELLS.sort(key=lambda item: item['id']))
     self.assertEqual(ret.status_code, 200)
Esempio n. 2
0
 def test_get_grids(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     good_responses = copy.deepcopy(GRIDS)
     for good_response in good_responses:
         ret = do_get('{0}/{1}/{2}'.format(self.url, self.service, good_response['id']))
         self.assertEqual(ret.json(), good_response)
         self.assertEqual(ret.status_code, 200)
Esempio n. 3
0
 def test_get_empty_base(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     do_delete('{0}/{1}'.format(self.url, self.service))
     ret = do_get('{0}/{1}'.format(self.url, self.service))
     self.assertEqual(ret.json(), [])
     self.assertEqual(ret.status_code, 200)
Esempio n. 4
0
 def test_delete_for_grid_not_found(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     for i in range(10):
         ret = do_delete('{0}/{1}/{2}'.format(self.url, self.service,
                                              str(uuid.uuid4())))
         self.assertEqual(ret.json(), 'Not found')
         self.assertEqual(ret.status_code, 404)
Esempio n. 5
0
 def test_get_empty_base_for_grid(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     do_delete('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         ret = do_get('{0}/{1}/{2}'.format(self.url, self.service,
                                           grid['id']))
         self.assertEqual(ret.json(), [])
         self.assertEqual(ret.status_code, 200)
Esempio n. 6
0
 def test_post_duplicate_by_name(self):
     do_init_grids('{0}/{1}'.format(self.url, self.service))
     good_responses = copy.deepcopy(GRIDS)
     for good_response in good_responses:
         good_response['status'] = 'Grid with this name already in index'
     ret = do_post('{0}/{1}'.format(self.url, self.service), GRIDS)
     self.assertEqual(ret.json().sort(key=lambda item: item['name']),
                      good_responses.sort(key=lambda item: item['name']))
     self.assertEqual(ret.status_code, 200)
Esempio n. 7
0
 def test_put_updated_grids(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     good_responses = copy.deepcopy(GRIDS)
     for good_response in good_responses:
         good_response['status'] = 'updated'
     for request in GRIDS:
         good_response = do_search('id', request['id'], good_responses)
         ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, request['id']), json.dumps(request))
         self.assertEqual(ret.json(), good_response)
         self.assertEqual(ret.status_code, 200)
Esempio n. 8
0
 def test_delete_grids(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     requests = copy.deepcopy(GRIDS)
     good_responses = copy.deepcopy(requests)
     for good_response in good_responses:
         good_response['status'] = 'deleted'
     for request in requests:
         good_response = do_search('id', request['id'], good_responses)
         ret = do_delete('{0}/{1}/{2}'.format(self.url, self.service, request['id']))
         self.assertEqual(ret.json(), good_response)
         self.assertEqual(ret.status_code, 200)
Esempio n. 9
0
 def test_put_new_grid(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     request = {
         'id': str(uuid.uuid4()),
         'name': 'grid',
         'description': 'one more grid'
     }
     good_response = copy.deepcopy(request)
     good_response['status'] = 'created'
     ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, request['id']), json.dumps(request))
     self.assertEqual(ret.json(), good_response)
     self.assertEqual(ret.status_code, 200)
Esempio n. 10
0
 def test_post_duplicate_by_id(self):
     do_init_grids('{0}/{1}'.format(self.url, self.service))
     requests = copy.deepcopy(GRIDS)
     for request in requests:
         request['name'] = ''.join(choice(ascii_letters) for i in range(12))
     good_responses = copy.deepcopy(requests)
     for good_response in good_responses:
         good_response['status'] = 'Grid with this id already in index'
     ret = do_post('{0}/{1}'.format(self.url, self.service), requests)
     self.assertEqual(ret.json().sort(key=lambda item: item['name']),
                      good_responses.sort(key=lambda item: item['name']))
     self.assertEqual(ret.status_code, 200)
Esempio n. 11
0
 def test_get_filled_base_for_grid(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         ret = do_get('{0}/{1}/{2}'.format(self.url, self.service,
                                           grid['id']))
         good_response = []
         for cell in CELLS:
             if cell['grid_id'] == grid['id']:
                 good_response.append(cell)
         self.assertEqual(ret.json().sort(key=lambda item: item['id']),
                          good_response.sort(key=lambda item: item['id']))
         self.assertEqual(ret.status_code, 200)
Esempio n. 12
0
 def test_put_grid_with_new_id(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     requests = copy.deepcopy(GRIDS)
     for request in requests:
         request['id'] = str(uuid.uuid4())
     good_responses = copy.deepcopy(requests)
     for good_response in good_responses:
         good_response['status'] = 'the parameters id can not be changed'
     for request in requests:
         good_response = do_search('id', request['id'], good_responses)
         ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, request['id']), json.dumps(request))
         self.assertEqual(ret.json(), good_response)
         self.assertEqual(ret.status_code, 400)
Esempio n. 13
0
 def test_put_grid_without_id_in_body(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     requests = copy.deepcopy(GRIDS)
     for request in requests:
         request.pop('id')
     good_responses = copy.deepcopy(GRIDS)
     for good_response in good_responses:
         good_response['status'] = 'updated'
     for grid in GRIDS:
         request = do_search('name', grid['name'], requests)
         good_response = do_search('name', grid['name'], good_responses)
         ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, grid['id']), json.dumps(request))
         self.assertEqual(ret.json(), good_response)
         self.assertEqual(ret.status_code, 200)
Esempio n. 14
0
 def test_post_cells_grid_not_found(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     do_delete('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         request = []
         for cell in CELLS:
             if cell['grid_id'] == grid['id']:
                 request.append(cell)
         ret = do_post(
             "{0}/{1}/{2}".format(self.url, self.service,
                                  str(uuid.uuid4())), request)
         self.assertEqual(ret.json(), 'Not found')
         self.assertEqual(ret.status_code, 404)
Esempio n. 15
0
 def test_delete_for_grid(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         good_responses = []
         for cell in CELLS:
             if cell['grid_id'] == grid['id']:
                 good_responses.append(cell)
         for good_response in good_responses:
             good_response['status'] = 'deleted'
         ret = do_delete("{0}/{1}/{2}".format(self.url, self.service,
                                              grid['id']))
         self.assertEqual(ret.json().sort(key=lambda item: item['id']),
                          good_responses.sort(key=lambda item: item['id']))
         self.assertEqual(ret.status_code, 200)
Esempio n. 16
0
 def test_post_cells_duplicate_by_id(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         request = []
         for cell in CELLS:
             if cell['grid_id'] == grid['id']:
                 request.append(cell)
         good_responses = copy.deepcopy(request)
         for good_response in good_responses:
             good_response['status'] = 'Cell with this id already in index'
         ret = do_post(
             "{0}/{1}/{2}".format(self.url, self.service, grid['id']),
             request)
         self.assertEqual(ret.json().sort(key=lambda item: item['id']),
                          good_responses.sort(key=lambda item: item['id']))
         self.assertEqual(ret.status_code, 200)
Esempio n. 17
0
 def test_post_cells_grid_not_found(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     do_init_cells('{0}/{1}'.format(self.url, self.service))
     do_delete('{0}/{1}'.format(self.url, self.service))
     for grid in GRIDS:
         request = []
         for cell in CELLS:
             if cell['grid_id'] == grid['id']:
                 cell['grid_id'] = str(uuid.uuid4())
                 request.append(cell)
         good_responses = copy.deepcopy(request)
         for good_response in good_responses:
             good_response['status'] = 'Grid not match'
         ret = do_post(
             "{0}/{1}/{2}".format(self.url, self.service, grid['id']),
             request)
         self.assertEqual(ret.json().sort(key=lambda item: item['id']),
                          good_responses.sort(key=lambda item: item['id']))
         self.assertEqual(ret.status_code, 200)
Esempio n. 18
0
 def test_put_grids_id_not_match(self):
     do_init_grids('{0}/{1}'.format(self.url, str('grids')))
     with self.subTest('Wrong id was set in the request path'):
         good_responses = copy.deepcopy(GRIDS)
         for good_response in good_responses:
             good_response['status'] = "the parameters id and doc['id'] do not match"
         for request in GRIDS:
             good_response = do_search('id', request['id'], good_responses)
             ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, str(uuid.uuid4())), json.dumps(request))
             self.assertEqual(ret.json(), good_response)
             self.assertEqual(ret.status_code, 400)
     with self.subTest('Wrong id was set in the request body'):
         requests = copy.deepcopy(GRIDS)
         for request in requests:
             request['id'] = str(uuid.uuid4())
         good_responses = copy.deepcopy(requests)
         for good_response in good_responses:
             good_response['status'] = "the parameters id and doc['id'] do not match"
         for request in requests:
             grid = do_search('name', request['name'], GRIDS)
             good_response = do_search('id', request['id'], good_responses)
             ret = do_put('{0}/{1}/{2}'.format(self.url, self.service, grid['id']), json.dumps(request))
             self.assertEqual(ret.json(), good_response)
             self.assertEqual(ret.status_code, 400)
Esempio n. 19
0
 def test_get_filled_base(self):
     do_init_grids('{0}/{1}'.format(self.url, self.service))
     ret = do_get('{0}/{1}'.format(self.url, self.service))
     self.assertEqual(ret.json().sort(key=lambda item: item['name']),
                      GRIDS.sort(key=lambda item: item['name']))
     self.assertEqual(ret.status_code, 200)
Esempio n. 20
0
 def test_delete_base(self):
     do_init_grids('{0}/{1}'.format(self.url, self.service))
     ret = do_delete('{0}/{1}'.format(self.url, self.service))
     self.assertEqual(ret.json(), DELETE_INDEX_RESPONSE)
     self.assertEqual(ret.status_code, 200)