def test_change_vote_to_noskip(self): receivers.set_current_skip({ "number": 1, "skip": set(["fred"]), "noskip": set(), }) r = receivers.requested_noskip(None, content="noskip", user="******") self.assertEqual(r['content'], "fred voted to noskip! 4 more votes required")
def test_actually_skip(self): receivers.set_current_skip({ "number": 1, "skip": set(["fred", "tommy", "dave", "sarah"]), "noskip": set(), }) with mock.patch("random.choice") as choice: choice.side_effect = lambda x: x[0] with mock.patch("pubbot.squeezecenter.receivers.command") as command: r = receivers.requested_skip(None, content="skip", user="******") command.assert_called_with("playlist index +1") self.assertEqual(r['content'], "Good riddance.")
def test_timeout(self): with mock.patch("pubbot.squeezecenter.receivers.time") as time: with mock.patch("eventlet.sleep"): time.time.side_effect = [0, 0, 0, 0, 1000000] receivers.set_current_skip({}) receivers.timeout_current_skip()
def test_skip_in_progress(self): receivers.set_current_skip({}) r = receivers.requested_skip(None, content="skip 20", user="******") self.assertEqual(r['content'], "Vote already in progress; can't start another")
def test_set(self): skip = {"skip": set(["fred"])} receivers.set_current_skip(skip) skip = receivers.get_current_skip() self.assertTrue("last_update" in skip) self.assertEqual(skip["skip"], set(["fred"]))