def test_auto_mode_raises_when_board_not_found_offline_with_no_network(self, mock_env, mocked_boards): mock_env.MBED_DATABASE_MODE = "AUTO" mocked_boards.from_offline_database().get_board.side_effect = UnknownBoard mocked_boards.from_online_database().get_board.side_effect = BoardAPIError fn = mock.Mock() with pytest.raises(UnknownBoard): get_board(fn) mocked_boards.from_offline_database().get_board.assert_called_once_with(fn) mocked_boards.from_online_database().get_board.assert_called_once_with(fn)
def test_offline_mode(self, mock_env, mocked_boards): mock_env.MBED_DATABASE_MODE = "OFFLINE" fn = mock.Mock() subject = get_board(fn) assert subject == mocked_boards.from_offline_database().get_board.return_value mocked_boards.from_offline_database().get_board.assert_called_once_with(fn)
def test_auto_mode_calls_offline_boards_first(self, mock_env, mocked_boards): mock_env.MBED_DATABASE_MODE = "AUTO" fn = mock.Mock() subject = get_board(fn) assert subject == mocked_boards.from_offline_database().get_board.return_value mocked_boards.from_online_database().get_board.assert_not_called() mocked_boards.from_offline_database().get_board.assert_called_once_with(fn)
def test_auto_mode_falls_back_to_online_database_when_board_not_found(self, mock_env, mocked_boards): mock_env.MBED_DATABASE_MODE = "AUTO" mocked_boards.from_offline_database().get_board.side_effect = UnknownBoard fn = mock.Mock() subject = get_board(fn) assert subject == mocked_boards.from_online_database().get_board.return_value mocked_boards.from_offline_database().get_board.assert_called_once_with(fn) mocked_boards.from_online_database().get_board.assert_called_once_with(fn)
def test_online_mode(self, env, mocked_boards): env.MBED_DATABASE_MODE = "ONLINE" fn = mock.Mock() subject = get_board(fn) self.assertEqual( subject, mocked_boards.from_online_database().get_board.return_value) mocked_boards.from_online_database().get_board.assert_called_once_with( fn)