diff --git a/irctest/cases.py b/irctest/cases.py index 74c32818..b5f810f1 100644 --- a/irctest/cases.py +++ b/irctest/cases.py @@ -267,6 +267,8 @@ def addClient(self, name=None, show_io=None): self.clients[name] = client_mock.ClientMock(name=name, show_io=show_io) self.clients[name].connect(self.hostname, self.port) + if self.ssl: + self.clients[name].starttls() return name diff --git a/irctest/client_mock.py b/irctest/client_mock.py index f99cc3c4..6de51579 100644 --- a/irctest/client_mock.py +++ b/irctest/client_mock.py @@ -97,7 +97,7 @@ def sendLine(self, line): except BrokenPipeError: raise ConnectionClosed() if self.ssl: # https://bugs.python.org/issue25951 - assert ret == len(encoded_line), (ret, repr(encoded_line)) + assert ret is None or ret == len(encoded_line), (ret, repr(encoded_line)) else: assert ret is None, ret if self.show_io: diff --git a/irctest/server_tests/test_regressions.py b/irctest/server_tests/test_regressions.py index df1fbb5f..20aa0fd4 100644 --- a/irctest/server_tests/test_regressions.py +++ b/irctest/server_tests/test_regressions.py @@ -52,7 +52,7 @@ def testCaseChanges(self): @cases.SpecificationSelector.requiredBySpecification('IRCv3.2') def testTagCap(self): # regression test for oragono #754 - self.connectClient('alice', capabilities=['message-tags', 'batch', 'echo-message', 'server-time']) + self.connectClient('alice', capabilities=['message-tags', 'batch', 'echo-message', 'server-time'], skip_if_cap_nak=True) self.connectClient('bob') self.getMessages(1) self.getMessages(2) diff --git a/irctest/server_tests/test_user_commands.py b/irctest/server_tests/test_user_commands.py index 55d6539c..235e3f5b 100644 --- a/irctest/server_tests/test_user_commands.py +++ b/irctest/server_tests/test_user_commands.py @@ -27,7 +27,7 @@ def testWhoisUser(self): self.assertEqual(whois_user.command, RPL_WHOISUSER) # " * :" self.assertEqual(whois_user.params[1], nick) - self.assertEqual(whois_user.params[2], '~' + username) + self.assertIn(whois_user.params[2], ['~' + username, username]) # dumb regression test for oragono/oragono#355: self.assertNotIn(whois_user.params[3], [nick, username, '~' + username, realname]) self.assertEqual(whois_user.params[5], realname)