Code Duplication    Length = 12-14 lines in 9 locations

test/test_trigger.py 9 locations

@@ 75-88 (lines=14) @@
72
    assert pretrigger.sender == Identifier('#Sopel')
73
74
75
def test_tags_pretrigger(nick):
76
    line = '@foo=bar;baz;sopel.chat/special=value :[email protected] PRIVMSG #Sopel :Hello, world'
77
    pretrigger = PreTrigger(nick, line)
78
    assert pretrigger.tags == {'baz': None,
79
                               'foo': 'bar',
80
                               'sopel.chat/special': 'value'}
81
    assert pretrigger.hostmask == '[email protected]'
82
    assert pretrigger.line == line
83
    assert pretrigger.args == ['#Sopel', 'Hello, world']
84
    assert pretrigger.event == 'PRIVMSG'
85
    assert pretrigger.nick == Identifier('Foo')
86
    assert pretrigger.user == 'foo'
87
    assert pretrigger.host == 'example.com'
88
    assert pretrigger.sender == '#Sopel'
89
90
91
def test_intents_pretrigger(nick):
@@ 143-154 (lines=12) @@
140
    assert pretrigger.sender == Identifier('Foo')
141
142
143
def test_ircv3_extended_join_pretrigger(nick):
144
    line = ':[email protected] JOIN #Sopel bar :Real Name'
145
    pretrigger = PreTrigger(nick, line)
146
    assert pretrigger.tags == {'account': 'bar'}
147
    assert pretrigger.hostmask == '[email protected]'
148
    assert pretrigger.line == line
149
    assert pretrigger.args == ['#Sopel', 'bar', 'Real Name']
150
    assert pretrigger.event == 'JOIN'
151
    assert pretrigger.nick == Identifier('Foo')
152
    assert pretrigger.user == 'foo'
153
    assert pretrigger.host == 'example.com'
154
    assert pretrigger.sender == Identifier('#Sopel')
155
156
157
def test_ircv3_extended_join_trigger(nick):
@@ 129-140 (lines=12) @@
126
    assert pretrigger.sender == Identifier('Foo')
127
128
129
def test_ctcp_data_pretrigger(nick):
130
    line = ':[email protected] PRIVMSG Sopel :\x01PING 1123321\x01'
131
    pretrigger = PreTrigger(nick, line)
132
    assert pretrigger.tags == {'intent': 'PING'}
133
    assert pretrigger.hostmask == '[email protected]'
134
    assert pretrigger.line == line
135
    assert pretrigger.args == ['Sopel', '1123321']
136
    assert pretrigger.event == 'PRIVMSG'
137
    assert pretrigger.nick == Identifier('Foo')
138
    assert pretrigger.user == 'foo'
139
    assert pretrigger.host == 'example.com'
140
    assert pretrigger.sender == Identifier('Foo')
141
142
143
def test_ircv3_extended_join_pretrigger(nick):
@@ 115-126 (lines=12) @@
112
    assert pretrigger.event == 'PING'
113
114
115
def test_ctcp_intent_pretrigger(nick):
116
    line = ':[email protected] PRIVMSG Sopel :\x01VERSION\x01'
117
    pretrigger = PreTrigger(nick, line)
118
    assert pretrigger.tags == {'intent': 'VERSION'}
119
    assert pretrigger.hostmask == '[email protected]'
120
    assert pretrigger.line == line
121
    assert pretrigger.args == ['Sopel', '']
122
    assert pretrigger.event == 'PRIVMSG'
123
    assert pretrigger.nick == Identifier('Foo')
124
    assert pretrigger.user == 'foo'
125
    assert pretrigger.host == 'example.com'
126
    assert pretrigger.sender == Identifier('Foo')
127
128
129
def test_ctcp_data_pretrigger(nick):
@@ 91-102 (lines=12) @@
88
    assert pretrigger.sender == '#Sopel'
