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

Unified Diff: chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java

Issue 2740783004: Cleanup: Remove CategoryStatus::SIGNED_OUT (Closed)
Patch Set: review Created 3 years, 9 months 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/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java
index a3f36740f56e0e4e22b91349c427635d945ced5a..39397ca69b69be3d71edfbc94bb661d23a55d9ed 100644
--- a/chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/ntp/cards/NewTabPageAdapterTest.java
@@ -277,15 +277,18 @@ public class NewTabPageAdapterTest {
mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.AVAILABLE);
assertItemsFor(section(4));
- // When the category is disabled, the suggestions are cleared and we should go back to
- // the situation with the status card.
- mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.SIGNED_OUT);
- assertItemsFor(sectionWithStatusCard());
+ // When the category is disabled, the section should go away completely.
+ mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.CATEGORY_EXPLICITLY_DISABLED);
+ assertItemsFor();
- // The adapter should now be waiting for new suggestions.
+ // Now we're in the "all dismissed" state. No suggestions should be accepted.
suggestions = createDummySuggestions(6, TEST_CATEGORY);
mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.AVAILABLE);
mSource.setSuggestionsForCategory(TEST_CATEGORY, suggestions);
+ assertItemsFor();
+
+ // After a full refresh, the adapter should accept suggestions again.
+ mSource.fireFullRefreshRequired();
assertItemsFor(section(6));
}
@@ -306,20 +309,26 @@ public class NewTabPageAdapterTest {
suggestions.add(new SnippetArticle(TEST_CATEGORY, "https://site.com/url1", "title1", "pub1",
"txt1", "https://site.com/url1", 0, 0, 0));
- // When suggestion are disabled, we should not be able to load them.
- mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.SIGNED_OUT);
+ // When the provider is removed, we should not be able to load suggestions. The UI should
+ // stay the same though.
+ mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.NOT_PROVIDED);
mSource.setSuggestionsForCategory(TEST_CATEGORY, suggestions);
- assertItemsFor(sectionWithStatusCard());
+ assertItemsFor(section(3));
- // INITIALIZING lets us load suggestion still.
+ // INITIALIZING lets us load suggestions still.
mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.INITIALIZING);
mSource.setSuggestionsForCategory(TEST_CATEGORY, suggestions);
assertItemsFor(sectionWithStatusCard().withProgress());
- // The adapter should now be waiting for new suggestion and the fourth one should appear.
+ // The adapter should now be waiting for new suggestions and the fourth one should appear.
mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.AVAILABLE);
mSource.setSuggestionsForCategory(TEST_CATEGORY, suggestions);
assertItemsFor(section(4));
+
+ // When the category gets disabled, the section should go away and not load any suggestions.
+ mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.CATEGORY_EXPLICITLY_DISABLED);
+ mSource.setSuggestionsForCategory(TEST_CATEGORY, suggestions);
+ assertItemsFor();
}
/**
@@ -341,8 +350,10 @@ public class NewTabPageAdapterTest {
mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.AVAILABLE_LOADING);
assertTrue(progress.isVisible());
- mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.SIGNED_OUT);
- assertFalse(progress.isVisible());
+ // After the section gets disabled, it should gone completely, so checking the progress
+ // indicator doesn't make sense anymore.
+ mSource.setStatusForCategory(TEST_CATEGORY, CategoryStatus.CATEGORY_EXPLICITLY_DISABLED);
+ assertEquals(mAdapter.getSectionListForTesting().getSectionForTesting(TEST_CATEGORY), null);
}
/**
@@ -733,11 +744,12 @@ public class NewTabPageAdapterTest {
suggestionsSource.setSuggestionsForCategory(
TEST_CATEGORY, createDummySuggestions(0, TEST_CATEGORY));
mAdapter.getSectionListForTesting().onCategoryStatusChanged(
- TEST_CATEGORY, CategoryStatus.SIGNED_OUT);
- verify(dataObserver).onItemRangeRemoved(2, newSuggestionCount);
- verify(dataObserver).onItemRangeChanged(4, 1, null); // Spacer refresh
- verify(dataObserver).onItemRangeInserted(2, 1); // Status card added
- verify(dataObserver).onItemRangeChanged(5, 1, null); // Spacer refresh
+ TEST_CATEGORY, CategoryStatus.CATEGORY_EXPLICITLY_DISABLED);
+ // All suggestions as well as the header and the action should be gone.
+ verify(dataObserver).onItemRangeRemoved(1, newSuggestionCount + 2);
+ // The spacer gets refreshed twice: Once when the section is removed, and then again when
+ // the "all dismissed" item gets added.
+ verify(dataObserver, times(2)).onItemRangeChanged(2, 1, null);
}
@Test

Powered by Google App Engine
This is Rietveld 408576698