Skip to content

Commit edfcbce

Browse files
authored
Merge pull request #5087 from jdi-testing/4911_radioButtonTestsRefactoring
4911-refactoringRadioButtonTests
2 parents 9b43482 + 8a0b1fe commit edfcbce

File tree

27 files changed

+532
-240
lines changed

27 files changed

+532
-240
lines changed

jdi-light-angular-tests/src/main/java/io/github/com/StaticSite.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import io.github.com.pages.CheckBoxPage;
1111
import io.github.com.pages.ProgressBarPage;
1212
import io.github.com.pages.ProgressSpinnerPage;
13+
import io.github.com.pages.RadioButtonPage;
1314

1415
@JSite("https://jdi-testing.github.io/jdi-light/angular-page/#/")
1516
public class StaticSite {
@@ -35,6 +36,9 @@ public class StaticSite {
3536
@Url("autocompletes")
3637
public static AutocompletePage autocompletePage;
3738

39+
@Url("radio_button")
40+
public static RadioButtonPage radioButtonPage;
41+
3842
@Url("checkbox")
3943
public static CheckBoxPage checkBoxPage;
4044
}

jdi-light-angular-tests/src/main/java/io/github/com/pages/AngularPage.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ public class AngularPage extends WebPage {
1616
@UI("#bottom-sheet")
1717
public static BottomSheet bottomSheet;
1818
public static Dialog dialog;
19-
public static RadioButtonSection radioButtonSection;
2019
public static ToolbarSection toolbarSection;
2120
public static SlideToggleSection slideToggleSection;
2221
public static InputSection inputSection;

jdi-light-angular-tests/src/main/java/io/github/com/pages/CheckBoxPage.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.github.com.pages;
22

33
import com.epam.jdi.light.angular.elements.common.Checkbox;
4-
import com.epam.jdi.light.angular.elements.complex.RadioButtons;
4+
import com.epam.jdi.light.angular.elements.complex.radiobuttons.RadioGroup;
55
import com.epam.jdi.light.elements.pageobjects.annotations.locators.UI;
66
import com.epam.jdi.light.ui.html.elements.common.Text;
77

@@ -19,7 +19,7 @@ public class CheckBoxPage extends NewAngularPage {
1919
public static Checkbox resultCheckbox;
2020

2121
@UI(".mat-mdc-radio-group")
22-
public static RadioButtons modeRadioGroup;
22+
public static RadioGroup modeRadioGroup;
2323

2424
@UI("#checkbox-color1")
2525
public static Checkbox primaryColorCheckbox;

jdi-light-angular-tests/src/main/java/io/github/com/pages/ProgressBarPage.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.epam.jdi.light.angular.elements.common.ProgressBar;
44
import com.epam.jdi.light.angular.elements.common.Slider;
5-
import com.epam.jdi.light.angular.elements.complex.RadioButtons;
5+
import com.epam.jdi.light.angular.elements.complex.radiobuttons.RadioGroup;
66
import com.epam.jdi.light.elements.pageobjects.annotations.locators.UI;
77
import com.epam.jdi.light.ui.html.elements.common.Button;
88

@@ -22,9 +22,9 @@ public class ProgressBarPage extends NewAngularPage {
2222
@UI("#mat-progress-bar-configurable")
2323
public static ProgressBar matProgressBarConfigurable;
2424
@UI(".example-section:nth-of-type(1) .mat-mdc-radio-group")
25-
public static RadioButtons colorRadioButtons;
25+
public static RadioGroup colorRadioGroup;
2626
@UI(".example-section:nth-of-type(2) .mat-mdc-radio-group")
27-
public static RadioButtons modeRadioButtons;
27+
public static RadioGroup modeRadioGroup;
2828
@UI("#progress-bars-query-mode-radio")
2929
public static Button progressBarsQueryModeRadio;
3030
@UI("#progress-bars-progress-slider")

jdi-light-angular-tests/src/main/java/io/github/com/pages/ProgressSpinnerPage.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77

88
public class ProgressSpinnerPage extends NewAngularPage {
99
public static Button showSpinner;
10+
@UI("#basic-progress-spinner")
1011
public static ProgressSpinner basicProgressSpinner;
12+
@UI("#configured-spinner")
1113
public static ProgressSpinner configuredSpinner;
1214
@UI("#spinner-color mat-radio-button[value='primary']")
1315
public static Button progressSpinnerPrimaryColorRadio;
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package io.github.com.pages;
2+
3+
import com.epam.jdi.light.angular.elements.complex.radiobuttons.RadioButton;
4+
import com.epam.jdi.light.angular.elements.complex.radiobuttons.RadioGroup;
5+
import com.epam.jdi.light.elements.pageobjects.annotations.locators.UI;
6+
import com.epam.jdi.light.ui.html.elements.common.Text;
7+
8+
public class RadioButtonPage extends NewAngularPage {
9+
10+
@UI("(//*[@id='basic-radio-group'])[1]")
11+
public static RadioGroup basicRadioGroup;
12+
13+
@UI("#season-radio-group")
14+
public static RadioGroup seasonRadioGroup;
15+
16+
@UI("#radio-buttons_dialog_color_radio")
17+
public static RadioButton primaryRadioButton;
18+
19+
@UI("#radio-buttons_first-tabbable_color_radio")
20+
public static RadioButton accentRadioButton;
21+
22+
@UI("#radio-buttons_first-heading_color_radio")
23+
public static RadioButton warnRadioButton;
24+
25+
@UI("(//*[@id='basic-radio-group'])[2]")
26+
public static RadioGroup elementPositionRadioGroup;
27+
28+
@UI("#radio-buttons-color_buttons")
29+
public static RadioGroup colorRadioGroup;
30+
31+
@UI("#your-favorite-season-text")
32+
public static Text yourFavoriteSeasonText;
33+
34+
@UI("#basic-radio-group-label-position")
35+
public static RadioGroup beforePositionRadioGroup;
36+
37+
@UI("#basic-radio-group-label-position")
38+
public static RadioGroup labelPositionRadioGroup;
39+
40+
@UI("#basic-radio-group-disabled")
41+
public static RadioGroup disabledRadioGroup;
42+
43+
@UI("(//*[@role='radiogroup'])[9]")
44+
public static RadioGroup requiredRadioGroup;
45+
46+
}

jdi-light-angular-tests/src/main/java/io/github/com/pages/sections/RadioButtonSection.java

Lines changed: 0 additions & 14 deletions
This file was deleted.

jdi-light-angular-tests/src/main/java/io/github/com/pages/sections/SideNavSection.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.github.com.pages.sections;
22

33
import com.epam.jdi.light.angular.elements.common.Checkbox;
4-
import com.epam.jdi.light.angular.elements.complex.RadioButtons;
4+
import com.epam.jdi.light.angular.elements.complex.radiobuttons.RadioGroup;
55
import com.epam.jdi.light.angular.elements.complex.SideNav;
66
import com.epam.jdi.light.elements.common.UIElement;
77
import com.epam.jdi.light.elements.composite.Section;
@@ -26,9 +26,9 @@ public class SideNavSection extends Section {
2626
@UI("#configurable-mode .mat-sidenav-content button")
2727
public static Button contentToggle;
2828
@UI("#configurable-mode .mat-sidenav .mat-radio-group")
29-
public static RadioButtons sideNavRadioButtons;
29+
public static RadioGroup sideNavRadioGroup;
3030
@UI("#configurable-mode .mat-sidenav-content .mat-radio-group")
31-
public static RadioButtons contentRadioButtons;
31+
public static RadioGroup contentRadioGroup;
3232

3333
public static SideNav customEscapeBackdrop;
3434
@UI("#custom-escape-backdrop .mat-sidenav button")

jdi-light-angular-tests/src/test/java/io/github/epam/angular/tests/elements/common/ButtonsTests.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,20 +46,16 @@ public void before() {
4646

4747
@Test(description = "Test checks basic buttons attributes")
4848
public void basicButtonsTest() {
49-
Button basicButton = basicButtons.get(rand.nextInt(basicButtons.size()) + 1);
49+
Button basicButton = basicButtons.stream().filter(b -> b.text().equalsIgnoreCase("Disabled"))
50+
.findAny().orElse(null);
51+
5052
basicButton.is().displayed();
5153
basicButton.show();
5254
basicButton.is().visible();
5355

5456
basicButton.has().visualType(BASIC);
5557

56-
if (basicButton.isEnabled()) {
57-
basicButton.click();
58-
basicButton.is().focused();
59-
basicbuttonLabel.has().text(containsString(basicButton.text()));
60-
} else {
61-
basicButton.is().disabled();
62-
}
58+
basicButton.has().text("Disabled").is().disabled();
6359
}
6460

6561
@Test(description = "Test checks default color button attributes")

jdi-light-angular-tests/src/test/java/io/github/epam/angular/tests/elements/common/CheckboxTests.java

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public void checkLabelValueTest() {
3838
@Test(description = "Test verifies initial checkbox state and selection")
3939
public void basicCheckboxValidationTest() {
4040
basicCheckbox.show();
41-
basicCheckbox.is().displayed().and().enabled().and().deselected();
41+
basicCheckbox.is().displayed().and().enabled().and().notSelected();
4242
basicCheckbox.check();
4343
basicCheckbox.is().selected();
4444
basicCheckbox.uncheck();
@@ -72,6 +72,7 @@ public void alignPositionsCheckboxTest() {
7272
@Test(description = "Test verifies checkbox feature: required option")
7373
public void isRequiredCheckboxTest() {
7474
requiredCheckbox.show();
75+
requiredCheckbox.uncheck();
7576
requiredCheckbox.is().required();
7677
requiredCheckboxText.has().text("Checkbox should be checked!");
7778
requiredCheckbox.check();
@@ -84,21 +85,17 @@ public void isRequiredCheckboxTest() {
8485
@Test(description = "Verifies checkbox colors as Angular colors")
8586
public void angularColorCheckBoxTest() {
8687
//Check color for checkboxes with attribute 'color'
87-
primaryColorCheckbox.has().angularColor(AngularColors.PRIMARY);
88-
accentColorCheckbox.has().angularColor(AngularColors.ACCENT);
89-
warnColorCheckbox.has().angularColor(AngularColors.WARN);
90-
//Check color for checkbox without attribute 'color'
91-
requiredCheckbox.has().angularColor(AngularColors.ACCENT);
92-
}
93-
94-
@Test(description = "Verifies checkbox colors as strings")
95-
public void colorCheckBoxTest() {
96-
//Check color for checkboxes with attribute 'color'
97-
primaryColorCheckbox.has().color("primary");
98-
accentColorCheckbox.has().color("accent");
99-
warnColorCheckbox.has().color("warn");
88+
primaryColorCheckbox.uncheck();
89+
primaryColorCheckbox.has().color(AngularColors.UNSELECTED);
90+
primaryColorCheckbox.check();
91+
primaryColorCheckbox.has().color(AngularColors.PRIMARY);
92+
accentColorCheckbox.check();
93+
accentColorCheckbox.has().color(AngularColors.ACCENT);
94+
warnColorCheckbox.check();
95+
warnColorCheckbox.has().color(AngularColors.WARN);
10096
//Check color for checkbox without attribute 'color'
101-
requiredCheckbox.has().color("accent");
97+
requiredCheckbox.check();
98+
requiredCheckbox.has().color(AngularColors.ACCENT);
10299
}
103100

104101
}

0 commit comments

Comments
 (0)