Тонкости Espresso

454
29 декабря 2016, 06:52

Пробую писать на espresso with cucumber. И в одном из примеров наткнулся на такую строчку:

@Given("^I've launched \"([^\"]*)\"$") public void I_ve_launched_(String activityClassName)

Интересно в роли чего эти символы?

\"([^\"]*)\"$

Полный код метода:

  @Given("^I've launched \"([^\"]*)\"$") public void I_ve_launched_(String activityClassName)
  throws Throwable {
String targetPackage = getInstrumentation().getTargetContext().getPackageName();
Class<? extends Activity> activityClass =
    (Class<? extends Activity>) Class.forName(activityClassName);
currentActivity = launchActivity(targetPackage, activityClass, null);

 }
Answer 1

Это регулярное выражение - regexp. Данное означает - любое количество (ноль тоже подходит) любых символов кроме " заключенные в кавычки ("), закрывающая кавычка должна быть последним символом. Эти символы (кроме кавычек) потом будут переданы в качестве параметра в метод.

READ ALSO
Сложение 2 чисел типа short в Java

Сложение 2 чисел типа short в Java

Итак, тип short - от -32768 до 32767

511
Как применить псевдокласс :hover

Как применить псевдокласс :hover

Как применить псевдокласс :hover к такому классу: headermain-header

530
Не работают медиа запросы без !important

Не работают медиа запросы без !important

Использую отдельный файл mediasass для написания медиа-запросов

777