def test_play_new_radio_anonymous_user(self): pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.play(self.anonymous_user, self.radio_to_play2, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play2.name)
def test_not_expropriating_while_the_same_radio(self): pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.play(self.test_user, self.radio_to_play, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name)
def test_play_pause_resume_stop_anonymous_user(self): pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.pause(self.anonymous_user, dry_run=True) self.assertEqual(pm.status, pm.PAUSED) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by.username, self.anonymous_user.username) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.pause(self.anonymous_user, dry_run=True) self.assertEqual(pm.status, pm.PAUSED) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by.username, self.anonymous_user.username) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.resume(self.anonymous_user, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.resume(self.anonymous_user, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.anonymous_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play.name) pm.stop(self.anonymous_user, dry_run=True) self.assertEqual(pm.status, pm.IDLE) self.assertEqual(pm.started_by, None) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now, None)
def test_expropriating(self): pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) pm.play(self.test_user, self.radio_to_play2, dry_run=True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.test_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play2.name) self.assertRaises(NotPermittedException, pm.play, self.anonymous_user, self.radio_to_play, True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.test_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play2.name) self.assertRaises(NotPermittedException, pm.stop, self.anonymous_user, True) self.assertEqual(pm.status, pm.PLAYING) self.assertEqual(pm.started_by.username, self.test_user.username) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now.name, self.radio_to_play2.name) pm.stop(self.test_user, dry_run=True) pm.play(self.anonymous_user, self.radio_to_play, dry_run=True) pm.stop(self.test_user, dry_run=True) self.assertEqual(pm.status, pm.IDLE) self.assertEqual(pm.started_by, None) self.assertEqual(pm.paused_by, None) self.assertEqual(pm.playing_now, None)
def radio_play(radio_id): pm.play(current_user, Radio.query.get(radio_id))