Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java

Issue 1440623004: [Enhanced Bookmark]Rewrite initialization logic (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added another class: EBUIState. All EB will be remaned to B this month. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java
index 01deb04d405a9cc834c9755b2206e5ccc1990dd8..8c7f09af0af682b2901ab61d37a7ce37c3ae9624 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java
@@ -4,6 +4,8 @@
package org.chromium.chrome.browser.enhancedbookmarks;
+import android.content.Intent;
+import android.net.Uri;
import android.test.suitebuilder.annotation.SmallTest;
import android.text.TextUtils;
import android.view.View;
@@ -48,7 +50,7 @@ public class EnhancedBookmarkTest extends ChromeActivityTestCaseBase<ChromeActiv
private static final String TEST_PAGE_TITLE = "The Google";
private EnhancedBookmarksModel mBookmarkModel;
- private EnhancedBookmarkRecyclerView mItemsContainer;
+ protected EnhancedBookmarkRecyclerView mItemsContainer;
@Override
public void startMainActivity() throws InterruptedException {
@@ -105,6 +107,28 @@ public class EnhancedBookmarkTest extends ChromeActivityTestCaseBase<ChromeActiv
}
}
+ private void openBookmarkManager(final String url) throws InterruptedException {
+ if (DeviceFormFactor.isTablet(getActivity())) {
+ loadUrl(url);
+ mItemsContainer = (EnhancedBookmarkRecyclerView) getActivity().findViewById(
+ R.id.eb_items_container);
+ } else {
+ // phone
+ EnhancedBookmarkActivity activity = ActivityUtils.waitForActivity(getInstrumentation(),
+ EnhancedBookmarkActivity.class, new Runnable() {
+ @Override
+ public void run() {
+ Intent intent = new Intent(getActivity(),
+ EnhancedBookmarkActivity.class);
+ intent.setData(Uri.parse(url));
+ getActivity().startActivity(intent);
+ }
+ });
+ mItemsContainer = (EnhancedBookmarkRecyclerView) activity.findViewById(
+ R.id.eb_items_container);
+ }
+ }
+
private boolean isItemPresentInBookmarkList(final String expectedTitle) {
return ThreadUtils.runOnUiThreadBlockingNoException(new Callable<Boolean>() {
@Override
@@ -166,4 +190,56 @@ public class EnhancedBookmarkTest extends ChromeActivityTestCaseBase<ChromeActiv
});
assertEquals(TEST_PAGE_TITLE, getActivity().getActivityTab().getTitle());
}
+
+ @SmallTest
+ public void testUrlComposition() {
+ BookmarkId mobileId = mBookmarkModel.getMobileFolderId();
+ BookmarkId bookmarkBarId = mBookmarkModel.getDesktopFolderId();
+ BookmarkId otherId = mBookmarkModel.getOtherFolderId();
+ assertEquals("chrome-native://bookmarks/folder/" + mobileId,
+ EnhancedBookmarkUIState.createFolderUrl(mobileId));
+ assertEquals("chrome-native://bookmarks/folder/" + bookmarkBarId,
+ EnhancedBookmarkUIState.createFolderUrl(bookmarkBarId));
+ assertEquals("chrome-native://bookmarks/folder/" + otherId,
+ EnhancedBookmarkUIState.createFolderUrl(otherId));
+
+ assertEquals("chrome-native://bookmarks/filter/OFFLINE_PAGES", EnhancedBookmarkUIState
+ .createFilterUrl(EnhancedBookmarkFilter.OFFLINE_PAGES, true));
+ assertEquals(
+ "chrome-native://bookmarks/filter/OFFLINE_PAGES?should_persist=0",
+ EnhancedBookmarkUIState.createFilterUrl(EnhancedBookmarkFilter.OFFLINE_PAGES,
+ false));
+ }
+
+ @SmallTest
+ public void testOpenBookmarkManager() throws InterruptedException {
+ openBookmarkManager();
+ EnhancedBookmarkDelegate delegate = mItemsContainer.getDelegateForTesting();
+ assertEquals(EnhancedBookmarkUIState.STATE_ALL_BOOKMARKS, delegate.getCurrentState());
+ assertEquals(UrlConstants.BOOKMARKS_URL,
+ EnhancedBookmarkUtils.getLastUsedUrl(getActivity()));
+ }
+
+ @SmallTest
+ @CommandLineFlags.Add(ChromeSwitches.ENABLE_OFFLINE_PAGES)
+ public void testOpenBookmarkManagerInOfflinePagePersist() throws InterruptedException {
+ EnhancedBookmarkUtils.setLastUsedUrl(getActivity(), UrlConstants.BOOKMARKS_URL);
+ String url = "chrome-native://bookmarks/filter/OFFLINE_PAGES";
+ openBookmarkManager(url);
+ EnhancedBookmarkDelegate delegate = mItemsContainer.getDelegateForTesting();
+ assertEquals(EnhancedBookmarkUIState.STATE_FILTER, delegate.getCurrentState());
+ assertEquals(url, EnhancedBookmarkUtils.getLastUsedUrl(getActivity()));
+ }
+
+ @SmallTest
+ @CommandLineFlags.Add(ChromeSwitches.ENABLE_OFFLINE_PAGES)
+ public void testOpenBookmarkManagerInOfflinePageNoPersist() throws InterruptedException {
+ EnhancedBookmarkUtils.setLastUsedUrl(getActivity(), UrlConstants.BOOKMARKS_URL);
+ String url = "chrome-native://bookmarks/filter/OFFLINE_PAGES?should_persist=0";
+ openBookmarkManager(url);
+ EnhancedBookmarkDelegate delegate = mItemsContainer.getDelegateForTesting();
+ assertEquals(EnhancedBookmarkUIState.STATE_FILTER, delegate.getCurrentState());
+ assertEquals(UrlConstants.BOOKMARKS_URL,
+ EnhancedBookmarkUtils.getLastUsedUrl(getActivity()));
+ }
}

Powered by Google App Engine
This is Rietveld 408576698