1  /*
2   * Copyright (C) 2017 The Android Open Source Project
3   *
4   * Licensed under the Apache License, Version 2.0 (the "License");
5   * you may not use this file except in compliance with the License.
6   * You may obtain a copy of the License at
7   *
8   *      http://www.apache.org/licenses/LICENSE-2.0
9   *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  
17  package com.example.android.emojicompat
18  
19  import androidx.test.espresso.Espresso.onView
20  import androidx.test.espresso.assertion.ViewAssertions.matches
21  import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
22  import androidx.test.espresso.matcher.ViewMatchers.withText
23  import androidx.test.filters.MediumTest
24  import androidx.test.rule.ActivityTestRule
25  import org.junit.Rule
26  import org.junit.Test
27  
28  class MainActivityTest {
29  
30      @Rule @JvmField
31      val rule = ActivityTestRule(MainActivity::class.java)
32  
33      @Test
34      @MediumTest
35      @Throws(Exception::class)
allTextsDisplayednull36      fun allTextsDisplayed() {
37          arrayOf(R.string.emoji_text_view,
38                  R.string.emoji_edit_text,
39                  R.string.emoji_button,
40                  R.string.regular_text_view,
41                  R.string.custom_text_view).forEach {
42              val text = rule.activity.getString(it, MainActivity.EMOJI)
43              onView(withText(text)).check(matches(isDisplayed()))
44          }
45      }
46  
47  }
48