89
90
91
def test_intents_pretrigger(nick):
92
    line = '@intent=ACTION :[email protected] PRIVMSG #Sopel :Hello, world'
93
    pretrigger = PreTrigger(nick, line)
94
    assert pretrigger.tags == {'intent': 'ACTION'}
95
    assert pretrigger.hostmask == '[email protected]'
96
    assert pretrigger.line == line
97
    assert pretrigger.args == ['#Sopel', 'Hello, world']
98
    assert pretrigger.event == 'PRIVMSG'
99
    assert pretrigger.nick == Identifier('Foo')
100
    assert pretrigger.user == 'foo'
101
    assert pretrigger.host == 'example.com'
102
    assert pretrigger.sender == '#Sopel'
103
104
105
def test_unusual_pretrigger(nick):
@@ 61-72 (lines=12) @@
58
    assert pretrigger.sender is None
59
60
61
def test_join_pretrigger(nick):
62
    line = ':[email protected] JOIN #Sopel'
63
    pretrigger = PreTrigger(nick, line)
64
    assert pretrigger.tags == {}
65
    assert pretrigger.hostmask == '[email protected]'
66
    assert pretrigger.line == line
67
    assert pretrigger.args == ['#Sopel']
68
    assert pretrigger.event == 'JOIN'
69
    assert pretrigger.nick == Identifier('Foo')
70
    assert pretrigger.user == 'foo'
71
    assert pretrigger.host == 'example.com'
72
    assert pretrigger.sender == Identifier('#Sopel')
73
74
75
def test_tags_pretrigger(nick):
@@ 47-58 (lines=12) @@
44
    assert pretrigger.sender == Identifier('Foo')
45
46
47
def test_quit_pretrigger(nick):
48
    line = ':[email protected] QUIT :quit message text'
49
    pretrigger = PreTrigger(nick, line)
50
    assert pretrigger.tags == {}
51
    assert pretrigger.hostmask == '[email protected]'
52
    assert pretrigger.line == line
53
    assert pretrigger.args == ['quit message text']
54
    assert pretrigger.event == 'QUIT'
55
    assert pretrigger.nick == Identifier('Foo')
56
    assert pretrigger.user == 'foo'
57
    assert pretrigger.host == 'example.com'
58
    assert pretrigger.sender is None
59
60
61
def test_join_pretrigger(nick):
@@ 33-44 (lines=12) @@
30
    assert pretrigger.sender == '#Sopel'
31
32
33
def test_pm_pretrigger(nick):
34
    line = ':[email protected] PRIVMSG Sopel :Hello, world'
35
    pretrigger = PreTrigger(nick, line)
36
    assert pretrigger.tags == {}
37
    assert pretrigger.hostmask == '[email protected]'
38
    assert pretrigger.line == line
39
    assert pretrigger.args == ['Sopel', 'Hello, world']
40
    assert pretrigger.event == 'PRIVMSG'
41
    assert pretrigger.nick == Identifier('Foo')
42
    assert pretrigger.user == 'foo'
43
    assert pretrigger.host == 'example.com'
44
    assert pretrigger.sender == Identifier('Foo')
45
46
47
def test_quit_pretrigger(nick):
@@ 19-30 (lines=12) @@
16
    return Identifier('Sopel')
17
18
19
def test_basic_pretrigger(nick):
20
    line = ':[email protected] PRIVMSG #Sopel :Hello, world'
21
    pretrigger = PreTrigger(nick, line)
22
    assert pretrigger.tags == {}
23
    assert pretrigger.hostmask == '[email protected]'
24
    assert pretrigger.line == line
25
    assert pretrigger.args == ['#Sopel', 'Hello, world']
26
    assert pretrigger.event == 'PRIVMSG'
27
    assert pretrigger.nick == Identifier('Foo')
28
    assert pretrigger.user == 'foo'
29
    assert pretrigger.host == 'example.com'
30
    assert pretrigger.sender == '#Sopel'
31
32
33
def test_pm_pretrigger(nick):