[MediaWiki-commits] [Gerrit] Fix NPE in PageLoadPerformanceTests - change (apps...wikipedia)

2015-09-14 Thread Niedzielski (Code Review)
Niedzielski has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/238170

Change subject: Fix NPE in PageLoadPerformanceTests
..

Fix NPE in PageLoadPerformanceTests

Minor refactoring of PageLoadPerformanceTests to replace member
variables with locals. CI reported a rare test failure[0] I hope the new
nonnullness guarantees fix.

[0] 
https://integration.wikimedia.org/ci/job/apps-android-wikipedia-test/20/artifact/logcat.txt/*view*/

Change-Id: I28aa725812e895d808628df8235fa05a76c336a7
---
M app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
1 file changed, 24 insertions(+), 22 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia 
refs/changes/70/238170/1

diff --git 
a/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
 
b/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
index 8c58de0..9377786 100644
--- 
a/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
+++ 
b/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
@@ -18,19 +18,7 @@
 public class PageLoadPerformanceTests extends 
ActivityInstrumentationTestCase2 {
 private static final int TASK_COMPLETION_TIMEOUT = (int) 
TimeUnit.SECONDS.toMillis(30);
 private static final int NUM_RUNS = 1; //50;
-private PageActivity activity;
-private CountDownLatch completionLatch;
-private PageFragment fragment;
-private String title;
-private MeasurementController measurement = new MeasurementController();
-
-private PageLoadCallbacks callback = new PageLoadCallbacks() {
-@Override
-public void onLoadComplete() {
-measurement.stop(title);
-completionLatch.countDown();
-}
-};
+private final MeasurementController measurement = new 
MeasurementController();
 
 public PageLoadPerformanceTests() {
 super(PageActivity.class);
@@ -39,7 +27,9 @@
 @Override
 protected void setUp() throws Exception {
 super.setUp();
-activity = getActivity();
+
+// Launch Activity.
+getActivity();
 }
 
 public void testLoadPages() throws Throwable {
@@ -51,24 +41,36 @@
 }
 
 private void loadPageMultipleTimes(String title) throws Throwable {
-this.title = title;
 for (int i = 0; i < NUM_RUNS; i++) {
-loadPageUi();
+loadPageUi(title);
 }
 }
 
-private void loadPageUi() throws Throwable {
-completionLatch = new CountDownLatch(1);
+private void loadPageUi(final String title) throws Throwable {
+final CountDownLatch latch = new CountDownLatch(1);
 getInstrumentation().runOnMainSync(new Runnable() {
 @Override
 public void run() {
-fragment = (PageFragment) activity.getTopFragment();
-fragment.setPageLoadCallbacks(callback);
+getFragment().setPageLoadCallbacks(newCallbacks(title, latch));
 
 measurement.start(title);
-PageLoadTests.loadPage(fragment, title);
+PageLoadTests.loadPage(getFragment(), title);
 }
 });
-assertTrue(completionLatch.await(TASK_COMPLETION_TIMEOUT, 
TimeUnit.MILLISECONDS));
+assertTrue(latch.await(TASK_COMPLETION_TIMEOUT, 
TimeUnit.MILLISECONDS));
+}
+
+private PageLoadCallbacks newCallbacks(final String title, final 
CountDownLatch latch) {
+return new PageLoadCallbacks() {
+@Override
+public void onLoadComplete() {
+measurement.stop(title);
+latch.countDown();
+}
+};
+}
+
+private PageFragment getFragment() {
+return (PageFragment) getActivity().getTopFragment();
 }
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/238170
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I28aa725812e895d808628df8235fa05a76c336a7
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Niedzielski 

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits


[MediaWiki-commits] [Gerrit] Fix NPE in PageLoadPerformanceTests - change (apps...wikipedia)

2015-09-14 Thread jenkins-bot (Code Review)
jenkins-bot has submitted this change and it was merged.

Change subject: Fix NPE in PageLoadPerformanceTests
..


Fix NPE in PageLoadPerformanceTests

Minor refactoring of PageLoadPerformanceTests to replace member
variables with locals. CI reported a rare test failure[0] I hope the new
nonnullness guarantees fix.

[0] 
https://integration.wikimedia.org/ci/job/apps-android-wikipedia-test/20/artifact/logcat.txt/*view*/

Change-Id: I28aa725812e895d808628df8235fa05a76c336a7
---
M app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
1 file changed, 25 insertions(+), 23 deletions(-)

Approvals:
  Dbrant: Looks good to me, approved
  jenkins-bot: Verified



diff --git 
a/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
 
b/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
index 8c58de0..d282a92 100644
--- 
a/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
+++ 
b/app/src/androidTest/java/org/wikipedia/test/perf/PageLoadPerformanceTests.java
@@ -16,21 +16,9 @@
  */
 @LargeTest
 public class PageLoadPerformanceTests extends 
ActivityInstrumentationTestCase2 {
-private static final int TASK_COMPLETION_TIMEOUT = (int) 
TimeUnit.SECONDS.toMillis(30);
+private static final int TASK_COMPLETION_TIMEOUT = (int) 
TimeUnit.SECONDS.toMillis(60);
 private static final int NUM_RUNS = 1; //50;
-private PageActivity activity;
-private CountDownLatch completionLatch;
-private PageFragment fragment;
-private String title;
-private MeasurementController measurement = new MeasurementController();
-
-private PageLoadCallbacks callback = new PageLoadCallbacks() {
-@Override
-public void onLoadComplete() {
-measurement.stop(title);
-completionLatch.countDown();
-}
-};
+private final MeasurementController measurement = new 
MeasurementController();
 
 public PageLoadPerformanceTests() {
 super(PageActivity.class);
@@ -39,7 +27,9 @@
 @Override
 protected void setUp() throws Exception {
 super.setUp();
-activity = getActivity();
+
+// Launch Activity.
+getActivity();
 }
 
 public void testLoadPages() throws Throwable {
@@ -51,24 +41,36 @@
 }
 
 private void loadPageMultipleTimes(String title) throws Throwable {
-this.title = title;
 for (int i = 0; i < NUM_RUNS; i++) {
-loadPageUi();
+loadPageUi(title);
 }
 }
 
-private void loadPageUi() throws Throwable {
-completionLatch = new CountDownLatch(1);
+private void loadPageUi(final String title) throws Throwable {
+final CountDownLatch latch = new CountDownLatch(1);
 getInstrumentation().runOnMainSync(new Runnable() {
 @Override
 public void run() {
-fragment = (PageFragment) activity.getTopFragment();
-fragment.setPageLoadCallbacks(callback);
+getFragment().setPageLoadCallbacks(newCallbacks(title, latch));
 
 measurement.start(title);
-PageLoadTests.loadPage(fragment, title);
+PageLoadTests.loadPage(getFragment(), title);
 }
 });
-assertTrue(completionLatch.await(TASK_COMPLETION_TIMEOUT, 
TimeUnit.MILLISECONDS));
+assertTrue(latch.await(TASK_COMPLETION_TIMEOUT, 
TimeUnit.MILLISECONDS));
+}
+
+private PageLoadCallbacks newCallbacks(final String title, final 
CountDownLatch latch) {
+return new PageLoadCallbacks() {
+@Override
+public void onLoadComplete() {
+measurement.stop(title);
+latch.countDown();
+}
+};
+}
+
+private PageFragment getFragment() {
+return (PageFragment) getActivity().getTopFragment();
 }
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/238170
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I28aa725812e895d808628df8235fa05a76c336a7
Gerrit-PatchSet: 2
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Niedzielski 
Gerrit-Reviewer: BearND 
Gerrit-Reviewer: Brion VIBBER 
Gerrit-Reviewer: Dbrant 
Gerrit-Reviewer: Mholloway 
Gerrit-Reviewer: Niedzielski 
Gerrit-Reviewer: jenkins-bot <>

___
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits