Skip to content

Commit 358c8f2

Browse files
committed
issue 51
1 parent 0ce5737 commit 358c8f2

File tree

4 files changed

+49
-85
lines changed

4 files changed

+49
-85
lines changed

requirements-dev.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ chardet==4.0.0
66
click==7.1.2
77
colorama==0.4.4
88
comtypes==1.1.8
9-
ddt==1.4.1
109
flake8==3.8.4
1110
idna==2.10
1211
isort==5.7.0

requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
ddt==1.4.1
21
pywin32==300
32
selenium==3.141.0
43
urllib3==1.26.4
Lines changed: 19 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,69 @@
1-
import unittest
2-
31
import pytest
4-
from ddt import data, ddt, unpack
52

6-
from JDI.core.settings.jdi_settings import JDISettings
73
from JDI.jdi_assert.testing.assertion import Assert
84
from tests.jdi_uitests_webtests.main.enums.preconditions import Preconditions
95
from tests.jdi_uitests_webtests.main.page_objects.epam_jdi_site import EpamJDISite
106
from tests.jdi_uitests_webtests.main.utils.common_action_data import CommonActionsData
11-
from tests.jdi_uitests_webtests.test.init_tests import InitTests
127

138
MSG_TRUE = "Water: condition changed to true"
149
MSG_FALSE = "Water: condition changed to false"
1510

1611

17-
@pytest.mark.web
18-
@ddt
19-
class CheckBoxText(InitTests):
12+
@pytest.fixture
13+
def checkbox_setup(site):
14+
Preconditions.METALS_AND_COLORS_PAGE.is_in_state()
2015

21-
check_box = EpamJDISite.metals_colors_page.cb_water
2216

23-
def setUp(self):
24-
super(CheckBoxText, self).setUp(self.id().split(".")[-1])
25-
Preconditions.METALS_AND_COLORS_PAGE.is_in_state()
17+
@pytest.mark.web
18+
class TestCheckBoxText:
2619

27-
def tearDown(self):
28-
JDISettings.get_driver_factory().get_driver().refresh()
20+
check_box = EpamJDISite.metals_colors_page.cb_water
2921

30-
@data(("True", True), ("1", True), ("False", False), ("0", False))
31-
@unpack
32-
def test_set_value(self, input, expected):
22+
@pytest.mark.parametrize("input, expected", [("True", True), ("1", True), ("False", False), ("0", False)])
23+
def test_set_value(self, checkbox_setup, input, expected):
3324
if not expected:
3425
EpamJDISite.metals_colors_page.cb_water.click()
3526
EpamJDISite.metals_colors_page.cb_water.set_value(input)
3627
CommonActionsData.check_action("Water: condition changed to " + str(expected).lower())
3728

38-
@data(
39-
"true ",
40-
"1 ",
41-
" false",
42-
"0 ",
43-
" ",
44-
"123",
45-
" 1",
46-
" 0",
47-
"!@#$%^&*",
48-
"qwdewf",
49-
"1qwe",
50-
"1qwe",
51-
"true123",
52-
"123true",
53-
"false123",
54-
"123false",
55-
"o",
56-
"O",
57-
"tr ue",
58-
)
59-
def test_set_value_nothing_changes(self, input):
29+
@pytest.mark.parametrize("input", ["true ", "1 ", " false", "0 ", " ", "123", " 1", " 0", "!@#$%^&*",
30+
"qwdewf", "1qwe", "1qwe", "true123", "123true", "false123", "123false",
31+
"o", "O", "tr ue", ])
32+
def test_set_value_nothing_changes(self, checkbox_setup, input):
6033
self.check_box.click()
6134
self.check_box.set_value(input)
6235
CommonActionsData.check_action(MSG_TRUE)
6336
self.check_box.click()
6437
self.check_box.set_value(input)
6538
CommonActionsData.check_action(MSG_FALSE)
6639

67-
def test_check_single(self):
40+
def test_check_single(self, checkbox_setup):
6841
self.check_box.check()
6942
CommonActionsData.check_action(MSG_TRUE)
7043

71-
def test_uncheck_single(self):
44+
def test_uncheck_single(self, checkbox_setup):
7245
self.check_box.click()
7346
self.check_box.uncheck()
7447
CommonActionsData.check_action(MSG_FALSE)
7548

