22 lines
799 B
Python
22 lines
799 B
Python
|
# -*- coding: utf-8 -*-
|
||
|
from datetime import datetime, timedelta
|
||
|
from odoo.tests import common
|
||
|
|
||
|
|
||
|
class TestAutovacuum(common.TransactionCase):
|
||
|
def test_api_autovacuum(self):
|
||
|
Model = self.env['test_new_api.autovacuumed']
|
||
|
instance = Model.create({'expire_at': datetime.now() - timedelta(days=15)})
|
||
|
self.assertTrue(instance.exists())
|
||
|
|
||
|
# Enter test mode to run the autovacuum cron because `_run_vacuum_cleaner` makes a commit
|
||
|
self.registry.enter_test_mode(self.cr)
|
||
|
self.addCleanup(self.registry.leave_test_mode)
|
||
|
env = self.env(cr=self.registry.cursor())
|
||
|
|
||
|
# Run the autovacuum cron
|
||
|
env.ref('base.autovacuum_job').method_direct_trigger()
|
||
|
|
||
|
# Check the record has been vacuumed.
|
||
|
self.assertFalse(instance.exists())
|