コード例 #1
0
 def open(self, username, password):
     self.selenium.get(self.canonical_url)
     from pages.desktop.login_page import LoginPage
     page = LoginPage(self.base_url, self.selenium).wait_for_page_to_load()
     page.log_in(username, password)
     self.wait_for_page_to_load()
     return self
コード例 #2
0
    def test_that_article_can_be_created(self, mozwebqa):
        """
           Creates a new knowledge base article.
           Verifies creation.
           Deletes the article
        """
        kb_new_article = KnowledgeBaseNewArticle(mozwebqa)
        kb_article_history = KnowledgeBaseShowHistory(mozwebqa)
        kb_edit_article = KnowledgeBaseEditArticle(mozwebqa)
        login_pg = LoginPage(mozwebqa)

        # Admin account is used as he can delete the article
        login_pg.log_in('admin')

        article_info_dict = self._create_new_generic_article(kb_new_article)
        kb_new_article.submit_article()
        kb_new_article.set_article_comment_box()

        # verify article history
        Assert.true(kb_article_history.is_the_current_page)

        # verify article contents
        kb_article_history.navigation.click_edit_article()

        actual_summary_text = kb_edit_article.article_summary_text
        Assert.equal(article_info_dict['summary'], actual_summary_text)

        actual_contents_text = kb_edit_article.article_contents_text
        Assert.equal(article_info_dict['content'], actual_contents_text)

        # delete the same article
        kb_edit_article.navigation.click_show_history()
        kb_article_history.delete_entire_article_document()
コード例 #3
0
ファイル: page_provider.py プロジェクト: bebef1987/sumo-tests
 def _go_to_page_with_login_redirect(self, page_object, user='******'):
     from pages.desktop.login_page import LoginPage
     self.selenium.get(self.base_url_ssl + page_object._page_url)
     login_page = LoginPage(self.testsetup)
     login_page.log_in(user)
     page_object.is_the_current_page
     return page_object
コード例 #4
0
 def open(self, username, password):
     self.selenium.get(self.canonical_url)
     from pages.desktop.login_page import LoginPage
     page = LoginPage(self.base_url, self.selenium).wait_for_page_to_load()
     page.log_in(username, password)
     self.wait_for_page_to_load()
     return self
コード例 #5
0
    def test_that_article_can_be_deleted(self, mozwebqa):
        """
           Creates a new knowledge base article.
           Deletes the article.
           Verifies the deletion.
        """
        kb_new_article = KnowledgeBaseNewArticle(mozwebqa)
        kb_article = KnowledgeBaseArticle(mozwebqa)
        kb_article_history = KnowledgeBaseShowHistory(mozwebqa)
        login_pg = LoginPage(mozwebqa)

        # Admin account is used as he can delete the article
        login_pg.log_in('admin')

        article_info_dict = self._create_new_generic_article(kb_new_article)

        kb_new_article.submit_article()
        kb_new_article.set_article_comment_box()

        # go to article and get URL
        kb_article_history.navigation.click_article()
        article_url = kb_article.url_current_page

        # delete the same article
        kb_article.navigation.click_show_history()
        kb_article_history.delete_entire_article_document()

        kb_article_history.selenium.open(article_url)
        actual_page_title = kb_article_history.page_title
        Assert.contains("Page Not Found", actual_page_title)
コード例 #6
0
 def _go_to_page_with_login_redirect(self, page_object, username, password):
     self._set_window_size()
     from pages.desktop.login_page import LoginPage
     self.selenium.get(self.base_url + page_object._page_url)
     login_page = LoginPage(self.testsetup)
     login_page.log_in(username, password)
     page_object.is_the_current_page
     page_object.header.dismiss_staging_site_warning_if_present()
     return page_object
コード例 #7
0
 def _go_to_page_with_login_redirect(self, page_object, user='******'):
     self.selenium.maximize_window()
     from pages.desktop.login_page import LoginPage
     self.selenium.get(self.base_url + page_object._page_url)
     login_page = LoginPage(self.testsetup)
     login_page.log_in(user)
     page_object.is_the_current_page
     page_object.header.dismiss_staging_site_warning_if_present()
     return page_object
