    @Test
    public void test_HeadphonePluggedIn_WeatherClearStormy() {

        HeadphoneState headphoneState = Mockito.mock(HeadphoneState.class);
        doReturn(HeadphoneState.PLUGGED_IN).when(headphoneState).getState();
        doReturn(Single.just(headphoneState)).when(snapshot).getHeadphoneState();

        Weather weather = Mockito.mock(Weather.class);
        doReturn(new int[] {Weather.CONDITION_CLEAR, Weather.CONDITION_STORMY}).when(weather).getConditions();
        doReturn(Single.just(weather)).when(snapshot).getWeather();

        doReturn(Observable.empty()).when(fence).listenForStateChanges(Matchers.anyString(), Matchers.any(AwarenessFence.class));

        mainPresenter.getAwarenessData();

        verify(mainView, times(1)).onHeadphoneStateLoaded(Matchers.eq("Plugged In"));
        verify(mainView, times(1)).onWeatherLoaded(Matchers.eq("Clear, Stormy"));
    }