76-
def test_is_check(self):
49+
def test_is_check(self, checkbox_setup):
7750
Assert.assert_false(self.check_box.is_checked())
7851
self.check_box.click()
7952
Assert.assert_true(self.check_box.is_checked())
8053

81-
def test_multi_uncheck(self):
54+
def test_multi_uncheck(self, checkbox_setup):
8255
self.check_box.click()
8356
self.check_box.uncheck()
8457
self.check_box.uncheck()
8558
CommonActionsData.check_action(MSG_FALSE)
8659

87-
def test_multi_check(self):
60+
def test_multi_check(self, checkbox_setup):
8861
self.check_box.check()
8962
self.check_box.check()
9063
CommonActionsData.check_action(MSG_TRUE)
9164

92-
def test_click(self):
65+
def test_click(self, checkbox_setup):
9366
self.check_box.click()
9467
CommonActionsData.check_action(MSG_TRUE)
9568
self.check_box.click()
96-
CommonActionsData.check_action(MSG_FALSE)
69+
CommonActionsData.check_action(MSG_FALSE)
Lines changed: 30 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
import unittest
2-
31
import pytest
4-
from ddt import data, ddt
2+
53
from selenium.webdriver.common.by import By
64

75
from JDI.core.settings.jdi_settings import JDISettings
@@ -10,118 +8,117 @@
108
from tests.jdi_uitests_webtests.main.enums.preconditions import Preconditions
119
from tests.jdi_uitests_webtests.main.page_objects.epam_jdi_site import EpamJDISite
1210
from tests.jdi_uitests_webtests.main.utils.common_action_data import CommonActionsData
13-
from tests.jdi_uitests_webtests.test.init_tests import InitTests
1411

1512
FIRE_MSG = "Fire: condition changed to true"
1613
WATER_MSG = "Water: condition changed to true"
1714

1815

16+
@pytest.fixture
17+
def check_list_setup(site):
18+
Preconditions.METALS_AND_COLORS_PAGE.is_in_state()
19+
20+
1921
@pytest.mark.web
20-
@ddt
21-
class CheckListTests(InitTests):
22+
class TestCheckList:
2223
nature_options = ["Water", "Earth", "Wind", "Fire"]
2324
all_values = "Water, Earth, Wind, Fire"
2425

2526
check_list = EpamJDISite.metals_colors_page.nature_check_list
2627

27-
def setUp(self):
28-
super(CheckListTests, self).setUp(self.id().split(".")[-1])
29-
Preconditions.METALS_AND_COLORS_PAGE.is_in_state()
30-
31-
@data("Fire", 4, Nature.FIRE)
32-
def test_select(self, value):
28+
@pytest.mark.parametrize("value", ("Fire", 4, Nature.FIRE))
29+
def test_select(self, check_list_setup, value):
3330
self.check_list.select(value)
3431
CommonActionsData.check_action(FIRE_MSG)
3532

36-
def test_select_2_string(self):
33+
def test_select_2_string(self, check_list_setup):
3734
self.check_list.select("Water", "Fire")
3835
CommonActionsData.check_action(FIRE_MSG, line_number=0)
3936
CommonActionsData.check_action(WATER_MSG, line_number=1)
4037

41-
def test_select_2_index(self):
38+
def test_select_2_index(self, check_list_setup):
4239
self.check_list.select(1, 4)
4340
CommonActionsData.check_action(FIRE_MSG, line_number=0)
4441
CommonActionsData.check_action(WATER_MSG, line_number=1)
4542

46-
def test_select_2_enum(self):
43+
def test_select_2_enum(self, check_list_setup):
4744
self.check_list.select(Nature.WATER, Nature.FIRE)
4845
CommonActionsData.check_action(FIRE_MSG, line_number=0)
4946
CommonActionsData.check_action(WATER_MSG, line_number=1)
5047

51-
@data("Fire", 4, Nature.FIRE)
52-
def test_check(self, value):
48+
@pytest.mark.parametrize("value", ("Fire", 4, Nature.FIRE))
49+
def test_check(self, check_list_setup, value):
5350
self.check_list.check(value)
5451
CommonActionsData.check_action(FIRE_MSG)
5552

