Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1c8244f8 authored by Zemiao Zhu's avatar Zemiao Zhu
Browse files

Make sure SearchFragment was dismissed when closing search.

Bug: 160955461
Test: atest DocumentsUIGoogleTests
Change-Id: I431ebfa095b51632eb3a794bb16ec02789cd0aec
parent e43360c5
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -420,6 +420,11 @@ public class SearchViewManager implements

        // Refresh the directory if a search was done
        if (mCurrentSearch != null || mChipViewManager.hasCheckedItems()) {
            // Make sure SearchFragment was dismissed.
            if (mFragmentManager != null) {
                SearchFragment.dismissFragment(mFragmentManager);
            }

            // Clear checked chips
            mChipViewManager.clearCheckedChips();
            mCurrentSearch = null;
+16 −0
Original line number Diff line number Diff line
@@ -92,6 +92,18 @@ public class SearchBot extends Bots.BaseBot {
        }
    }

    public void assertSearchHistoryVisible(boolean visible) {
        if (visible) {
            assertTrue(
                    "Search fragment should be shown.",
                    findSearchHistoryView().exists());
        } else {
            assertFalse(
                    "Search fragment should be dismissed.",
                    findSearchHistoryView().exists());
        }
    }

    public void assertInputEquals(String query)
            throws UiObjectNotFoundException {
        UiObject textField = findSearchViewTextField();
@@ -117,6 +129,10 @@ public class SearchBot extends Bots.BaseBot {
        return findObject(mTargetPackage + ":id/option_menu_search");
    }

    private UiObject findSearchHistoryView() {
        return findObject(mTargetPackage + ":id/history_list");
    }

    private UiObject findSearchViewTextField() {
        return findObject(mTargetPackage + ":id/option_menu_search",
                mTargetPackage + ":id/search_src_text");
+17 −0
Original line number Diff line number Diff line
@@ -100,6 +100,23 @@ public class SearchViewUiTest extends ActivityTest<FilesActivity> {
        bots.search.assertInputExists(false);
    }

    public void testSearchFragment_DismissedOnCloseAfterCancel() throws Exception {
        bots.search.clickIcon();
        bots.search.setInputText("query text");

        // Cancel search
        device.pressBack();
        device.waitForIdle();

        // Close search
        device.pressBack();
        device.waitForIdle();

        bots.search.assertIconVisible(true);
        bots.search.assertInputExists(false);
        bots.search.assertSearchHistoryVisible(false);
    }

    public void testSearchView_ClearsTextOnBack() throws Exception {
        bots.search.clickIcon();
        bots.search.setInputText("file2");