@@ -0,0 +1,2866 @@
+package com.nononsenseapps.filepicker.sample;%0A%0A%0Aimport android.support.test.espresso.ViewInteraction;%0Aimport android.support.test.espresso.action.ViewActions;%0Aimport android.support.test.rule.ActivityTestRule;%0Aimport android.support.test.runner.AndroidJUnit4;%0Aimport android.test.suitebuilder.annotation.LargeTest;%0A%0Aimport org.junit.Before;%0Aimport org.junit.Rule;%0Aimport org.junit.Test;%0Aimport org.junit.runner.RunWith;%0A%0Aimport java.io.IOException;%0A%0Aimport static android.support.test.espresso.Espresso.onView;%0Aimport static android.support.test.espresso.action.ViewActions.click;%0Aimport static android.support.test.espresso.action.ViewActions.replaceText;%0Aimport static android.support.test.espresso.assertion.ViewAssertions.matches;%0Aimport static android.support.test.espresso.contrib.RecyclerViewActions.actionOnItemAtPosition;%0Aimport static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;%0Aimport static android.support.test.espresso.matcher.ViewMatchers.withId;%0Aimport static android.support.test.espresso.matcher.ViewMatchers.withParent;%0Aimport static android.support.test.espresso.matcher.ViewMatchers.withText;%0Aimport static com.nononsenseapps.filepicker.sample.PermissionGranter.allowPermissionsIfNeeded;%0Aimport static org.hamcrest.Matchers.allOf;%0A%0A@LargeTest%0A@RunWith(AndroidJUnit4.class)%0Apublic class FtpPicker %7B%0A%0A    @Rule%0A    public ActivityTestRule%3CNoNonsenseFilePickerTest%3E mActivityTestRule =%0A            new ActivityTestRule%3C%3E(NoNonsenseFilePickerTest.class);%0A%0A    @Before%0A    public void allowPermissions() %7B%0A        allowPermissionsIfNeeded(mActivityTestRule.getActivity());%0A    %7D%0A%0A    @Test%0A    public void selectDir() throws IOException %7B%0A        ViewInteraction radioButton = onView(%0A                allOf(withId(R.id.radioDir), withText(%22Select directory%22),%0A                        withParent(withId(R.id.radioGroup)),%0A                        isDisplayed()));%0A        radioButton.perform(click());%0A%0A        onView(withId(R.id.button_ftp)).perform(ViewActions.scrollTo());%0A%0A        ViewInteraction button = onView(%0A                allOf(withId(R.id.button_ftp), isDisplayed()));%0A        button.perform(click());%0A%0A        ViewInteraction recyclerView = onView(%0A                allOf(withId(android.R.id.list), isDisplayed()));%0A%0A        // press pub%0A        recyclerView.perform(actionOnItemAtPosition(1, click()));%0A%0A        ViewInteraction okButton = onView(%0A                allOf(withId(R.id.nnf_button_ok),%0A                        withParent(allOf(withId(R.id.nnf_button_container),%0A                                withParent(withId(R.id.nnf_buttons_container)))),%0A                        isDisplayed()));%0A        // Click ok%0A        okButton.perform(click());%0A%0A        ViewInteraction textView = onView(withId(R.id.text));%0A        textView.check(matches(withText(%22ftp://anonymous:anonymous@debian.simnet.is:21/pub%22)));%0A    %7D%0A%7D%0A

Add test for ftp picker