48 lines
2.5 KiB
Python
48 lines
2.5 KiB
Python
from .telenium_process import TeleniumTestProcess
|
|
from .common import skip_screen_checks
|
|
from .common import ordered
|
|
|
|
|
|
class TrashMessage(TeleniumTestProcess):
|
|
"""Trash Screen Functionality Testing"""
|
|
|
|
@skip_screen_checks
|
|
@ordered
|
|
def test_delete_trash_message(self):
|
|
"""Delete Trash message permanently from trash message listing"""
|
|
# Checking current Screen(Inbox screen)
|
|
self.assert_wait_no_except('//ScreenManager[@current]', timeout=15, value='inbox')
|
|
# Method to open side navbar
|
|
self.open_side_navbar()
|
|
# this is for opening Trash screen
|
|
self.cli.wait_click('//NavigationItem[@text=\"Trash\"]', timeout=2)
|
|
# Checking Trash Screen
|
|
self.assertExists("//ScreenManager[@current=\"trash\"]", timeout=5)
|
|
# This is for swiping message to activate delete icon.
|
|
self.cli.wait_drag(
|
|
'//Trash[0]//TwoLineAvatarIconListItem[0]/BoxLayout[1]',
|
|
'//Trash[0]//TwoLineAvatarIconListItem[0]/BoxLayout[2]', 2, timeout=5)
|
|
# Checking the "trash-can" is rendered
|
|
self.assertExists(
|
|
"//MDList[0]/CutsomSwipeToDeleteItem[0]//MDIconButton[@icon~=\"trash-can\"]", timeout=2)
|
|
# Delete icon is enabled
|
|
self.cli.setattr('//MDList[0]/CutsomSwipeToDeleteItem[0]//MDIconButton', 'disabled', False)
|
|
# Checking the Dialog popup is closed
|
|
self.assertNotExists('//MDDialog[@open]', timeout=5)
|
|
# Checking the delete icon is rendered and functional
|
|
self.assertExists('//MDList[0]/CutsomSwipeToDeleteItem[0]//MDIconButton[@icon=\"trash-can\"]', timeout=5)
|
|
# Click on the delete icon to delete the current message
|
|
self.cli.wait_click('//MDList[0]/CutsomSwipeToDeleteItem[0]//MDIconButton[@icon=\"trash-can\"]', timeout=5)
|
|
# Checking Confirm Popup is Opened
|
|
self.assertExists('//MDDialog[@open]', timeout=5)
|
|
# Checking the popup's 'Yes' button is rendered.
|
|
self.assertExists("//MDDialog//MDFlatButton[@text=\"Yes\"]", timeout=5)
|
|
# Clicking on 'Yes' Button on Popup to confirm delete.
|
|
self.cli.wait_click('//MDFlatButton[@text=\"Yes\"]', timeout=5)
|
|
# Checking the Dialog is closed on click "Yes" button
|
|
self.assertNotExists('//MDDialog[@open]', timeout=5)
|
|
# Checking the message is rendered on Trash screen
|
|
self.assertExists('//MDList[0]/CutsomSwipeToDeleteItem[0]', timeout=5)
|
|
# Checking Current screen is Trash Screen
|
|
self.assertExists("//ScreenManager[@current=\"trash\"]", timeout=5)
|