Dbrant has submitted this change and it was merged.
Change subject: Display native Read more section
..
Display native Read more section
Hidden on Main page, since there we don't get useful results.
Hooked up backend task and event logging.
Change-Id: Idbe51ef33b24fd35383565b48331ef4461e4137e
---
M wikipedia-it/src/main/java/org/wikipedia/test/SuggestionsTaskTests.java
M wikipedia/res/layout/fragment_page.xml
M wikipedia/src/main/java/org/wikipedia/page/PageViewFragmentInternal.java
M wikipedia/src/main/java/org/wikipedia/page/SuggestionsTask.java
M
wikipedia/src/main/java/org/wikipedia/page/bottomcontent/BottomContentHandler.java
M wikipedia/src/main/java/org/wikipedia/search/FullSearchArticlesTask.java
6 files changed, 256 insertions(+), 26 deletions(-)
Approvals:
Dbrant: Looks good to me, approved
jenkins-bot: Verified
diff --git
a/wikipedia-it/src/main/java/org/wikipedia/test/SuggestionsTaskTests.java
b/wikipedia-it/src/main/java/org/wikipedia/test/SuggestionsTaskTests.java
index b143bfd..e1ae90d 100644
--- a/wikipedia-it/src/main/java/org/wikipedia/test/SuggestionsTaskTests.java
+++ b/wikipedia-it/src/main/java/org/wikipedia/test/SuggestionsTaskTests.java
@@ -4,9 +4,13 @@
import org.wikipedia.Site;
import org.wikipedia.WikipediaApp;
import org.wikipedia.page.SuggestionsTask;
+import org.wikipedia.search.FullSearchArticlesTask;
import android.content.Intent;
import android.test.ActivityUnitTestCase;
+
+import java.util.ArrayList;
+import java.util.List;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
@@ -18,23 +22,25 @@
private static final int BATCH_SIZE = 3;
private static final Site SITE = new Site(test.wikipedia.org);
+private WikipediaApp app;
+
public SuggestionsTaskTests() {
super(TestDummyActivity.class);
}
-public void testFullTextSearchWithResults() throws Throwable {
+@Override
+public void setUp() throws Exception {
+super.setUp();
startActivity(new Intent(), null, null);
+app = (WikipediaApp)
getInstrumentation().getTargetContext().getApplicationContext();
+}
+
+public void testTask() throws Throwable {
final CountDownLatch completionLatch = new CountDownLatch(1);
runTestOnUiThread(new Runnable() {
@Override
public void run() {
-final WikipediaApp app = (WikipediaApp)
getInstrumentation().getTargetContext().getApplicationContext();
new SuggestionsTask(app.getAPIForSite(SITE), SITE, test) {
-@Override
-public void onCatch(Throwable caught) {
-super.onCatch(caught);
-}
-
@Override
public void onFinish(FullSearchResults results) {
assertNotNull(results);
@@ -50,4 +56,41 @@
});
assertTrue(completionLatch.await(TASK_COMPLETION_TIMEOUT,
TimeUnit.MILLISECONDS));
}
+
+//
+// unit tests:
+//
+
+public void testFilterNoResults() throws Throwable {
+ListPageTitle originalResults = new ArrayListPageTitle();
+checkFilter(0, originalResults);
+}
+
+public void testFilter1ResultSameAsTitleIgnoreCase() throws Throwable {
+ListPageTitle originalResults = new ArrayListPageTitle();
+originalResults.add(new PageTitle(Test, SITE, null, null));
+checkFilter(0, originalResults);
+}
+
+public void testFilter1ResultDifferentFromTitle() throws Throwable {
+ListPageTitle originalResults = new ArrayListPageTitle();
+originalResults.add(new PageTitle(something else, SITE, null, null));
+checkFilter(1, originalResults);
+}
+
+public void testFilter4ResultsDifferentFromTitle() throws Throwable {
+ListPageTitle originalResults = new ArrayListPageTitle();
+originalResults.add(new PageTitle(something else, SITE, null, null));
+originalResults.add(new PageTitle(something else, SITE, null, null));
+originalResults.add(new PageTitle(something else, SITE, null, null));
+originalResults.add(new PageTitle(something else, SITE, null, null));
+checkFilter(BATCH_SIZE, originalResults);
+}
+
+private void checkFilter(int expected, ListPageTitle originalResults) {
+SuggestionsTask task = new SuggestionsTask(app.getAPIForSite(SITE),
SITE, test);
+FullSearchArticlesTask.FullSearchResults searchResults = new
FullSearchArticlesTask.FullSearchResults(originalResults, null, null);
+ListPageTitle filteredList =
task.filterResults(searchResults).getResults();
+assertEquals(expected, filteredList.size());
+}
}
diff --git a/wikipedia/res/layout/fragment_page.xml
b/wikipedia/res/layout/fragment_page.xml
index c17df72..402ca01 100644
--- a/wikipedia/res/layout/fragment_page.xml
+++