def test_monitoring_dashboard_url_returns_url_when_experiment_is_complete( self): experiment = NimbusExperimentFactory.create( slug="experiment", status=NimbusExperiment.Status.COMPLETE, ) NimbusChangeLogFactory.create( experiment=experiment, old_status=NimbusExperiment.Status.ACCEPTED, new_status=NimbusExperiment.Status.LIVE, changed_on=datetime.date(2019, 5, 1), ) NimbusChangeLogFactory.create( experiment=experiment, old_status=NimbusExperiment.Status.LIVE, new_status=NimbusExperiment.Status.COMPLETE, changed_on=datetime.date(2019, 5, 10), ) self.assertEqual( experiment.monitoring_dashboard_url, settings.MONITORING_URL.format( slug=experiment.slug, from_date=1556582400000, to_date=1557619200000, ), )
def test_results_ready_false(self): experiment = NimbusExperimentFactory.create() NimbusChangeLogFactory.create( experiment=experiment, old_status=NimbusExperiment.Status.DRAFT, new_status=NimbusExperiment.Status.LIVE, changed_on=datetime.date.today() - datetime.timedelta(days=2), ) self.assertFalse(experiment.results_ready)
def test_results_ready_true(self): experiment = NimbusExperimentFactory.create() NimbusChangeLogFactory.create( experiment=experiment, old_status=NimbusExperiment.Status.DRAFT, new_status=NimbusExperiment.Status.LIVE, changed_on=datetime.date(2019, 5, 1), ) self.assertTrue(experiment.results_ready)
def test_formats_str_if_no_message_set(self): now = timezone.now() user = UserFactory.create() changelog = NimbusChangeLogFactory.create( changed_by=user, changed_on=now, old_status=NimbusExperiment.Status.DRAFT, new_status=NimbusExperiment.Status.PREVIEW, message=None, ) self.assertEqual(str(changelog), f"Draft > Preview by {user.email} on {now}")
def test_monitoring_dashboard_url_returns_url_when_experiment_has_begun(self): experiment = NimbusExperimentFactory.create( slug="experiment", status=NimbusExperiment.Status.LIVE, ) NimbusChangeLogFactory.create( experiment=experiment, old_status=NimbusExperiment.Status.DRAFT, new_status=NimbusExperiment.Status.LIVE, changed_on=datetime.date(2019, 5, 1), ) self.assertEqual( experiment.monitoring_dashboard_url, settings.MONITORING_URL.format( slug=experiment.slug, from_date=1556582400000, to_date="", ), )
def test_uses_message_if_set(self): changelog = NimbusChangeLogFactory.create() self.assertEqual(str(changelog), changelog.message)