PrintDebugMessageActionTest   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 20
rs 10
c 0
b 0
f 0
wmc 4

3 Methods

Rating   Name   Duplication   Size   Complexity  
A test_apply() 0 9 2
A setUp() 0 3 1
A test_is_applicable() 0 4 1
1
import unittest
2
3
from coalib.misc.ContextManagers import retrieve_stdout
4
from coalib.results.Result import Result
5
from coalib.results.result_actions.PrintDebugMessageAction import (
6
    PrintDebugMessageAction)
7
from coalib.settings.Section import Section
8
9
10
class PrintDebugMessageActionTest(unittest.TestCase):
11
12
    def setUp(self):
13
        self.uut = PrintDebugMessageAction()
14
        self.test_result = Result("origin", "message", debug_msg="DEBUG MSG")
15
16
    def test_is_applicable(self):
17
        self.assertFalse(self.uut.is_applicable(1, None, None))
18
        self.assertFalse(self.uut.is_applicable(Result("o", "m"), None, None))
19
        self.assertTrue(self.uut.is_applicable(self.test_result, None, None))
20
21
    def test_apply(self):
22
        with retrieve_stdout() as stdout:
23
            self.assertEqual(self.uut.apply_from_section(self.test_result,
24
                                                         {},
25
                                                         {},
26
                                                         Section("name")),
27
                             {})
28
            self.assertEqual(stdout.getvalue(),
29
                             self.test_result.debug_msg+"\n")
30