summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorYorke Lee <yorkelee@google.com>2014-10-28 16:12:05 -0700
committerYorke Lee <yorkelee@google.com>2014-10-28 16:12:05 -0700
commitc98a5bb2d806dde99325a15466a2bf144d216ae8 (patch)
tree01189516a8fe7750162c9c5d9d2b648ef632c185 /tests
parentb4aac521569a933a6e7789e9dc25014bdd82d57c (diff)
downloadandroid_packages_apps_Dialer-c98a5bb2d806dde99325a15466a2bf144d216ae8.tar.gz
android_packages_apps_Dialer-c98a5bb2d806dde99325a15466a2bf144d216ae8.tar.bz2
android_packages_apps_Dialer-c98a5bb2d806dde99325a15466a2bf144d216ae8.zip
Refactor ActionBarController and tests
The original CL to fix ActionBarControllerTest by using an ActivityInstrumentationTestCase was too heavyweight and caused flaky test. It was also indicative of a flaw in the original design that ActionBar couldn't be mocked out easily. Refactor the code so that: 1) getActionBar() is no longer needed 2) Respect the invariant that all access to the actionBar goes through the ActionBarController (see the changes in ListsFragment) so that any change to the ActionBar's hide offset can be tracked appropriately. Bug: 17487016 Change-Id: I935b683ddb301ca5d3952889af1381bdbdcc97d3
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/android/dialer/widget/ActionBarControllerTest.java47
1 files changed, 9 insertions, 38 deletions
diff --git a/tests/src/com/android/dialer/widget/ActionBarControllerTest.java b/tests/src/com/android/dialer/widget/ActionBarControllerTest.java
index 2e388380f..316c15537 100644
--- a/tests/src/com/android/dialer/widget/ActionBarControllerTest.java
+++ b/tests/src/com/android/dialer/widget/ActionBarControllerTest.java
@@ -16,54 +16,25 @@
package com.android.dialer.widget;
-import android.app.ActionBar;
-import android.app.Activity;
import android.content.Context;
-import android.test.ActivityInstrumentationTestCase2;
-import android.test.AndroidTestCase;
import android.test.InstrumentationTestCase;
import android.test.suitebuilder.annotation.SmallTest;
-import android.view.View;
-import com.android.dialer.DialtactsActivity;
import com.android.dialer.widget.ActionBarController.ActivityUi;
-import com.android.internal.app.WindowDecorActionBar;
@SmallTest
-public class ActionBarControllerTest extends ActivityInstrumentationTestCase2<DialtactsActivity> {
+public class ActionBarControllerTest extends InstrumentationTestCase {
private static final int ACTION_BAR_HEIGHT = 100;
private ActionBarController mActionBarController;
private SearchEditTextLayout mSearchBox;
private MockActivityUi mActivityUi;
- private class MockActionBar extends WindowDecorActionBar {
- private int mHideOffset = 0;
-
- public MockActionBar(Activity activity) {
- super(activity);
- }
-
- @Override
- public void setHideOffset(int offset) {
- mHideOffset = offset;
- }
-
- @Override
- public int getHideOffset() {
- return mHideOffset;
- }
- }
-
private class MockActivityUi implements ActivityUi {
boolean isInSearchUi;
boolean hasSearchQuery;
boolean shouldShowActionBar;
- private ActionBar mActionBar;
-
- public MockActivityUi() {
- mActionBar = new MockActionBar(getActivity());
- }
+ int actionBarHideOffset;
@Override
public boolean isInSearchUi() {
@@ -86,8 +57,13 @@ public class ActionBarControllerTest extends ActivityInstrumentationTestCase2<Di
}
@Override
- public ActionBar getActionBar() {
- return mActionBar;
+ public int getActionBarHideOffset() {
+ return actionBarHideOffset;
+ }
+
+ @Override
+ public void setActionBarHideOffset(int offset) {
+ actionBarHideOffset = offset;
}
}
@@ -111,11 +87,6 @@ public class ActionBarControllerTest extends ActivityInstrumentationTestCase2<Di
}
}
- public ActionBarControllerTest() {
- super(DialtactsActivity.class);
- }
-
-
@Override
protected void setUp() {
mActivityUi = new MockActivityUi();