Skip to content

Commit 72affb5

Browse files
author
Shashank Bhargava
committed
make objects python3 compatible
1 parent fc21a03 commit 72affb5

File tree

6 files changed

+28
-0
lines changed

6 files changed

+28
-0
lines changed

slackclient/_channel.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ def __eq__(self, compare_str):
1111
else:
1212
return False
1313

14+
def __hash__(self):
15+
return hash(self.id)
16+
1417
def __str__(self):
1518
data = ""
1619
for key in list(self.__dict__.keys()):

slackclient/_im.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ def __eq__(self, compare_str):
1010
else:
1111
return False
1212

13+
def __hash__(self):
14+
return hash(self.id)
15+
1316
def __str__(self):
1417
data = ""
1518
for key in list(self.__dict__.keys()):

slackclient/_server.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ def __eq__(self, compare_str):
3131
else:
3232
return False
3333

34+
def __hash__(self):
35+
return hash(self.token)
36+
3437
def __str__(self):
3538
data = ""
3639
for key in list(self.__dict__.keys()):

slackclient/_user.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@ def __eq__(self, compare_str):
1212
else:
1313
return False
1414

15+
def __hash__(self):
16+
return hash(self.id)
17+
1518
def __str__(self):
1619
data = ""
1720
for key in list(self.__dict__.keys()):

tests/test_channel.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,16 @@ def test_channel_eq(channel):
1616
assert channel == 'C12345678'
1717
assert (channel == 'foo') is False
1818

19+
def test_channel_hash(channel):
20+
channel = Channel(
21+
'test-server',
22+
'test-channel',
23+
'C12345678',
24+
)
25+
channel_map = {channel: channel.id}
26+
assert channel_map[channel] == 'C12345678'
27+
assert (channel_map[channel] == 'foo') is False
28+
1929
@pytest.mark.xfail
2030
def test_channel_send_message(channel):
2131
channel.send_message('hi')

tests/test_server.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@ def test_Server(server):
1616
assert type(server) == Server
1717

1818

19+
def test_Server_hash(server):
20+
server_map = {server: server.token}
21+
assert server_map[server] == 'xoxp-1234123412341234-12341234-1234'
22+
assert (server_map[server] == 'foo') is False
23+
24+
1925
def test_Server_parse_channel_data(server, login_fixture):
2026
server.parse_channel_data(login_fixture["channels"])
2127
assert type(server.channels.find('general')) == Channel

0 commit comments

Comments
 (0)