diff options
Diffstat (limited to 'odoo/addons/test_limits/models.py')
| -rw-r--r-- | odoo/addons/test_limits/models.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/odoo/addons/test_limits/models.py b/odoo/addons/test_limits/models.py new file mode 100644 index 00000000000..a7aa7ff36e5 --- /dev/null +++ b/odoo/addons/test_limits/models.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +import time + +from openerp import models, api + +class m(models.Model): + """ This model exposes a few methods that will consume between 'almost no + resource' and 'a lot of resource'. + """ + _name = 'test.limits.model' + + @api.model + def consume_nothing(self): + return True + + @api.model + def consume_memory(self, size): + l = [0] * size + return True + + @api.model + def leak_memory(self, size): + if not hasattr(self, 'l'): + type(self).l = [] + self.l.append([0] * size) + return True + + @api.model + def consume_time(self, seconds): + time.sleep(seconds) + return True + + @api.model + def consume_cpu_time(self, seconds): + t0 = time.clock() + t1 = time.clock() + while t1 - t0 < seconds: + for i in xrange(10000000): + x = i * i + t1 = time.clock() + return True |
