def create_or_update_playlist(submission_period): if not submission_period or not is_deployed(): return if not submission_period.playlist_created: # Create new playlist and link to this submission period app.logger.info("Creating playlist for round: %s", submission_period.id) playlist = create_playlist(submission_period) if not playlist: if submission_period.all_tracks: app.logger.error('There was a problem creating the playlist with tracks: %s', submission_period.all_tracks) else: app.logger.warn('Playlist creation w/ 0 tracks prevented') return playlist_url = playlist['external_urls']['spotify'] submission_period.playlist_url = playlist_url upsert_round(submission_period) user_playlist_created_notification(submission_period) else: # Update existing playlist for this submission period app.logger.info("Updating playlist for round: %s", submission_period.id) playlist = update_playlist(submission_period) # TODO user_playlist_updated_notification(submission_period) return playlist
def test_send(self, messenger, email): sent = user_playlist_created_notification(self.submission_period) self.assertTrue(sent) email.assert_called_once_with(self.submission_period)
def test_no_users(self): self.league.users = [] self.league.save() sent = user_playlist_created_notification(self.submission_period) self.assertFalse(sent)
def test_no_submission_period(self): sent = user_playlist_created_notification(None) self.assertFalse(sent)