def test_start_poptop_without_song_upload(self, mock_send_msg, mock_sort, mock_check_args, mock_admin): poll = Mock() request_form = Mock() client = Mock() mock_admin.return_value = True poll.is_started = True poll.is_music_upload = False mock_check_args.return_value = 1 mock_sort.return_value = [{ 'title': 'TestTitle', 'artist': 'TestArtist', 'link': None, 'voted_users': [] }] start_poptop(client, poll, request_form) assert mock_send_msg.called
def handle_commands(client: WebClient, poll: Poll, request_form: dict) -> None: """ Function, that will handle all the commands that is going to be sent to the bot. """ command = request_form.get('command') if command == '/disco': start_disco(client, poll, request_form) elif command == '/lightsoff': start_lightsoff(client, poll, request_form) elif command == '/poptop': start_poptop(client, poll, request_form) elif command == '/top': start_top(client, poll, request_form) elif command == '/poll_status': start_poll_status(client, poll, request_form) elif command == '/settings': start_settings(client, poll, request_form) elif command == '/drop': start_drop(client, poll, request_form) elif command == '/resume': start_resume(client, poll, request_form)
def test_start_poptop_with_song_upload(mocker, mocked_started_poll): mocked_admin = mocker.patch('handlers.decorators.is_admin') mocked_check_args = mocker.patch( 'handlers.commands.poptop.check_poptop_argument') mocked_sort_songs = mocker.patch('handlers.commands.poptop.sort_songs') mocked_upload_songs = mocker.patch('handlers.commands.poptop.upload_song') request_form = Mock() client = Mock() mocked_admin.return_value = True mocked_check_args.return_value = 1 mocked_sort_songs.return_value = [{ 'title': 'TestTitle', 'artist': 'TestArtist', 'link': None, 'voted_users': [] }] start_poptop(client, mocked_started_poll, request_form) assert mocked_upload_songs.called