-
Notifications
You must be signed in to change notification settings - Fork 1
/
test_ircholla.py
39 lines (27 loc) · 1.06 KB
/
test_ircholla.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import pytest
from ircholla import Holla
@pytest.fixture
def holla():
return Holla('irc.example.org:6667', '#test', 'nickname')
def test_holla_noport():
holla = Holla('irc.example.org', '#test', 'nickname')
assert holla.port == 6667
def test_handle_new_connection(holla):
holla._handle(':servername 001 :more stuff')
assert holla._deque.popleft() == ':source JOIN #test\n'
def test_handle_nick_inuse(holla):
holla._handle(':servername 433 :nick in use')
assert holla._deque.popleft().startswith('NICK nickname_')
assert holla._deque.popleft().startswith('USER nickname_')
def test_handle_join_msg(holla):
holla.notice = False
holla.message = 'test'
holla._handle(':server JOIN #test')
assert holla._deque.popleft().startswith('PRIVMSG')
assert holla._deque.popleft().startswith('QUIT')
def test_handle_join_notice(holla):
holla.notice = True
holla.message = 'test'
holla._handle(':server JOIN #test')
assert holla._deque.popleft().startswith('NOTICE')
assert holla._deque.popleft().startswith('QUIT')