fixed populate_data method and added while loop for click and assert
This commit is contained in:
parent
394ee583bf
commit
4ec5b70d82
|
@ -41,7 +41,7 @@ class TeleniumTestProcess(TeleniumTestCase):
|
||||||
cls.populate_test_data()
|
cls.populate_test_data()
|
||||||
super(TeleniumTestProcess, cls).setUpClass()
|
super(TeleniumTestProcess, cls).setUpClass()
|
||||||
|
|
||||||
@classmethod
|
@staticmethod
|
||||||
def populate_test_data():
|
def populate_test_data():
|
||||||
"""Set temp data in tmp directory"""
|
"""Set temp data in tmp directory"""
|
||||||
for file_name in tmp_db_file:
|
for file_name in tmp_db_file:
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
from time import time
|
||||||
from random import choice
|
from random import choice
|
||||||
from string import ascii_lowercase
|
from string import ascii_lowercase
|
||||||
from telenium.client import TeleniumHttpException
|
from telenium.client import TeleniumHttpException
|
||||||
|
@ -9,8 +10,8 @@ from .common import ordered
|
||||||
class CreateRandomAddress(TeleniumTestProcess):
|
class CreateRandomAddress(TeleniumTestProcess):
|
||||||
"""This is for testing randrom address creation"""
|
"""This is for testing randrom address creation"""
|
||||||
|
|
||||||
@classmethod
|
@staticmethod
|
||||||
def populate_test_data(cls):
|
def populate_test_data():
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@skip_screen_checks
|
@skip_screen_checks
|
||||||
|
@ -19,23 +20,22 @@ class CreateRandomAddress(TeleniumTestProcess):
|
||||||
"""Click on Proceed Button to Proceed to Next Screen."""
|
"""Click on Proceed Button to Proceed to Next Screen."""
|
||||||
# Checking current Screen(Login screen)
|
# Checking current Screen(Login screen)
|
||||||
self.assert_wait_no_except('//ScreenManager[@current]', timeout=15, value='login')
|
self.assert_wait_no_except('//ScreenManager[@current]', timeout=15, value='login')
|
||||||
# Clicking on Proceed Next Button
|
start = time()
|
||||||
self.assertExists('//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=5)
|
deadline = start + 2
|
||||||
self.cli.wait_click(
|
while time() < deadline:
|
||||||
'//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=5)
|
|
||||||
# Checking Current Screen(Random Screen) after Clicking on Proceed Next Button
|
|
||||||
try:
|
try:
|
||||||
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=2)
|
# Clicking on Proceed Next Button to redirect to "random" screen
|
||||||
except TeleniumHttpException:
|
|
||||||
self.cli.wait_click('//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=5)
|
self.cli.wait_click('//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=5)
|
||||||
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=2)
|
except TeleniumHttpException:
|
||||||
|
# Checking Current Screen(Random Screen) after Clicking on "Proceed Next" Button
|
||||||
|
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=5)
|
||||||
|
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=5)
|
||||||
|
|
||||||
@skip_screen_checks
|
@skip_screen_checks
|
||||||
@ordered
|
@ordered
|
||||||
def test_random_screen(self):
|
def test_random_screen(self):
|
||||||
"""Creating New Adress For New User."""
|
"""Creating New Adress For New User."""
|
||||||
# Clicking on Label Text Field to give address name
|
# Clicking on Label Text Field to give address name
|
||||||
# self.cli.wait_click('//RandomBoxlayout/BoxLayout[0]/AnchorLayout[1]/MDTextField[0]', timeout=2)
|
|
||||||
# Generating Label Randomly
|
# Generating Label Randomly
|
||||||
random_label = ""
|
random_label = ""
|
||||||
for _ in range(10):
|
for _ in range(10):
|
||||||
|
@ -52,8 +52,7 @@ class CreateRandomAddress(TeleniumTestProcess):
|
||||||
@ordered
|
@ordered
|
||||||
def test_create_new_address(self):
|
def test_create_new_address(self):
|
||||||
"""Clicking on Navigation Drawer To Open New Address"""
|
"""Clicking on Navigation Drawer To Open New Address"""
|
||||||
# New screen is opening and transition effect takes time so Sleep is used
|
# CLick to Open side Nav drawer
|
||||||
# this is for opening Nav drawer
|
|
||||||
self.cli.wait_click('//MDActionTopAppBarButton[@icon=\"menu\"]', timeout=3)
|
self.cli.wait_click('//MDActionTopAppBarButton[@icon=\"menu\"]', timeout=3)
|
||||||
# checking state of Nav drawer
|
# checking state of Nav drawer
|
||||||
self.assertExists("//MDNavigationDrawer[@state~=\"open\"]", timeout=2)
|
self.assertExists("//MDNavigationDrawer[@state~=\"open\"]", timeout=2)
|
||||||
|
@ -61,23 +60,27 @@ class CreateRandomAddress(TeleniumTestProcess):
|
||||||
self.drag("//NavigationItem[@text=\"Sent\"]", "//NavigationItem[@text=\"Inbox\"]")
|
self.drag("//NavigationItem[@text=\"Sent\"]", "//NavigationItem[@text=\"Inbox\"]")
|
||||||
# Checking state of scrolled screen
|
# Checking state of scrolled screen
|
||||||
self.assertCheckScrollDown('//ContentNavigationDrawer//ScrollView[0]', timeout=3)
|
self.assertCheckScrollDown('//ContentNavigationDrawer//ScrollView[0]', timeout=3)
|
||||||
# Clicking on New Address Tab
|
|
||||||
self.assertExists('//NavigationItem[@text=\"New address\"]', timeout=5)
|
self.assertExists('//NavigationItem[@text=\"New address\"]', timeout=5)
|
||||||
|
# Clicking on New Address Tab
|
||||||
self.cli.wait_click('//NavigationItem[@text=\"New address\"]', timeout=3)
|
self.cli.wait_click('//NavigationItem[@text=\"New address\"]', timeout=3)
|
||||||
self.cli.sleep(1)
|
start = time()
|
||||||
# Checking current Screen(Login screen)
|
deadline = start + 2
|
||||||
self.assertExists("//ScreenManager[@current=\"login\"]", timeout=5)
|
while time() < deadline:
|
||||||
# Click on Proceed Next button to enter 'Random' Screen
|
try:
|
||||||
self.cli.wait_click('//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=2)
|
# Clicking on Proceed Next Button to redirect to "random" screen
|
||||||
# Checking Current Screen(Random Screen) after Clicking on Proceed Next Button
|
self.cli.wait_click('//Screen[0]//MDFillRoundFlatIconButton[@text=\"Proceed Next\"]', timeout=5)
|
||||||
|
except TeleniumHttpException:
|
||||||
|
# Checking Current Screen(Random Screen) after Clicking on "Proceed Next" Button
|
||||||
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=5)
|
self.assertExists("//ScreenManager[@current=\"random\"]", timeout=5)
|
||||||
# Executing above function to create new address
|
# This method is to create random label
|
||||||
self.test_random_screen()
|
self.test_random_screen()
|
||||||
|
|
||||||
@skip_screen_checks
|
@skip_screen_checks
|
||||||
@ordered
|
@ordered
|
||||||
def test_select_address(self):
|
def test_select_address(self):
|
||||||
"""Select First Address From Drawer-Box"""
|
"""Select First Address From Drawer-Box"""
|
||||||
|
# Checking current screen
|
||||||
|
self.assertExists("//ScreenManager[@current=\"myaddress\"]", timeout=5)
|
||||||
# This is for checking the Side nav Bar is closed
|
# This is for checking the Side nav Bar is closed
|
||||||
self.assertExists('//MDNavigationDrawer[@status~=\"closed\"]', timeout=5)
|
self.assertExists('//MDNavigationDrawer[@status~=\"closed\"]', timeout=5)
|
||||||
# This is for checking the menu button is appeared
|
# This is for checking the menu button is appeared
|
||||||
|
@ -92,13 +95,11 @@ class CreateRandomAddress(TeleniumTestProcess):
|
||||||
self.assertCheckScrollUp('//ContentNavigationDrawer//ScrollView[0]', timeout=5)
|
self.assertCheckScrollUp('//ContentNavigationDrawer//ScrollView[0]', timeout=5)
|
||||||
# Click to open Address Dropdown
|
# Click to open Address Dropdown
|
||||||
self.cli.wait_click('//NavigationItem[0]/CustomSpinner[0]', timeout=5)
|
self.cli.wait_click('//NavigationItem[0]/CustomSpinner[0]', timeout=5)
|
||||||
# Checking the state of dropdown (Should be open)
|
self.assertExists('//MySpinnerOption', timeout=5)
|
||||||
self.assertNotEqual('//NavigationItem[0]/CustomSpinner[@is_open]', False)
|
# Assert to check the address dropwdown open
|
||||||
try:
|
is_open = self.cli.getattr('//NavigationItem[0]/CustomSpinner[@is_open]', 'is_open')
|
||||||
# Select address fron Address Dropdown
|
self.assertEqual(is_open, True)
|
||||||
|
# Select address from address dropdown
|
||||||
self.cli.wait_click('//MySpinnerOption[0]', timeout=5)
|
self.cli.wait_click('//MySpinnerOption[0]', timeout=5)
|
||||||
# Checking current screen
|
# Checking current screen
|
||||||
self.assertExists("//Inbox[@name~=\"inbox\"]", timeout=5)
|
self.assertExists("//Inbox[@name~=\"inbox\"]", timeout=5)
|
||||||
except TeleniumHttpException:
|
|
||||||
self.cli.wait_click('//MySpinnerOption[0]', timeout=5)
|
|
||||||
self.assertExists("//Inbox[@name~=\"inbox\"]", timeout=5)
|
|
||||||
|
|
Reference in New Issue
Block a user