Android - проверка намерения, запускающего неизвестную внешнюю активность - PullRequest
0 голосов
/ 02 апреля 2019

У меня есть действие, которое запускает внешнее действие по нажатию кнопки.Внешнее действие запускается на основе действия, а имя действия и имя его пакета неизвестны.Я пытаюсь смоделировать это намерение, используя Espresso, но это не работает, и тест не пройден.

MyActivity.java

@Override
public void onCreate(final Bundle savedInstanceState) {
    mLaunchButton = (Button) findViewById(R.id.launch_button);
    mLaunchButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(final View v) {
                Log.i(TAG, "Launch button clicked.");
                startActivity(new Intent("action_string"));
            }
        });
}

MyActivityTest.java

@Rule
    public IntentsTestRule<MyActivity> mIntentRule =
            new IntentsTestRule<>(MyActivity.class);
@Test
    public void testActivity() {
        onView(withId(R.id.launch_button)).perform(click());
        intended(hasAction("action_string"));
    }

Ошибка

android.support.test.espresso.PerformException: Error performing 'single click - At Coordinates: 391, 715 and precision: 16, 16' on view 'with id: com.domain.myapp:id/launch_button'.
.
.
.
Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=action_string (has extras) }
.
.
.
...