def test_groups_have_insufficient_data_if_the_aggregate_is_below_the_threshold( self): group1 = DefinitionGroup( name="G1", model=None, cycle=current_cycle, selected_fields=["consumption"], selected_formulations=[], sample_formulation_model_overridden={}, sample_formulation_model_overrides={}, aggregation=sum_comparison, has_factors=None, factors=None, has_thresholds=True, thresholds={ u"abc3tc-paed": 10, u"efv200-paed": 10, u"tdf3tcefv-adult": 200 }, ) group2 = DefinitionGroup( name="G2", model=None, cycle=previous_cycle, selected_fields=["consumption"], selected_formulations=[], sample_formulation_model_overridden={}, sample_formulation_model_overrides={}, aggregation=sum_comparison, has_factors=None, factors=None, has_thresholds=True, thresholds={ u"abc3tc-paed": 10, u"efv200-paed": 10, u"tdf3tcefv-adult": 200 }, ) result1 = GroupResult( group=group1, values=None, factored_records=[r1], aggregate=50.0, tracer=tracer, ) result2 = GroupResult( group=group2, values=None, factored_records=[r2], aggregate=40.0, tracer=tracer, ) self.assertFalse(Comparison().groups_have_adequate_data( [result1, result2]))
def test_is_above_threshold(self): group = DefinitionGroup( name="G2", model=None, cycle="", selected_fields=["consumption"], selected_formulations=[], sample_formulation_model_overridden={}, sample_formulation_model_overrides={}, aggregation=sum_comparison, has_factors=None, factors=None, has_thresholds=True, thresholds={ u"abc3tc-paed": 10, u"efv200-paed": 10, u"tdf3tcefv-adult": "200" }, ) result = GroupResult( group=group, values=None, factored_records=[], aggregate=500.0, tracer=Tracer.F1(), ) self.assertEqual(result.is_above_threshold(), True)
def test_that_you_can_get_current_cycle(self): group = DefinitionGroup.from_dict({ "cycle": { "id": "Current", "name": "" }, "model": {} }) self.assertEqual(parse_cycle("May - Jun 2016", group), "May - Jun 2016")
def test_has_no_overrides_if_none_of_the_overrides_is_set(self): group_data = { "model": { "id": "Paed" }, "sample_formulation_model_overrides": { "a": "" } } group = DefinitionGroup.from_dict(group_data) self.assertFalse(group.has_overrides)
def test_get_preview_formulations_for_other_test(self): definition = Definition.from_dict(DefinitionFactory().initial().get()) group = DefinitionGroup.from_dict({ "model": { "id": "Adult" }, "selected_formulations": ["a", "b"] }) check = DBBasedCheckPreview(definition=definition) formulations = check.get_preview_formulations(group) self.assertEqual(len(formulations), 2) self.assertEqual(formulations, ["a", "b"])
def test_that_you_can_get_previous_cycle(self): group = DefinitionGroup.from_dict({ "cycle": { "id": "Previous", "name": "" }, "model": {} }) self.assertEqual(parse_cycle("May - Jun 2016", group), "Mar - Apr 2016") self.assertEqual(parse_cycle("Mar - Apr 2016", group), "Jan - Feb 2016") self.assertEqual(parse_cycle("Jan - Feb 2016", group), "Nov - Dec 2015")
def test_has_overrides_if_one_of_the_overrides_is_set(self): group_data = { "model": { "id": "Paed" }, "sample_formulation_model_overrides": { "a": { "id": "A", "formulations": ["a", "b"] } }, } group = DefinitionGroup.from_dict(group_data) self.assertTrue(group.has_overrides)
def test_get_preview_formulations_for_traced_test(self): definition = Definition.from_dict(DefinitionFactory().traced().get()) tracing_formulations = [ tf.as_dict_obj() for tf in TracingFormulations.objects.all() ] model = {"id": "Adult", "tracingFormulations": tracing_formulations} group = DefinitionGroup.from_dict({"model": model}) check = DBBasedCheckPreview(definition=definition) formulations = check.get_preview_formulations(group) self.assertEqual(len(formulations), 7) self.assertEqual( formulations, [ u"TDF/3TC/EFV (PMTCT)", u"TDF/3TC/EFV (ADULT)", u"ABC/3TC/LPV/r", u"ABC/3TC/EFV", u"ABC/3TC/NVP", u"ABC/3TC/EFV", u"AZT/3TC/EFV", ], )