-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_hipchatclient.py
More file actions
77 lines (57 loc) · 2.43 KB
/
Copy pathtest_hipchatclient.py
File metadata and controls
77 lines (57 loc) · 2.43 KB
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import unittest
from mock import Mock
from hipchatclient import HipChat
class TestHipchatClient(unittest.TestCase):
def setUp(self):
self.room_name = 'room_name'
self.token = 'token'
self.queue = Mock()
self.client = HipChat(self.queue, self.token, self.room_name)
def test_init(self):
self.assertEqual(self.client.token, self.token)
self.assertEqual(self.client.room_name, self.room_name)
def test_get_rooms(self):
"""
Get rooms from Hipchat
>>> get_rooms()
[list of rooms]
"""
self.client.list_rooms = Mock(return_value={'rooms': [{'name': 'test', 'room_id': 1}, {'name': 'test1', 'room_id': 2}]})
rooms = self.client.get_rooms()
self.client.list_rooms.assert_called_with()
self.assertEqual(len(rooms), 2)
def test_get_extended_room_information(self):
"""
Get room info
>>> get_rooms('room_name')
{'name': 'room_name', 'room_id': 'room id'}
"""
self.client.get_room_information = Mock(return_value={'name': 'test1', 'room_id': 2})
self.client.method = Mock(return_value={'room': {'name': 'test1', 'room_id': 2, 'participants': ['test']}})
room = self.client.get_extended_room_information('room_name')
self.client.get_room_information.assert_called_with('room_name')
self.client.method.assert_called_with('rooms/show', method='GET', parameters={'room_id': 2})
self.assertEqual(room.get('room_id'), 2)
def test_get_room_information(self):
"""
Get room info
>>> get_rooms('room_name')
{'name': 'room_name', 'room_id': 'room id'}
"""
self.client.get_rooms = Mock(return_value=[{'name': 'test', 'room_id': 1}, {'name': 'test1', 'room_id': 2}])
room = self.client.get_room_information('test1')
self.assertEqual(room.get('room_id'), 2)
def test_get_participants(self):
"""
Get participants
>> get_participants()
[participants list]
"""
self.client.get_extended_room_information = Mock(return_value={'name': 'test1', 'room_id': 2, 'participants': ['test']})
participants = self.client.get_participants()
self.client.get_extended_room_information.assert_called_with('room_name')
self.assertEqual(len(participants), 1)
if __name__ == '__main__':
unittest.main()