def test_add_text_status(oxwall_app, db, signed_in_predefined_user, user_full_info, status_text): #create test status (text present in status_data.json) status = Status(text=status_text, user=user_full_info.username) # ensure that What happenning present in page assert oxwall_app.dash_page.status_text_field.placeholder == "What’s happening?" #Enter text to status text oxwall_app.dash_page.status_text_field.input(status.text) oxwall_app.dash_page.send_button.click() oxwall_app.dash_page.wait_until_new_status_appeared() #Get just created status(by web form) new_status = oxwall_app.dash_page.status_list[0] #Ensure that text,time are the same(from web form and status that we created below) assert new_status.text == status.text assert new_status.time == "within 1 minute" # Get status from datebase status_from_db = db.get_last_text_status() #Ensure that text,author is yhe same in datd base and webform assert new_status.text == status_from_db.text assert status_from_db.user == new_status.user
def test_add_text_status(driver, signed_in_user, status_text, db): status = Status(text=status_text, user=signed_in_user) app = OxwallSite(driver) old_status_amount = db.count_status() app.dash_page.add_new_text_status(status) app.dash_page.wait_until_new_status_appeared() db.verify_new_status(status, old_status_amount) app.dash_page.verify_new_text_status_block(status)
def test_add_comment_to_status(driver, sign_in_session, admin_user): status = Status(text, user=admin_user) status_block = StatusBlock(driver) status_block.add_new_status(status.text) status_block.wait_until_new_status_appeared() status_block.select_last_status() comment_text = status_block.add_comment(comme) assert comme == comment_text
def get_last_text_status(self): """ Get status with maximum id that is last added """ with self.connection.cursor() as cursor: sql = """SELECT * FROM `ow_newsfeed_action` WHERE `id`= (SELECT MAX(`id`) FROM `ow_newsfeed_action`) AND `entityType`="user-status" """ cursor.execute(sql) response = cursor.fetchone() data = json.loads(response["data"]) self.connection.commit() return Status(text=data["status"])
def test_add_text_status(driver, signed_in_user, status_text): status = Status(text=status_text, user=signed_in_user) app = OxwallSite(driver) old_status_list = app.dash_page.status_list # Actions: app.dash_page.status_text_field.input(status.text) app.dash_page.send_button.click() app.dash_page.wait_until_new_status_appeared() # Verification that new status with this text appeared new_status_list = app.dash_page.status_list assert len(new_status_list) == len(old_status_list) + 1 new_status = new_status_list[0] assert status.text == new_status.text assert signed_in_user.real_name == new_status.user assert "within 1 minute" == new_status.time
def test_add_text_status(driver, sign_in_session, admin_user): #app = Oxwall(driver) status = Status(text, user=admin_user) status_block = StatusBlock(driver) status_block.add_new_status(status.text) status_block.wait_until_new_status_appeared() # Verification that new status with this text appeared time.sleep(3) text_elements = status_block.get_status_list() #user_status_elements = app.get_status_users() #time_status_elements = app.get_status_users() # print(text_elements[0].text) assert text_elements[0].text == text
def test_delete_status(driver, sign_in_session, admin_user): status = Status(text, user=admin_user) status_block = StatusBlock(driver) status_block.add_new_status(status.text) status_block.wait_until_new_status_appeared() # Verification that new status with this text appeared a = status_block.get_status_list() assert a[0].text == text status_block.delete_last_status() status_block.refresh_page() status_block.wait_until_new_status_appeared() text_element = status_block.get_status_list() assert text_element[0].text != text
def test_add_text_status(driver, signed_as_admin , oxwall_app, status_text,db): status = Status(text=status_text, user=signed_as_admin) with allure.step("Assert to go main page"): assert oxwall_app.dash_page.status_text_field.placeholder == "What’s happening?" oxwall_app.dash_page.status_text_field.input(status.text) oxwall_app.dash_page.send_button.click() oxwall_app.dash_page.wait_until_new_status_appeared() new_status = oxwall_app.dash_page.status_list[0] with allure.step("Assert new status"): assert new_status.text == status.text assert new_status.time == "within 1 minute" status_from_db = db.get_last_text_status() assert status.text == status_from_db.text db.delete_status_by_id(status_from_db.id)
def status_for_test(driver, signed_in_user, oxwall_app): status = Status(text="Status for test", user=signed_in_user) oxwall_app.dash_page.status_text_field.input(status.text) oxwall_app.dash_page.send_button.click() oxwall_app.dash_page.wait_until_new_status_appeared()