|
17 | 17 |
|
18 | 18 | public class SelectDropDownButton implements Interaction {
|
19 | 19 |
|
| 20 | + private final Target checkbox; |
20 | 21 | private final Target button;
|
21 | 22 | private final Target filter;
|
22 | 23 | private final String valueFilter;
|
23 | 24 | private final String cssSelectorForElementSelected;
|
24 | 25 |
|
25 |
| - public SelectDropDownButton(Target button, Target filter, String valueFilter, String selectorForElementSelected) { |
| 26 | + public SelectDropDownButton(Target checkbox, Target button, Target filter, String valueFilter, String selectorForElementSelected) { |
| 27 | + this.checkbox = checkbox; |
26 | 28 | this.valueFilter = valueFilter;
|
27 | 29 | this.button = button;
|
28 | 30 | this.filter = filter;
|
29 | 31 | this.cssSelectorForElementSelected = selectorForElementSelected;
|
30 | 32 | }
|
31 | 33 |
|
32 | 34 | public static SelectDropDownButton addGitIgnoreFilteringBy(GitIgnore valueFilter) {
|
33 |
| - return instrumented(SelectDropDownButton.class, ADD_GITIGNORE, |
| 35 | + return instrumented(SelectDropDownButton.class, CHECKBOX_GITIGNORE, ADD_GITIGNORE, |
34 | 36 | FILTER_GITIGNORE, valueFilter.toString(),
|
35 | 37 | SELECTOR_FORMAT_GITIGNORE);
|
36 | 38 | }
|
37 | 39 |
|
38 | 40 | public static SelectDropDownButton addLicenseFilteringBy(License valueFilter) {
|
39 |
| - return instrumented(SelectDropDownButton.class, ADD_LICENSE, |
| 41 | + return instrumented(SelectDropDownButton.class, CHECKBOX_LICENSE, ADD_LICENSE, |
40 | 42 | FILTER_LICENSE, valueFilter.toString(),
|
41 | 43 | String.format(SELECTOR_FORMAT_LICENSE, valueFilter));
|
42 | 44 | }
|
43 | 45 |
|
44 | 46 | @Override
|
45 | 47 | @Step("{0} clicks on #button is filtered by #valueFilter and click on the resulting item")
|
46 | 48 | public <T extends Actor> void performAs(T actor) {
|
| 49 | + checkbox.resolveFor(actor).click(); |
47 | 50 | button.resolveFor(actor).click();
|
48 | 51 | filter.resolveFor(actor).sendKeys(valueFilter);
|
49 | 52 | Target selectedItem = Target.the("selected item").locatedBy(cssSelectorForElementSelected);
|
|
0 commit comments