Android эспрессо проверить зависимое поле - PullRequest
0 голосов
/ 03 сентября 2018

У меня есть экран входа в систему, который состоит из двух редактируемых текстов и кнопки. При первом нажатии кнопки проверяется, не заполнено ли поле электронной почты. Если поле электронной почты не пустое, оно проверяет, является ли поле пароля пустым.

Это код:

// to check if the fields are empty   
   @Override
    public boolean validate() {

        if(edtEmail.getText().toString().trim().equalsIgnoreCase("")){
            showErrorMessage(true);
            return false;
        }

        if(edtPassword.getText().toString().trim().equalsIgnoreCase(null)){
            showErrorMessage(false);
            return false;
        }
        return true;
    }

// to set error message to edittext

    @Override
    public void showErrorMessage(boolean email) {
        if(email){
            edtEmail.setError("Enter Correct Email Id");
        } else {
            edtPassword.setError("Enter Correct Password");
        }
    }   

// on click of button

        btnLogin.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(validate()) {
                    mPresenter.login(edtEmail.getText().toString().trim(), edtPassword.getText().toString().trim());
                }
            }
        });

Я написал следующий тест, чтобы проверить, установлена ​​ли ошибка в поле электронной почты:

@Test
public void checkClick() {

   onView(withId(R.id.btnLogin)).perform(click());

   onView(withId(R.id.edtEmail)).check(matches(hasErrorText("Enter Correct Email Id")));
}

Поскольку для установки сообщения об ошибке в поле пароля поле электронной почты должно быть не пустым, как мне написать тест, чтобы проверить, установлено ли сообщение об ошибке в поле пароля, если оно пустое

...