def test_remove_dangling_basket_variables_study_specific(self): """Can we clean up BasketVariables belonging to a specific study?""" other_study = StudyFactory(name="a_different_study") dataset = DatasetFactory(name="a_different_study") dataset.study = other_study dataset.save() new_variable = Variable() new_variable.name = "a_different_variable" new_variable.dataset = dataset basket_variable = BasketVariable(basket_id=self.basket.id, variable_id=self.variable.id) new_basket = Basket() new_basket.study = other_study new_basket.user = self.basket.user new_basket.save() new_basket_variable = BasketVariable() new_basket_variable.variable = new_variable new_basket_variable.basket = new_basket new_basket_variable.save() basket_variable.save() variable_id = basket_variable.variable.id basket_variable.variable.delete() new_variable.delete() basket_variable.clean_basket_variables( study_name=self.basket.study.name) with self.assertRaises(BasketVariable.DoesNotExist): BasketVariable.objects.get(variable__id=variable_id)
def test_query_parameter_study(self): """Define study parameter behavior.""" dataset = DatasetFactory(name="different-dataset") study = StudyFactory(name="different-study") study_name = study.name dataset.study = study dataset.save() variable_list = [] for number in range(1, 11): _variable = VariableFactory(name=str(number)) _variable.dataset = dataset _variable.save() variable_list.append(_variable) for number in range(11, 21): _variable = VariableFactory(name=str(number)) variable_list.append(_variable) response = self.client.get(self.API_PATH + f"?study={study_name}") content = json.loads(response.content) self.assertEqual(10, len(content))