This commit is contained in:
Shivaram Lingamneni 2020-07-06 04:07:21 -04:00
parent b54a1b1455
commit d1f15fb05c
2 changed files with 23 additions and 23 deletions

View File

@ -31,9 +31,9 @@ class ChathistoryTestCase(cases.BaseServerTestCase):
@cases.SpecificationSelector.requiredBySpecification('Oragono')
def testEmptyBatch(self):
bar = random_name('bar')
self.controller.registerUser(self, bar, bar)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time'], password=bar)
bar, pw = random_name('bar'), random_name('pw')
self.controller.registerUser(self, bar, pw)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time'], password=pw)
self.getMessages(bar)
# no chathistory results SHOULD result in an empty batch:
@ -43,9 +43,9 @@ class ChathistoryTestCase(cases.BaseServerTestCase):
@cases.SpecificationSelector.requiredBySpecification('Oragono')
def testMessagesToSelf(self):
bar = random_name('bar')
self.controller.registerUser(self, bar, bar)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time'], password=bar)
bar, pw = random_name('bar'), random_name('pw')
self.controller.registerUser(self, bar, pw)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time'], password=pw)
self.getMessages(bar)
messages = []
@ -118,10 +118,10 @@ class ChathistoryTestCase(cases.BaseServerTestCase):
def testChathistoryDMs(self):
c1 = secrets.token_hex(12)
c2 = secrets.token_hex(12)
self.controller.registerUser(self, c1, c1)
self.controller.registerUser(self, c2, c2)
self.connectClient(c1, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password=c1)
self.connectClient(c2, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password=c2)
self.controller.registerUser(self, c1, 'sesame1')
self.controller.registerUser(self, c2, 'sesame2')
self.connectClient(c1, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password='sesame1')
self.connectClient(c2, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password='sesame2')
self.getMessages(1)
self.getMessages(2)
@ -167,8 +167,8 @@ class ChathistoryTestCase(cases.BaseServerTestCase):
self.sendLine(3, 'QUIT')
self.assertDisconnected(3)
# register c3 as an account, then attempt to retrieve the conversation history with c1
self.controller.registerUser(self, c3, c3)
self.connectClient(c3, name=c3, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password=c3)
self.controller.registerUser(self, c3, 'sesame3')
self.connectClient(c3, name=c3, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password='sesame3')
self.getMessages(c3)
self.sendLine(c3, 'CHATHISTORY LATEST %s * 10' % (c1,))
results = [to_history_message(msg) for msg in self.getMessages(c3) if msg.command == 'PRIVMSG']
@ -272,10 +272,10 @@ class ChathistoryTestCase(cases.BaseServerTestCase):
c1 = secrets.token_hex(12)
c2 = secrets.token_hex(12)
chname = '#' + secrets.token_hex(12)
self.controller.registerUser(self, c1, c1)
self.controller.registerUser(self, c2, c2)
self.connectClient(c1, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password=c1)
self.connectClient(c2, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP,], password=c2)
self.controller.registerUser(self, c1, 'sesame1')
self.controller.registerUser(self, c2, 'sesame2')
self.connectClient(c1, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP, EVENT_PLAYBACK_CAP], password='sesame1')
self.connectClient(c2, capabilities=['message-tags', 'server-time', 'echo-message', 'batch', 'labeled-response', CHATHISTORY_CAP,], password='sesame2')
self.joinChannel(1, chname)
self.joinChannel(2, chname)
self.getMessages(1)

View File

@ -15,9 +15,9 @@ class ZncPlaybackTestCase(cases.BaseServerTestCase):
early_time = int(time.time() - 60)
chname = random_name('#znc_channel')
bar = random_name('bar')
self.controller.registerUser(self, bar, bar)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=bar)
bar, pw = random_name('bar'), random_name('pass')
self.controller.registerUser(self, bar, pw)
self.connectClient(bar, name=bar, capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=pw)
self.joinChannel(bar, chname)
qux = random_name('qux')
@ -39,7 +39,7 @@ class ZncPlaybackTestCase(cases.BaseServerTestCase):
self.getMessages(bar)
# reattach to 'bar'
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=bar)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=pw)
self.sendLine('viewer', 'PRIVMSG *playback :play * %d' % (early_time,))
messages = [to_history_message(msg) for msg in self.getMessages('viewer') if msg.command == 'PRIVMSG']
self.assertEqual(set(messages), set([dm] + echo_messages))
@ -47,7 +47,7 @@ class ZncPlaybackTestCase(cases.BaseServerTestCase):
self.assertDisconnected('viewer')
# reattach to 'bar', play back selectively
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=bar)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=pw)
mid_timestamp = ircv3_timestamp_to_unixtime(echo_messages[5].time)
# exclude message 5 itself (oragono's CHATHISTORY implementation corrects for this, but znc.in/playback does not because whatever)
mid_timestamp += .001
@ -58,7 +58,7 @@ class ZncPlaybackTestCase(cases.BaseServerTestCase):
self.assertDisconnected('viewer')
# reattach to 'bar', play back selectively (pass a parameter and 2 timestamps)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=bar)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=pw)
start_timestamp = ircv3_timestamp_to_unixtime(echo_messages[2].time)
start_timestamp += .001
end_timestamp = ircv3_timestamp_to_unixtime(echo_messages[7].time)
@ -79,7 +79,7 @@ class ZncPlaybackTestCase(cases.BaseServerTestCase):
config = self.controller.getConfig()
config['history']['znc-maxmessages'] = 5
self.controller.rehash(self, config)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=bar)
self.connectClient(bar, name='viewer', capabilities=['batch', 'labeled-response', 'message-tags', 'server-time', 'echo-message'], password=pw)
self.sendLine('viewer', 'PRIVMSG *playback :play %s %d' % (chname, int(time.time() - 60)))
messages = [to_history_message(msg) for msg in self.getMessages('viewer') if msg.command == 'PRIVMSG']
# should receive the latest 5 messages