浏览代码

[fix] tests

version-14
Rushabh Mehta 8 年前
父节点
当前提交
a6e1210162
共有 1 个文件被更改,包括 14 次插入10 次删除
  1. +14
    -10
      frappe/tests/test_twofactor.py

+ 14
- 10
frappe/tests/test_twofactor.py 查看文件

@@ -5,27 +5,25 @@ from __future__ import unicode_literals
import unittest, frappe, pyotp import unittest, frappe, pyotp
from werkzeug.wrappers import Request from werkzeug.wrappers import Request
from werkzeug.test import EnvironBuilder from werkzeug.test import EnvironBuilder
from frappe.auth import LoginManager, HTTPRequest
from frappe.twofactor import *
import time
from frappe.auth import HTTPRequest
from frappe.twofactor import (should_run_2fa, authenticate_for_2factor, get_cached_user_pass,
two_factor_is_enabled_for_, confirm_otp_token, get_otpsecret_for_, get_verification_obj,
render_string_template)


import time


class TestTwoFactor(unittest.TestCase): class TestTwoFactor(unittest.TestCase):


def setUp(self): def setUp(self):
self.http_requests = create_http_request() self.http_requests = create_http_request()
self.login_manager = frappe.local.login_manager self.login_manager = frappe.local.login_manager
self.user = self.login_manager.user self.user = self.login_manager.user


def tearDown(self): def tearDown(self):
tmp_id = frappe.local.response['tmp_id']
frappe.local.response['verification'] = None frappe.local.response['verification'] = None
frappe.local.response['tmp_id'] = None frappe.local.response['tmp_id'] = None
disable_2fa()
frappe.clear_cache(user=self.user) frappe.clear_cache(user=self.user)



def test_should_run_2fa(self): def test_should_run_2fa(self):
'''Should return true if enabled.''' '''Should return true if enabled.'''
toggle_2fa_all_role(state=True) toggle_2fa_all_role(state=True)
@@ -68,7 +66,7 @@ class TestTwoFactor(unittest.TestCase):
otp = 'wrongotp' otp = 'wrongotp'
with self.assertRaises(frappe.AuthenticationError): with self.assertRaises(frappe.AuthenticationError):
confirm_otp_token(self.login_manager,otp=otp,tmp_id=tmp_id) confirm_otp_token(self.login_manager,otp=otp,tmp_id=tmp_id)
otp = get_otp(self.user)
otp = get_otp(self.user)
self.assertTrue(confirm_otp_token(self.login_manager,otp=otp,tmp_id=tmp_id)) self.assertTrue(confirm_otp_token(self.login_manager,otp=otp,tmp_id=tmp_id))
if frappe.flags.tests_verbose: if frappe.flags.tests_verbose:
print('Sleeping for 30secs to confirm token expires..') print('Sleeping for 30secs to confirm token expires..')
@@ -106,12 +104,18 @@ def create_http_request():


def enable_2fa(): def enable_2fa():
'''Enable Two factor in system settings.''' '''Enable Two factor in system settings.'''
toggle_two_factor_auth(True)
system_settings = frappe.get_doc('System Settings') system_settings = frappe.get_doc('System Settings')
system_settings.enable_two_factor_auth = 1
system_settings.two_factor_method = 'OTP App' system_settings.two_factor_method = 'OTP App'
system_settings.save(ignore_permissions=True) system_settings.save(ignore_permissions=True)
frappe.db.commit() frappe.db.commit()


def disable_2fa():
system_settings = frappe.get_doc('System Settings')
system_settings.enable_two_factor_auth = 0
system_settings.save(ignore_permissions=True)
frappe.db.commit()

def toggle_2fa_all_role(state=None): def toggle_2fa_all_role(state=None):
'''Enable or disable 2fa for 'all' role on the system.''' '''Enable or disable 2fa for 'all' role on the system.'''
all_role = frappe.get_doc('Role','All') all_role = frappe.get_doc('Role','All')


正在加载...
取消
保存