Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9d925827 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add testing for showing hamburger menu in top level setting"

parents fcdcf7f6 6abd1297
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -24,8 +24,10 @@ LOCAL_JAVA_LIBRARIES := android.test.runner telephony-common

LOCAL_PACKAGE_NAME := SettingsLibTests

LOCAL_STATIC_JAVA_LIBRARIES := mockito-target \
    android-support-test
LOCAL_STATIC_JAVA_LIBRARIES := \
    android-support-test \
    espresso-core \
    mockito-target-minus-junit4

include frameworks/base/packages/SettingsLib/common.mk

+48 −6
Original line number Diff line number Diff line
@@ -16,11 +16,9 @@

package com.android.settingslib.drawer;

import static junit.framework.Assert.assertEquals;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;

import android.app.Instrumentation;
import android.content.Intent;
import android.support.test.InstrumentationRegistry;
import android.annotation.Nullable;
import android.content.Intent;
import android.content.pm.UserInfo;
@@ -30,8 +28,11 @@ import android.os.UserManager;
import android.support.test.filters.SmallTest;
import android.support.test.rule.ActivityTestRule;
import android.support.test.runner.AndroidJUnit4;

import com.android.settingslib.drawer.SettingsDrawerActivity;
import com.android.settingslib.drawer.Tile;
import com.android.settingslib.R;

import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -39,6 +40,16 @@ import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;

import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.assertion.ViewAssertions.doesNotExist;
import static android.support.test.espresso.assertion.ViewAssertions.matches;
import static android.support.test.espresso.matcher.ViewMatchers.isDisplayed;
import static android.support.test.espresso.matcher.ViewMatchers.withContentDescription;
import static junit.framework.Assert.assertEquals;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.when;
import static org.mockito.Mockito.verify;

@RunWith(AndroidJUnit4.class)
@SmallTest
public class SettingsDrawerActivityTest {
@@ -96,6 +107,38 @@ public class SettingsDrawerActivityTest {
        verify(mUserManager, times(2)).getUserInfo(REMOVED_USER.getIdentifier());
    }

    @Test
    public void startActivityWithNoExtra_showNoHamburgerMenu() {
        Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
        instrumentation.startActivitySync(new Intent(instrumentation.getTargetContext(),
                TestActivity.class));

        onView(withContentDescription(R.string.content_description_menu_button))
                .check(doesNotExist());
    }

    @Test
    public void startActivityWithExtraToHideMenu_showNoHamburgerMenu() {
        Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
        Intent intent = new Intent(instrumentation.getTargetContext(), TestActivity.class)
                .putExtra(TestActivity.EXTRA_SHOW_MENU, false);
        instrumentation.startActivitySync(intent);

        onView(withContentDescription(R.string.content_description_menu_button))
                .check(doesNotExist());
    }

    @Test
    public void startActivityWithExtraToShowMenu_showHamburgerMenu() {
        Instrumentation instrumentation = InstrumentationRegistry.getInstrumentation();
        Intent intent = new Intent(instrumentation.getTargetContext(), TestActivity.class)
                .putExtra(TestActivity.EXTRA_SHOW_MENU, true);
        instrumentation.startActivitySync(intent);

        onView(withContentDescription(R.string.content_description_menu_button))
                .check(matches(isDisplayed()));
    }

    /**
     * Test Activity in this test.
     *
@@ -103,5 +146,4 @@ public class SettingsDrawerActivityTest {
     * AndroidManifest.xml
     */
    public static class TestActivity extends SettingsDrawerActivity {}

}