def test_extract_slack_socket_reponse_returns_none_when_non_exiterror_slack_socket_exception_occurs( slacksocket_error, ): # Given mock_iterator = MockIterator(injectable_exception=slacksocket_error) mock_slack_socket = MockSlackSocket() mock_slack_socket.mock_iterator = mock_iterator sut = SimpleSlackBot("mock slack bot token") sut._slack_socket = mock_slack_socket expected_response = None # When actual_response = sut.extract_slack_socket_response() # Then assert expected_response == actual_response
def test_listen_stops_listening_when_slack_socket_keyboard_interrupt_exception_occurs( caplog, ): # Given mock_iterator = MockIterator( injectable_exception=slacksocket.errors.ExitError) mock_slack_socket = MockSlackSocket() mock_slack_socket.mock_iterator = mock_iterator sut = SimpleSlackBot("mock slack bot token") sut._slack_socket = mock_slack_socket # When with caplog.at_level(logging.INFO): sut.listen() # Then assert SimpleSlackBot.KEYBOARD_INTERRUPT_EXCEPTION_LOG_MESSAGE in caplog.text
def test_extract_slack_socket_reponse_returns_response_when_no_exception_is_raised( ): # Given mock_iterator = MockIterator(injectable_yield=42) mock_slack_socket = MockSlackSocket() mock_slack_socket.mock_iterator = mock_iterator sut = SimpleSlackBot("mock slack bot token") sut._slack_socket = mock_slack_socket expected_first_value = 42 expected_second_value_type = typing.Iterable # When actual_response = sut.extract_slack_socket_response() # Then assert expected_first_value == actual_response[0] assert isinstance(actual_response[1], expected_second_value_type)