Code Duplication    Length = 36-36 lines in 2 locations

tests/bearlib/abstractions/LinterTest.py 2 locations

@@ 78-113 (lines=36) @@
75
                         "Invalid keyword arguments provided: "
76
                         "'prerequisite_check_fail_message'")
77
78
    def test_decorator_invalid_states(self):
79
        with self.assertRaises(ValueError) as cm:
80
            Linter("some-executable", use_stdout=False, use_stderr=False)
81
        self.assertEqual(str(cm.exception),
82
                         "No output streams provided at all.")
83
84
        with self.assertRaises(ValueError) as cm:
85
            Linter("some-executable", output_format="INVALID")
86
        self.assertEqual(str(cm.exception),
87
                         "Invalid `output_format` specified.")
88
89
        with self.assertRaises(ValueError) as cm:
90
            Linter("some-executable", output_format="regex")
91
        self.assertEqual(str(cm.exception), "No `output_regex` specified.")
92
93
        with self.assertRaises(ValueError) as cm:
94
            Linter("some-executable",
95
                   output_format="regex",
96
                   output_regex="",
97
                   severity_map={})
98
        self.assertEqual(
99
            str(cm.exception),
100
            "Provided `severity_map` but named group `severity` is not used "
101
            "in `output_regex`.")
102
103
        with self.assertRaises(ValueError) as cm:
104
            Linter("some-executable")(object)
105
        self.assertEqual(str(cm.exception),
106
                         "`process_output` not provided by given class.")
107
108
        with self.assertRaises(ValueError) as cm:
109
            (Linter("some-executable", output_format="regex", output_regex="")
110
             (self.ManualProcessingTestLinter))
111
        self.assertEqual(
112
            str(cm.exception),
113
            "`process_output` is used by given class, but 'regex' output "
114
            "format was specified.")
115
116
    def test_decorator_generated_default_interface(self):
@@ 40-75 (lines=36) @@
37
    def setUp(self):
38
        self.section = Section("TEST_SECTION")
39
40
    def test_decorator_invalid_parameters(self):
41
        with self.assertRaises(ValueError) as cm:
42
            Linter("some-executable", invalid_arg=88, ABC=2000)
43
        self.assertEqual(
44
            str(cm.exception),
45
            "Invalid keyword arguments provided: 'ABC', 'invalid_arg'")
46
47
        with self.assertRaises(ValueError) as cm:
48
            Linter("some-executable", diff_severity=RESULT_SEVERITY.MAJOR)
49
        self.assertEqual(str(cm.exception),
50
                         "Invalid keyword arguments provided: 'diff_severity'")
51
52
        with self.assertRaises(ValueError) as cm:
53
            Linter("some-executable", diff_message="Custom message")
54
        self.assertEqual(str(cm.exception),
55
                         "Invalid keyword arguments provided: 'diff_message'")
56
57
        with self.assertRaises(ValueError) as cm:
58
            Linter("some-executable",
59
                   output_format="corrected",
60
                   output_regex=".*")
61
        self.assertEqual(str(cm.exception),
62
                         "Invalid keyword arguments provided: 'output_regex'")
63
64
        with self.assertRaises(ValueError) as cm:
65
            Linter("some-executable",
66
                   output_format="corrected",
67
                   severity_map={})
68
        self.assertEqual(str(cm.exception),
69
                         "Invalid keyword arguments provided: 'severity_map'")
70
71
        with self.assertRaises(ValueError) as cm:
72
            Linter("some-executable",
73
                   prerequisite_check_fail_message="some_message")
74
        self.assertEqual(str(cm.exception),
75
                         "Invalid keyword arguments provided: "
76
                         "'prerequisite_check_fail_message'")
77
78
    def test_decorator_invalid_states(self):