コード例 #8
0
    def test_that_article_can_be_previewed_before_submitting(self, mozwebqa):

        kb_new_article = KnowledgeBaseNewArticle(mozwebqa)
        login_pg = LoginPage(mozwebqa)

        # Admin account is used as he can delete the article
        login_pg.log_in('admin')

        article_info_dict = self._create_new_generic_article(kb_new_article)

        kb_new_article.click_article_preview_button()
        actual_preview_text = kb_new_article.get_article_preview_text()

        Assert.equal(article_info_dict['content'], actual_preview_text)
コード例 #9
0
    def test_that_article_can_be_edited(self, mozwebqa):
        """
           Creates a new knowledge base article.
           Verifies creation.
           Edits the article, verifies the edition.
           Deletes the article
        """
        kb_new_article = KnowledgeBaseNewArticle(mozwebqa)
        kb_article_history = KnowledgeBaseShowHistory(mozwebqa)
        kb_edit_article = KnowledgeBaseEditArticle(mozwebqa)
        login_pg = LoginPage(mozwebqa)

        # Admin account is used as he can delete the article
        login_pg.log_in('admin')

        article_info_dict = self._create_new_generic_article(kb_new_article)
        kb_new_article.submit_article()
        kb_new_article.set_article_comment_box()

        # verify article history
        Assert.true(kb_article_history.is_the_current_page)

        # edit that same article
        timestamp = datetime.datetime.now()
        edited_article_summary = "this is an automated summary__%s_edited" % timestamp
        edited_article_content = "automated content__%s_edited" % timestamp
        article_info_dict_edited = {'title': article_info_dict['title'],\
                                    'category': 'How to', 'keyword': 'test',\
                                    'summary': edited_article_summary, 'content': edited_article_content}

        kb_article_history.navigation.click_edit_article()
        kb_edit_article.edit_article(article_info_dict_edited)

        kb_article_history.navigation.click_edit_article()

        # verify the contents of the edited article
        actual_page_title = kb_edit_article.page_title
        Assert.contains(article_info_dict_edited['title'], actual_page_title)

        actual_summary_text = kb_edit_article.article_summary_text
        Assert.equal(edited_article_summary, actual_summary_text)

        actual_content_text = kb_edit_article.article_contents_text
        Assert.equal(edited_article_content, actual_content_text)

        # delete the same article
        kb_edit_article.navigation.click_show_history()
        kb_article_history.delete_entire_article_document()
コード例 #10
0
    def test_that_article_can_be_translated(self, mozwebqa):
        """
           Creates a new knowledge base article.
           Translate article
        """
        kb_new_article = KnowledgeBaseNewArticle(mozwebqa)
        kb_article_history = KnowledgeBaseShowHistory(mozwebqa)
        kb_edit_article = KnowledgeBaseEditArticle(mozwebqa)
        kb_translate_pg = KnowledgeBaseTranslate(mozwebqa)
        login_pg = LoginPage(mozwebqa)
        timestamp = datetime.datetime.now()

        # Admin account is used as he can delete the article
        login_pg.log_in('admin')

        article_info_dict = self._create_new_generic_article(kb_new_article)
        kb_new_article.submit_article()
        kb_new_article.set_article_comment_box()

        # verify article history
        Assert.true(kb_article_history.is_the_current_page)

        kb_article_history.navigation.click_translate_article()
        kb_translate_pg.click_translate_language('Esperanto (eo)')

        kb_translate_pg.type_title('artikolo_titolo%s' % timestamp)
        kb_translate_pg.type_slug('artikolo_limako_%s' % timestamp)
        kb_translate_pg.click_submit_review()

        change_comment = 'artikolo sangoj %s' % timestamp
        kb_translate_pg.type_modal_describe_changes(change_comment)
        kb_translate_pg.click_modal_submit_changes_button()

        Assert.equal(change_comment, kb_article_history.most_recent_revision_comment)
        Assert.equal('Esperanto', kb_article_history.revision_history)

        kb_article_history.delete_entire_article_document()
コード例 #11
0
 def click_login(self):
     self.selenium.find_element(*self._login_locator).click()
     from pages.desktop.login_page import LoginPage
     return LoginPage(self.testsetup)
コード例 #12
0
 def sign_out(self):
     self.header.click_logout()
     from pages.desktop.login_page import LoginPage
     return LoginPage(self.testsetup)
コード例 #13
0
ファイル: base.py プロジェクト: zu83/kitsune
 def sign_out(self):
     self.header.click_logout()
     from pages.desktop.login_page import LoginPage
     return LoginPage(self.base_url, self.selenium)