@@ -12,36 +12,73 @@ import android.support.test.rule.ActivityTestRule
1212import android.support.test.runner.AndroidJUnit4
1313import android.support.test.uiautomator.UiDevice
1414import com.afollestad.assentsample.utils.TEXT_ALLOW
15+ import com.afollestad.assentsample.utils.allowCurrentPermission
1516import com.afollestad.assentsample.utils.assertViewWithTextIsVisible
1617import com.afollestad.assentsample.utils.denyCurrentPermission
1718import org.junit.Before
19+ import org.junit.FixMethodOrder
1820import org.junit.Rule
1921import org.junit.Test
2022import org.junit.runner.RunWith
23+ import org.junit.runners.MethodSorters.JVM
24+ import org.junit.runners.MethodSorters.NAME_ASCENDING
2125
2226@RunWith(AndroidJUnit4 ::class )
2327@SdkSuppress(minSdkVersion = 18 )
28+ @FixMethodOrder(NAME_ASCENDING )
2429class AssentTest {
2530
2631 @Rule
2732 @JvmField
28- var rule = ActivityTestRule (MainActivity ::class .java)
33+ var activityRule = ActivityTestRule (MainActivity ::class .java)
2934
3035 private lateinit var device: UiDevice
3136
3237 @Before fun setup () {
3338 device = UiDevice .getInstance(getInstrumentation())
3439 }
3540
36- @Test fun test_basic () {
41+ @Test fun a_test_grant_none () {
3742 onView(withText(R .string.none_granted))
3843 .check(matches(isDisplayed()))
3944 onView(withId(R .id.requestPermissionButton))
4045 .check(matches(isDisplayed()))
4146 .perform(click())
4247
43- device.assertViewWithTextIsVisible(TEXT_ALLOW , rule .activity)
48+ device.assertViewWithTextIsVisible(TEXT_ALLOW , activityRule .activity)
4449 device.denyCurrentPermission()
4550 device.denyCurrentPermission()
51+
52+ onView(withText(R .string.none_granted))
53+ .check(matches(isDisplayed()))
54+ }
55+
56+ @Test fun b_test_grant_some () {
57+ onView(withText(R .string.none_granted))
58+ .check(matches(isDisplayed()))
59+ onView(withId(R .id.requestPermissionButton))
60+ .check(matches(isDisplayed()))
61+ .perform(click())
62+
63+ device.assertViewWithTextIsVisible(TEXT_ALLOW , activityRule.activity)
64+ device.allowCurrentPermission()
65+ device.denyCurrentPermission()
66+
67+ onView(withText(R .string.some_granted))
68+ .check(matches(isDisplayed()))
69+ }
70+
71+ @Test fun c_test_grant_all () {
72+ onView(withText(R .string.none_granted))
73+ .check(matches(isDisplayed()))
74+ onView(withId(R .id.requestPermissionButton))
75+ .check(matches(isDisplayed()))
76+ .perform(click())
77+
78+ device.assertViewWithTextIsVisible(TEXT_ALLOW , activityRule.activity)
79+ device.allowCurrentPermission()
80+
81+ onView(withText(R .string.all_granted))
82+ .check(matches(isDisplayed()))
4683 }
4784}
0 commit comments