TestUsersManager.test_ask_question()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 4
nop 2
dl 0
loc 6
ccs 4
cts 4
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
"""kytos.utils.users tests."""
2 1
import unittest
3 1
from unittest.mock import patch
4
5 1
from kytos.utils.users import UsersManager
6
7
8 1
class TestUsersManager(unittest.TestCase):
9
    """Test the class UsersManager."""
10
11 1
    def setUp(self):
12
        """Execute steps before each tests."""
13 1
        self.user_manager = UsersManager()
14
15 1
    @patch('kytos.utils.client.UsersClient.register')
16 1
    @patch('kytos.utils.users.UsersManager.ask_question')
17 1
    def test_register(self, *args):
18
        """Test register method."""
19 1
        (mock_ask_question, mock_register) = args
20 1
        self.user_manager.register()
21
22 1
        self.assertEqual(mock_ask_question.call_count, 9)
23 1
        mock_register.assert_called()
24
25 1
    @patch('builtins.input', return_value='input')
26 1
    def test_ask_question(self, _):
27
        """Test ask_question method."""
28 1
        input_value = self.user_manager.ask_question('field')
29
30 1
        self.assertEqual(input_value, 'input')
31
32 1
    @patch('kytos.utils.users.getpass', return_value='password')
33 1
    def test_ask_question__password(self, _):
34
        """Test ask_question method with password."""
35 1
        input_value = self.user_manager.ask_question('field', password=True)
36
37
        self.assertEqual(input_value, 'password')
38