Browse Source
[ADD] Test #6 to test the bug #1319391;
[ADD] Test #6 to test the bug #1319391;
[ADD] Test #1 to #5 to avoid regression;pull/2/head
Sylvain LE GAL
11 years ago
2 changed files with 122 additions and 0 deletions
@ -0,0 +1,23 @@ |
|||||
|
# -*- encoding: utf-8 -*- |
||||
|
############################################################################## |
||||
|
# |
||||
|
# Admin Passkey module for OpenERP |
||||
|
# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
||||
|
# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
||||
|
# |
||||
|
# This program is free software: you can redistribute it and/or modify |
||||
|
# it under the terms of the GNU Affero General Public License as |
||||
|
# published by the Free Software Foundation, either version 3 of the |
||||
|
# License, or (at your option) any later version. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU Affero General Public License for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU Affero General Public License |
||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
############################################################################## |
||||
|
|
||||
|
from . import test_auth_admin_passkey |
@ -0,0 +1,99 @@ |
|||||
|
# -*- encoding: utf-8 -*- |
||||
|
############################################################################## |
||||
|
# |
||||
|
# Admin Passkey module for OpenERP |
||||
|
# Copyright (C) 2013-2014 GRAP (http://www.grap.coop) |
||||
|
# @author Sylvain LE GAL (https://twitter.com/legalsylvain) |
||||
|
# |
||||
|
# This program is free software: you can redistribute it and/or modify |
||||
|
# it under the terms of the GNU Affero General Public License as |
||||
|
# published by the Free Software Foundation, either version 3 of the |
||||
|
# License, or (at your option) any later version. |
||||
|
# |
||||
|
# This program is distributed in the hope that it will be useful, |
||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||
|
# GNU Affero General Public License for more details. |
||||
|
# |
||||
|
# You should have received a copy of the GNU Affero General Public License |
||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. |
||||
|
# |
||||
|
############################################################################## |
||||
|
|
||||
|
import threading |
||||
|
|
||||
|
from openerp.tests.common import TransactionCase |
||||
|
|
||||
|
|
||||
|
class TestAuthAdminPasskey(TransactionCase): |
||||
|
"""Tests for 'Auth Admin Passkey' Module""" |
||||
|
|
||||
|
# Overload Section |
||||
|
def setUp(self): |
||||
|
super(TestAuthAdminPasskey, self).setUp() |
||||
|
|
||||
|
# Get Registries |
||||
|
self.imd_obj = self.registry('ir.model.data') |
||||
|
self.ru_obj = self.registry('res.users') |
||||
|
|
||||
|
# Get Database name |
||||
|
self.db = threading.current_thread().dbname |
||||
|
|
||||
|
# Get ids from xml_ids |
||||
|
self.admin_user_id = self.imd_obj.get_object_reference( |
||||
|
self.cr, self.uid, 'base', 'user_root')[1] |
||||
|
self.demo_user_id = self.imd_obj.get_object_reference( |
||||
|
self.cr, self.uid, 'base', 'user_demo')[1] |
||||
|
|
||||
|
# Test Section |
||||
|
def test_01_normal_login_admin_succeed(self): |
||||
|
"""[Regression Test] |
||||
|
Test the succeed of login with 'admin' / 'admin'""" |
||||
|
res = self.ru_obj.authenticate(self.db, 'admin', 'admin', {}) |
||||
|
self.assertEqual( |
||||
|
res, self.admin_user_id, |
||||
|
"'admin' / 'admin' login must succeed.") |
||||
|
|
||||
|
def test_02_normal_login_admin_fail(self): |
||||
|
"""[Regression Test] |
||||
|
Test the fail of login with 'admin' / 'bad_password'""" |
||||
|
res = self.ru_obj.authenticate(self.db, 'admin', 'bad_password', {}) |
||||
|
self.assertEqual( |
||||
|
res, False, |
||||
|
"'admin' / 'bad_password' login must fail.") |
||||
|
|
||||
|
def test_03_normal_login_demo_succeed(self): |
||||
|
"""[Regression Test] |
||||
|
Test the succeed of login with 'demo' / 'demo'""" |
||||
|
res = self.ru_obj.authenticate(self.db, 'demo', 'demo', {}) |
||||
|
self.assertEqual( |
||||
|
res, self.demo_user_id, |
||||
|
"'demo' / 'demo' login must succeed.") |
||||
|
|
||||
|
def test_04_normal_login_demo_fail(self): |
||||
|
"""[Regression Test] |
||||
|
Test the fail of login with 'demo' / 'bad_password'""" |
||||
|
res = self.ru_obj.authenticate(self.db, 'demo', 'bad_password', {}) |
||||
|
self.assertEqual( |
||||
|
res, False, |
||||
|
"'demo' / 'bad_password' login must fail.") |
||||
|
|
||||
|
def test_05_passkey_login_demo_succeed(self): |
||||
|
"""[New Feature] |
||||
|
Test the fail of login with 'demo' / 'admin'""" |
||||
|
res = self.ru_obj.authenticate(self.db, 'demo', 'admin', {}) |
||||
|
self.assertEqual( |
||||
|
res, self.demo_user_id, |
||||
|
"'demo' / 'admin' login must succeed.") |
||||
|
|
||||
|
def test_06_passkey_login_demo_succeed(self): |
||||
|
"""[Bug #1319391] |
||||
|
Test the correct behaviour of login with 'bad_login' / 'admin'""" |
||||
|
exception_raised = False |
||||
|
try: |
||||
|
res = self.ru_obj.authenticate(self.db, 'bad_login', 'admin', {}) |
||||
|
except: |
||||
|
exception_raised = True |
||||
|
self.assertEqual( |
||||
|
exception_raised, False, |
||||
|
"'bad_login' / 'admin' musn't raise Error.") |
Write
Preview
Loading…
Cancel
Save
Reference in new issue