[FIX] reset groupbys.
[odoo/odoo.git] / tests / test_xmlrpc.py
1 # -*- coding: utf-8 -*-
2 # Run with one of these commands:
3 #    > OPENERP_ADDONS_PATH='../../addons/trunk' OPENERP_PORT=8069 \
4 #      OPENERP_DATABASE=yy PYTHONPATH=. python tests/test_xmlrpc.py
5 #    > OPENERP_ADDONS_PATH='../../addons/trunk' OPENERP_PORT=8069 \
6 #      OPENERP_DATABASE=yy nosetests tests/test_xmlrpc.py
7 #    > OPENERP_ADDONS_PATH='../../../addons/trunk' OPENERP_PORT=8069 \
8 #      OPENERP_DATABASE=yy PYTHONPATH=../:. unit2 test_xmlrpc
9 import os
10 import time
11 import unittest2
12 import xmlrpclib
13
14 import openerp
15 import common
16
17 DB = common.DB
18 ADMIN_USER = common.ADMIN_USER
19 ADMIN_USER_ID = common.ADMIN_USER_ID
20 ADMIN_PASSWORD = common.ADMIN_PASSWORD
21
22 setUpModule = common.setUpModule
23 tearDownModule = common.tearDownModule
24
25 class test_xmlrpc(unittest2.TestCase):
26
27     def test_00_xmlrpc_create_database_polling(self):
28         """
29         Simulate a OpenERP client requesting the creation of a database and
30         polling the server until the creation is complete.
31         """
32         progress_id = common.db_proxy_60.create(ADMIN_PASSWORD, DB, True,
33             False, ADMIN_PASSWORD)
34         while True:
35             time.sleep(1)
36             progress, users = common.db_proxy_60.get_progress(ADMIN_PASSWORD,
37                 progress_id)
38             if progress == 1.0:
39                 break
40
41     def test_xmlrpc_login(self):
42         """ Try to login on the common service. """
43         uid = common.common_proxy_60.login(DB, ADMIN_USER, ADMIN_PASSWORD)
44         assert uid == ADMIN_USER_ID
45
46     def test_xmlrpc_ir_model_search(self):
47         """ Try a search on the object service. """
48         ids = common.object_proxy_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD,
49             'ir.model', 'search', [])
50         assert ids
51         ids = common.object_proxy_60.execute(DB, ADMIN_USER_ID, ADMIN_PASSWORD,
52             'ir.model', 'search', [], {})
53         assert ids
54
55     def test_xmlrpc_61_ir_model_search(self):
56         """ Try a search on the object service. """
57
58         proxy = xmlrpclib.ServerProxy(common.model_uri_61 + 'model/' + DB + '/ir.model')
59         ids = proxy.execute(ADMIN_USER_ID, ADMIN_PASSWORD, 'search', [])
60         assert ids
61         ids = proxy.execute(ADMIN_USER_ID, ADMIN_PASSWORD, 'search', [], {})
62         assert ids
63
64 if __name__ == '__main__':
65     unittest2.main()
66