示例#1
0
def purge(now=None):
    # todo: timezone handling
    models = settings.DATAPURGE_MODELS
    now = now or datetime.datetime.utcnow()

    for model, conf in models.items():
        task = PurgeTask.create_from_conf(model, conf, now)
        task()
示例#2
0
def purge(now=None):
    # todo: timezone handling
    models = settings.DATAPURGE_MODELS
    now = now or datetime.datetime.utcnow()

    for model, conf in models.items():
        task = PurgeTask.create_from_conf(model, conf, now)
        task()
示例#3
0
    def test_purge_by_lifetime_field(self):
        lifetime = self.users[-1].date_joined - self.users[59].date_joined
        fake_now = self.users[-1].date_joined

        relation = "auth.User"
        params = {"lifetime": lifetime, "created_field": "date_joined"}

        task = PurgeTask.create_from_conf(relation, params, fake_now)
        task()

        self.assertEqual(User.objects.count(), 40)
示例#4
0
    def test_purge_with_callable(self):
        expire_date = self.users[59].date_joined

        relation = "auth.User"
        params = {
            "callable": lambda model: model.objects.filter(date_joined__lte=expire_date)
        }

        task = PurgeTask.create_from_conf(relation, params)
        task()

        self.assertEqual(User.objects.count(), 40)
示例#5
0
    def test_purge_by_expire_field(self):
        fake_now = self.users[59].date_joined

        relation = "auth.User"
        params =  {
            "expire_field": "date_joined",
        }

        task = PurgeTask.create_from_conf(relation, params, fake_now)
        task()

        self.assertEqual(User.objects.count(), 40)
示例#6
0
    def test_purge_by_expire_field(self):
        fake_now = self.users[59].date_joined

        relation = "auth.User"
        params = {
            "expire_field": "date_joined",
        }

        task = PurgeTask.create_from_conf(relation, params, fake_now)
        task()

        self.assertEqual(User.objects.count(), 40)
示例#7
0
    def test_purge_with_callable(self):
        expire_date = self.users[59].date_joined

        relation = "auth.User"
        params = {
            "callable":
            lambda model: model.objects.filter(date_joined__lte=expire_date)
        }

        task = PurgeTask.create_from_conf(relation, params)
        task()

        self.assertEqual(User.objects.count(), 40)
示例#8
0
    def test_purge_by_lifetime_field(self):
        lifetime = self.users[-1].date_joined - self.users[59].date_joined
        fake_now = self.users[-1].date_joined

        relation = "auth.User"
        params = {
            "lifetime": lifetime,
            "created_field": "date_joined"
        }

        task = PurgeTask.create_from_conf(relation, params, fake_now)
        task()

        self.assertEqual(User.objects.count(), 40)