56-
def test_check_2_string(self):
53+
def test_check_2_string(self, check_list_setup):
5754
self.check_list.check("Water", "Fire")
5855
CommonActionsData.check_action(FIRE_MSG, line_number=0)
5956
CommonActionsData.check_action(WATER_MSG, line_number=1)
6057

61-
def test_check_2_index(self):
58+
def test_check_2_index(self, check_list_setup):
6259
self.check_list.check(1, 4)
6360
CommonActionsData.check_action(FIRE_MSG, line_number=0)
6461
CommonActionsData.check_action(WATER_MSG, line_number=1)
6562

66-
def test_check_2_enum(self):
63+
def test_check_2_enum(self, check_list_setup):
6764
self.check_list.check(Nature.WATER, Nature.FIRE)
6865
CommonActionsData.check_action(FIRE_MSG, line_number=0)
6966
CommonActionsData.check_action(WATER_MSG, line_number=1)
7067

71-
def test_select_all(self):
68+
def test_select_all(self, check_list_setup):
7269
self.check_list.select_all()
7370
CommonActionsData.check_action(FIRE_MSG, line_number=0)
7471
CommonActionsData.check_action("Wind: condition changed to true", line_number=1)
7572
CommonActionsData.check_action("Earth: condition changed to true", line_number=2)
7673
CommonActionsData.check_action(WATER_MSG, line_number=3)
7774
self.check_all_checked()
7875

79-
def test_check_all(self):
76+
def test_check_all(self, check_list_setup):
8077
self.check_list.check_all()
8178
CommonActionsData.check_action(FIRE_MSG, line_number=0)
8279
CommonActionsData.check_action("Wind: condition changed to true", line_number=1)
8380
CommonActionsData.check_action("Earth: condition changed to true", line_number=2)
8481
CommonActionsData.check_action(WATER_MSG, line_number=3)
8582
self.check_all_checked()
8683

87-
def test_clear_all(self):
84+
def test_clear_all(self, check_list_setup):
8885
self.check_list.check_all()
8986
self.check_all_checked()
9087
self.check_list.clear()
9188
self.check_all_unchecked()
9289

93-
def test_uncheck_all(self):
90+
def test_uncheck_all(self, check_list_setup):
9491
self.check_list.check_all()
9592
self.check_all_checked()
9693
self.check_list.uncheck_all()
9794
self.check_all_unchecked()
9895

99-
def test_get_options(self):
96+
def test_get_options(self, check_list_setup):
10097
Assert.assert_equal(self.check_list.get_options(), self.nature_options)
10198

102-
def test_get_names(self):
99+
def test_get_names(self, check_list_setup):
103100
Assert.assert_equal(self.check_list.get_names(), self.nature_options)
104101

105-
def test_get_values(self):
102+
def test_get_values(self, check_list_setup):
106103
Assert.assert_equal(self.check_list.get_values(), self.nature_options)
107104

108-
def test_get_options_as_text(self):
105+
def test_get_options_as_text(self, check_list_setup):
109106
Assert.assert_equal(self.check_list.get_options_as_text(), self.all_values)
110107

111-
def test_set_value(self):
108+
def test_set_value(self, check_list_setup):
112109
self.check_list.set_value("Fire")
113110
CommonActionsData.check_action(FIRE_MSG)
114111

115-
def test_get_name(self):
112+
def test_get_name(self, check_list_setup):
116113
Assert.assert_equal(self.check_list.get_name(), "nature_check_list")
117114

118-
def test_are_selected(self):
115+
def test_are_selected(self, check_list_setup):
119116
Assert.assert_equal(self.check_list.are_selected(), [])
120117

121-
def test_are_deselected(self):
118+
def test_are_deselected(self, check_list_setup):
122119
Assert.assert_equal(self.check_list.are_deselected(), self.nature_options)
123120

124-
def test_get_value(self):
121+
def test_get_value(self, check_list_setup):
125122
Assert.assert_equal(self.check_list.get_value(), None)
126123

127124
def check_all_checked(self):
@@ -135,7 +132,3 @@ def check_all_unchecked(self):
135132
els = driver.find_elements(By.CSS_SELECTOR, value="#elements-checklist input")
136133
for el in els:
137134
Assert.assert_true(el.get_attribute("checked") in ["false", None])
138-
139-
140-
if __name__ == "__main__":
141-
unittest.main()

0 commit comments

Comments
 (0)