def test_get_camera_by_id(self): response = make_request( self.client.get, 'cameras/camera/{}'.format(self.camera_1['id'])) self.assertEqual(response.status_code, 200) handler_camera = json.loads(response.content)['camera'] self.assertEqual(make_without_dates(handler_camera), make_without_dates(self.camera_1))
def test_create_experiment(self): response = make_request(self.client.put, 'experiments', TEST_EXPERIMENTS_CREATE_EXPERIMENT) experiments = Experiments.objects.filter(**TEST_EXPERIMENTS_CREATE_EXPERIMENT) self.assertEqual(response.status_code, 201) self.assertTrue(len(experiments) == 1)
def test_continue_experiment(self): response = make_request( self.client.post, 'experiments/experiment/{}/continue_experiment'.format(self.experiment['id']) ) self.assertEqual(response.status_code, 200) experiment = Experiments.objects.get(id=self.experiment['id']) self.assertEqual(model_to_dict(experiment)['status'], ExperimentStatuses.Active.value)
def test_delete_camera(self): response = make_request(self.client.delete, 'cameras', {'camera_ids': [self.camera_1['id']]}) self.assertEqual(response.status_code, 200) cameras_1 = Cameras.objects.filter(id=self.camera_1['id']) cameras_2 = Cameras.objects.filter(id=self.camera_2['id']) self.assertTrue(len(cameras_1) == 0) self.assertTrue(len(cameras_2) == 1)
def test_create_camera(self): response = make_request(self.client.put, 'cameras', TEST_CAMERAS_CREATE_CAMERA) cameras = Cameras.objects.filter( user=TEST_CAMERAS_USER, **TEST_CAMERAS_CREATE_CAMERA['camera'], ) self.assertEqual(response.status_code, 201) self.assertTrue(len(cameras) == 1)
def test_get_all_user_cameras(self): response = make_request( self.client.get, 'cameras', params={'user': TEST_CAMERAS_USER}, ) self.assertEqual(response.status_code, 200) handler_camera = json.loads(response.content)['cameras'] self.assertEqual(make_without_dates(handler_camera), make_without_dates([self.camera_1, self.camera_2]))
def test_get_experiment_by_id(self): response = make_request(self.client.get, 'experiments/experiment/{}'.format(self.experiment['id'])) self.assertEqual(response.status_code, 200) handler_experiment = json.loads(response.content)['experiment'] experiment = { 'mice': [self.mouse], **self.experiment, } self.assertEqual(make_without_dates(handler_experiment), make_without_dates(experiment))
def test_add_camera_to_experiment(self): response = make_request( self.client.put, 'experiments/experiment/{}'.format(self.experiment['id']), {'camera': self.cameras[1]['id']} ) self.assertEqual(response.status_code, 201) mouse = Mice.objects.get(camera=self.cameras[1]['id'], experiment=self.experiment['id']) response = make_request( self.client.get, 'experiments/experiment/{}'.format(self.experiment['id']) ) handler_experiment = json.loads(response.content)['experiment'] user_experiment = {**self.experiment, 'mice': [model_to_dict(mouse), self.mouse]} self.assertEqual(make_without_dates(handler_experiment), make_without_dates(user_experiment))
def test_get_all_user_experiments(self): response = make_request( self.client.get, 'experiments', params={'user': TEST_EXPERIMENTS_USER}, ) self.assertEqual(response.status_code, 200) handler_experiment = json.loads(response.content)['experiments'] user_experiments = [{**self.experiment, 'mice': [self.mouse]}] self.assertEqual(make_without_dates(handler_experiment), make_without_dates(user_experiments))
def test_delete_experiment(self): response = make_request( self.client.delete, 'experiments', {'experiment_ids': [self.experiment['id']]} ) self.assertEqual(response.status_code, 200) experiments = Experiments.objects.filter(id=self.experiment['id']) mice = Mice.objects.filter(experiment=self.experiment['id']) self.assertTrue(len(experiments) == 0) self.assertTrue(len(mice) == 0)
def test_simple_change_camera(self): changed_camera_fields = { 'update_fields': TEST_CAMERAS_CHANGE_FIELDS, } response = make_request( self.client.post, 'cameras/camera/{}'.format(self.camera_1['id']), changed_camera_fields) self.assertEqual(response.status_code, 200) camera = model_to_dict(Cameras.objects.get(pk=self.camera_1['id'])) new_camera = { **self.camera_1, **changed_camera_fields['update_fields'], } self.assertEqual(make_without_dates(camera), make_without_dates(new_camera))
def test_simple_change_experiment(self): changed_experiment_fields = { 'update_fields': TEST_EXPERIMENTS_CHANGE_FIELDS, } response = make_request( self.client.post, 'experiments/experiment/{}'.format(self.experiment['id']), changed_experiment_fields ) self.assertEqual(response.status_code, 200) experiment = model_to_dict(Experiments.objects.get(pk=self.experiment['id'])) new_experiment = { **self.experiment, **changed_experiment_fields['update_fields'], } self.assertEqual(make_without_dates(experiment), make_without_dates(new_experiment))
def test_get_wrong_camera_by_id(self): response = make_request(self.client.get, 'cameras/camera/777') self.assertEqual(response.status_code, 400)
def test_get_wrong_experiment_by_id(self): response = make_request(self.client.get, 'experiments/experiment/777') self.assertEqual(response.status_code, 400)