Exemple #1
0
def check_experiment_is_complete():
    metrics.incr("check_experiment_is_complete.started")

    live_experiments = Experiment.objects.filter(
        type=Experiment.TYPE_RAPID, status=Experiment.STATUS_LIVE
    )

    records = client.get_main_records()
    record_ids = [r.get("id") for r in records]

    for experiment in live_experiments:
        if experiment.recipe_slug not in record_ids:
            logger.info(
                "{experiment} status is being updated to complete".format(
                    experiment=experiment
                )
            )
            update_experiment_with_change_log(
                experiment,
                {"status": Experiment.STATUS_COMPLETE},
                settings.KINTO_DEFAULT_CHANGELOG_USER,
            )

            logger.info("Experiment Status is set to complete")

    metrics.incr("check_experiment_is_complete.completed")
Exemple #2
0
 def test_returns_no_records(self):
     self.setup_kinto_no_main_records()
     self.assertEqual(client.get_main_records(), [])
Exemple #3
0
 def test_returns_records(self):
     self.setup_kinto_get_main_records()
     self.assertEqual(len(client.get_main_records()), 1)