コード例 #1
0
ファイル: test_login.py プロジェクト: SyedShahiq/Selenium
class EdxLogin(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)
        self.homepage = HomePage(self.driver)

    def test_login(self):
        self.driver.get('https://stage.edx.org')
        self.assertTrue(self.homepage.is_browser_on_the_page())
        self.homepage.click_signin()
        self.login.fill_form('*****@*****.**', 'edxedxedx1')
        self.login.submit_form()
        self.assertTrue(self.dashboard.go_to_courses_page())

    def test_empty_email(self):
        self.driver.get('https://stage.edx.org')
        self.assertTrue(self.homepage.is_browser_on_the_page())
        self.homepage.click_signin()
        self.login.fill_form('', 'edxedxedx1')
        self.login.submit_form()
        self.assertTrue(self.dashboard.go_to_courses_page())

    def tearDown(self):
        self.driver.close()
コード例 #2
0
 def setUp(self):
     #Initialize webdriver
     self.driver = webdriver.Chrome()
     self.login = LoginPage(self.driver)
     self.dashboard = DashboardPage(self.driver)
     self.course_page = CoursePage(self.driver)
     self.login_api = LoginApi('*****@*****.**', 'edxedxedx1')
コード例 #3
0
def test_empty_post_create(dr, login):
    dashboard_page = DashboardPage(dr)
    dashboard_page.new_post_text.send_keys("test")

    number_of_old_posts = len(dashboard_page.posts)
    dashboard_page.create_new_post(input_text="")
    assert dashboard_page.message.text == "PLEASE FILL THE FORM PROPERLY"
    time.sleep(2)
    number_of_new_posts = len(dashboard_page.posts)
    assert number_of_new_posts == number_of_old_posts
    time.sleep(5)
コード例 #4
0
    def test_user_can_register_in_approved_state(self):
        phone = generate_phone()
        first_name = generate_first_name()
        email = generate_email()

        HomePage().submit_phone_number(phone)
        HomePage().submit_signup_form(first_name=first_name,
                                      last_name=Faker().last_name(),
                                      email=email,
                                      approved_state=True)
        DashboardPage().check_user_is_redirected_to_add_property_page()
        DashboardPage().check_user_property_title_is_correct(first_name=first_name)
コード例 #5
0
    def test_user_can_register_without_indication_of_state(self):
        phone = generate_phone()
        first_name = generate_first_name()
        email = generate_email()

        HomePage().submit_phone_number(phone)
        HomePage().submit_signup_form(first_name=first_name,
                                      last_name=Faker().last_name(),
                                      email=email,
                                      property_owner='No, I am a renter')
        DashboardPage().check_user_is_redirected_to_overview_page()
        DashboardPage().check_user_greeting_text_is_correct(first_name=first_name)
コード例 #6
0
    def test_user_can_register_in_non_approved_state(self):
        phone = generate_phone()
        first_name = generate_first_name()
        email = generate_email()

        HomePage().submit_phone_number(phone)
        HomePage().submit_signup_form(first_name=first_name,
                                      last_name=Faker().last_name(),
                                      email=email,
                                      property_owner='Yes, I am already renting my property/s and looking for a property manager',
                                      non_approved_state=True)
        DashboardPage().check_user_is_redirected_to_overview_page()
        DashboardPage().check_user_greeting_text_is_correct(first_name=first_name)
コード例 #7
0
    def test_user_can_register_in_multiple_approved_state(self):
        phone = generate_phone()
        first_name = generate_first_name()
        email = generate_email()

        HomePage().submit_phone_number(phone)
        HomePage().submit_signup_form(first_name=first_name,
                                      last_name=Faker().last_name(),
                                      email=email,
                                      multiple_approved_states=True,
                                      property_owner='Not yet, looking to buy a property and rent it')
        DashboardPage().check_user_is_redirected_to_overview_page()
        DashboardPage().check_user_property_title_is_correct(first_name=first_name)
コード例 #8
0
 def test_open_doodle(self):
     landing_page = LandingPage(self.driver)
     landing_page.open_page()
     landing_page.open_login()
     login_page = LogInPage(self.driver)
     login_page.set_user_inputs("*****@*****.**",
                                "DoodleTest2021!")
     dashboard_page = DashboardPage(self.driver)
     dashboard_page.create_new()
     create_page = CreatePage(self.driver)
     create_page.create_new()
     create_poll_page = CreatePollPage(self.driver)
     create_poll_page.create_new("Test Poll", "Option1", "Option2")
     time.sleep(10)
     assert CreatePollLocators.voting_success
コード例 #9
0
 def test_create_new_document(self, driver):
     filepath = os.path.abspath('../files/myfile.txt')
     document_name = utils.randomize_string('doc_title')
     LoginPage(driver).login('*****@*****.**', 'admin')
     DashboardPage(driver).go_to_documents()
     DocumentListPage(driver).click_create_new_document()
     CreateDocumentPage(driver).create_document(document_name, filepath)
コード例 #10
0
class EdxLogin(unittest.TestCase):

    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)
        self.login_api = LoginApi()

    def test_login(self):
        # Open the target page
        self.login_api.authenticate(self.driver)
        self.dashboard.go_to_courses_page()
        
    def tearDown(self):
        self.driver.close()
コード例 #11
0
class EdxLogin(unittest.TestCase):
    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)

    def test_login(self):
        # Open the target page
        self.driver.get('https://*****/login')
        self.login.fill_form('*****@*****.**', 'edxedxedx1')
        self.login.submit_form()
        self.dashboard.go_to_courses_page()

    def tearDown(self):
        self.driver.close()
コード例 #12
0
ファイル: login_page.py プロジェクト: suim1218/M4MSelenium
 def login(self, username, password):
     self.username_textfield.clear()
     self.username_textfield.send_keys(username)
     self.password_textfield.clear()
     self.password_textfield.send_keys(password)
     self.code_textfield.send_keys('1111')
     self.login_btn.click()
     return DashboardPage(self.driver)
コード例 #13
0
    def submit_form(self):
        button_sign_in = self.dr.find_element(By.NAME, 'submit')
        button_sign_in.click()
        # Wait dashboard page
        self.wait.until(presence_of_element_located((By.CSS_SELECTOR, ".base_dashboard.active")),
                        message="Dashboard page doesn't open")

        return DashboardPage(self.dr)
コード例 #14
0
class EdxLogin(unittest.TestCase):
    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)
        self.course_page = CoursePage(self.driver)
        self.login_api = LoginApi('*****@*****.**', 'edxedxedx1')

    def test_switch_window(self):
        self.login_api.authenticate(self.driver)
        current_window = self.driver.current_window_handle
        self.dashboard.open_course_in_new_window('course-v1:edx+TEST01+2019')
        self.driver.switch_to.window(current_window)

    def tearDown(self):
        self.driver.close()
コード例 #15
0
    def testShouldCheckAddonLabel(self, mozwebqa):
        #This test is to check the labels of an add-on on the dashboard
        #Create page objects
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        addonpage_obj = AddonEditorPage(mozwebqa)

        loginpage_obj.login()

        #Create an addon. Then go to dashboard and assert that the label is 'initial'.
        homepage_obj.go_to_home_page()
        homepage_obj.click_create_addon_btn()
        addon_name = addonpage_obj.addon_name

        homepage_obj.header.click_dashboard()
        Assert.true(dashboardpage_obj.is_the_current_page)
        Assert.true(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s not found" % addon_name)

        #Click on the edit button of the addon.Then create a copy of that addon and assert that the label is 'copy'
        dashboardpage_obj.addon(addon_name).click_edit()
        addonpage_obj.click_copy()
        copy_addon_name = addonpage_obj.addon_name

        try:
            Assert.not_equal(addon_name, copy_addon_name)
        except:
            print 'A copy of the addon could not be created'
        homepage_obj.header.click_dashboard()
        Assert.true(dashboardpage_obj.addon(copy_addon_name).is_displayed, "Addon %s not found" % copy_addon_name)

        dashboardpage_obj.delete_test_data()
コード例 #16
0
    def testShouldCheckLibraryLabel(self, mozwebqa):
        #This test is to check the labels of a library on the dashboard
        #Create page objects
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        libpage_obj = LibraryEditorPage(mozwebqa)

        loginpage_obj.login()

        #Create a library. Then go to dashboard and assert that the label is present.
        homepage_obj.go_to_home_page()
        homepage_obj.click_create_lib_btn()
        library_name = libpage_obj.library_name

        libpage_obj.header.click_dashboard()
        Assert.true(dashboardpage_obj.is_the_current_page)
        Assert.true(dashboardpage_obj.library(library_name).is_displayed, "Library %s not found" % library_name)

        #Click on the edit button of the library.Then create a copy of that library and assert that the label is 'copy'
        dashboardpage_obj.library(library_name).click_edit()
        libpage_obj.click_copy()
        copy_library_name = libpage_obj.library_name

        try:
            Assert.not_equal(library_name, copy_library_name)
        except:
            print 'A copy of the library could not be created'
        libpage_obj.header.click_dashboard()

        Assert.true(dashboardpage_obj.library(copy_library_name).is_displayed, "Library %s not found" % copy_library_name)
        
        dashboardpage_obj.delete_test_data()
コード例 #17
0
class EdxLogin(unittest.TestCase):
    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)
        self.course_page = CoursePage(self.driver)
        self.problem_page = ProblemPage(self.driver)
        self.login_api = LoginApi('*****@*****.**', 'edxedxedx1')

    def test_iframe(self):
        self.login_api.authenticate(self.driver)
        self.dashboard.go_to_target_course('course-v1:edx+TEST01+2019')
        self.course_page.go_to_problem_page()
        self.problem_page.switch_to_iframe()

    def tearDown(self):
        self.driver.close()
コード例 #18
0
    def get(self):
        # self.context[""]=""... jinja stuff
        # return render_template('page.html',**self.context)

        # If user not logged in
        if session.get("uid") is None:
            return render_template("index.html", **self.context)
        else:
            return DashboardPage().dispatch_request()
コード例 #19
0
class TestFirstChallenge:
    @pytest.fixture(autouse=True)
    def class_setup(self, first_challenge_setup):
        self.seleniumDriver = SeleniumDriver(self.driver)
        self.homePage = HomePage(self.driver)
        self.loginPage = LoginPage(self.driver)
        self.dashboardPage = DashboardPage(self.driver)
        self.boardPage = BoardPage(self.driver)

    @pytest.mark.run(order=1)
    def test_first_challenge(self):
        self.homePage.click_login_button()
        self.loginPage.send_credentials()
        self.loginPage.click_login_button()
        self.dashboardPage.click_first_board()
        self.boardPage.click_first_add_card_button()
        self.boardPage.send_card_name('testCard')
        self.boardPage.verify_existence_of_testCard()
コード例 #20
0
class EdxLogin(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Firefox()
        self.login = LoginPage(self.driver)
        self.homepage = HomePage(self.driver)
        self.dashboard = DashboardPage(self.driver)

    def test_login(self):
        self.driver.get('https://stage.edx.org/')
        self.assertTrue(self.homepage.is_browser_on_the_page())
        self.homepage.click_signin()
        self.assertTrue(self.login.is_browser_on_the_page())
        self.login.fill_form()
        self.login.submit_form()
        self.dashboard.is_browser_on_the_page()

    def tearDown(self):
        self.driver.close()
コード例 #21
0
    def testAddonCount(self, mozwebqa):
        #This test is to assert that the count of the addons on dashboard is equal to the number of addons present on the page.
        #Create page objects
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)

        homepage_obj.go_to_home_page()
        homepage_obj.header.click_signin()
        loginpage_obj.login()
        Assert.true(dashboardpage_obj.is_the_current_page)

        #Get the total count of the number of add-ons that are displayed on the dashboard.
        addon_count = dashboardpage_obj.addons_element_count()

        #Get the number of addons that are displayed on the left hand side of the page.(Something like your add-ons(20))
        counter = dashboardpage_obj.addons_count_label

        #Assert that the total addons on the page matches the counter on the left hand side.
        Assert.equal(str(addon_count), str(counter))
コード例 #22
0
class EdxLogin(unittest.TestCase):
    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)

    def test_login(self):
        # Open the target page
        self.driver.get('https://...../login')
        # Assert that 'edX' is present in browser title
        self.assertTrue(self.login.is_browser_on_the_page())
        # Find and fill the email field
        self.login.fill_form()
        # Find and click the submit button
        self.login.submit_form()
        # Assert that 'Dashboard' is present in target pages browser title
        self.dashboard.is_browser_on_the_page()

    def tearDown(self):
        self.driver.close()
コード例 #23
0
 def setup_class(self):
     self.tc = ShishitoSupport().get_test_control()
     self.driver = self.tc.start_browser()
     self.ts = SeleniumTest(self.driver)
     self.welcome_guide = WelcomeGuide(self.driver)
     self.bottom_bar = BottomBar(self.driver)
     self.url_bar = UrlBar(self.driver)
     self.tabs_page = TabsPage(self.driver)
     self.main_page = MainPage(self.driver)
     self.bookmarks_page = BookmarksPage(self.driver)
     self.dashobard_page = DashboardPage(self.driver)
     self.history_page = HistoryPage(self.driver)
     self.test_url = "google.com"
コード例 #24
0
class TestThirdChallenge:
    @pytest.fixture(autouse=True)
    def class_setup(self, first_challenge_setup):
        self.seleniumDriver = SeleniumDriver(self.driver)
        self.homePage = HomePage(self.driver)
        self.loginPage = LoginPage(self.driver)
        self.dashboardPage = DashboardPage(self.driver)
        self.boardPage = BoardPage(self.driver)

        with open("/src/utils/data.json") as jsonfile:
            self.data = json.load(jsonfile)

        self.trelloCards = TrelloCards(self.data['auth']['api_key'],
                                       self.data['auth']['token'])
        self.trelloLists = TrelloLists(self.data['auth']['api_key'],
                                       self.data['auth']['token'])
        self.trelloBoards = TrelloBoards(self.data['auth']['api_key'],
                                         self.data['auth']['token'])
        self.trelloDriver = TrelloDriver(self.data['auth']['api_key'],
                                         self.data['auth']['token'])

        boardId = self.trelloBoards.create_new_board(
            self.data['third_challenge']['board_name'])['id']
        challenge_list = self.trelloLists.create_list(
            self.data['third_challenge']['list_name'], boardId)

    @pytest.mark.run(order=3)
    def test_third_challenge(self):
        self.homePage.click_login_button()
        self.loginPage.send_custom_credentials(
            self.data['third_challenge']['credentials']['email'],
            self.data['third_challenge']['credentials']['password'])
        self.loginPage.click_login_button()
        self.dashboardPage.click_first_board()
        self.boardPage.click_first_add_card_button()
        self.boardPage.send_card_name(
            self.data['third_challenge']['card_name'])
        self.boardPage.verify_existence_of_card(
            self.data['third_challenge']['card_name'])
コード例 #25
0
class EdxLogin(unittest.TestCase):

    def setUp(self):
        #Initialize webdriver
        self.driver = webdriver.Chrome()
        self.login = LoginPage(self.driver)
        self.dashboard = DashboardPage(self.driver)

    def test_login_using_csv(self):
        self.driver.get('https://courses.edx.org/login')
        filename = 'credentials.csv'
        user_file = os.path.abspath(os.path.join(os.curdir, filename))
        with open(user_file) as csvfile:
            csv_reader = csv.reader(csvfile)
            next(csv_reader)
            for row in csv_reader:
                self.login.fill_form(row[0], row[1])
                self.login.submit_form()
        self.dashboard.go_to_courses_page()

    def tearDown(self):
        self.driver.close()
コード例 #26
0
def test_text_post_create_positive(dr, login):
    input_text = "New Ivanna Post7!"
    dashboard_page = DashboardPage(dr)
    number_of_posts = dashboard_page.count_posts()
    dashboard_page.create_new_post(input_text)
    posts = dashboard_page.wait_new_post(number_of_posts)
    #Verification new post
    assert posts[0].text == input_text
コード例 #27
0
    def test_user_can_register_property_in_non_approved_state(self):
        phone = registered_phone
        otp = default_otp
        first_name = default_first_name
        street = Faker().street_address()

        HomePage().submit_phone_number(phone)
        HomePage().submit_otp_code(otp)
        DashboardPage().check_user_greeting_text_is_correct(first_name)
        DashboardPage().click_add_property()
        DashboardPage().fill_property_address(zip='10001', street=street)
        DashboardPage().check_city_state_in_property_address_is_correct(
            city='New York', state='NY')
        DashboardPage().check_disclaimer_for_non_approved_states_is_visible()
        DashboardPage().click_complete_button()
        DashboardPage().check_thank_you_text_is_displayed(
            first_name=first_name)
        DashboardPage().check_successfully_added_property_text_is_displayed()
        DashboardPage().check_property_card_text_is_displayed(
            'New York, NY 10001, United States')
        HomePage().click_continue()
        DashboardPage().check_user_greeting_text_is_correct(
            first_name=first_name)
コード例 #28
0
    def class_setup(self, first_challenge_setup):
        self.seleniumDriver = SeleniumDriver(self.driver)
        self.homePage = HomePage(self.driver)
        self.loginPage = LoginPage(self.driver)
        self.dashboardPage = DashboardPage(self.driver)
        self.boardPage = BoardPage(self.driver)

        with open("/src/utils/data.json") as jsonfile:
            self.data = json.load(jsonfile)

        self.trelloCards = TrelloCards(self.data['auth']['api_key'],
                                       self.data['auth']['token'])
        self.trelloLists = TrelloLists(self.data['auth']['api_key'],
                                       self.data['auth']['token'])
        self.trelloBoards = TrelloBoards(self.data['auth']['api_key'],
                                         self.data['auth']['token'])
        self.trelloDriver = TrelloDriver(self.data['auth']['api_key'],
                                         self.data['auth']['token'])

        boardId = self.trelloBoards.create_new_board(
            self.data['third_challenge']['board_name'])['id']
        challenge_list = self.trelloLists.create_list(
            self.data['third_challenge']['list_name'], boardId)
コード例 #29
0
ファイル: test_register.py プロジェクト: SyedShahiq/Selenium
class Register(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.register = RegisterPage(self.driver)
        self.homepage = HomePage(self.driver)
        self.dashboard = DashboardPage(self.driver)

    def test_register(self):
        self.driver.get('http://stage.edx.org/')
        self.assertTrue(self.homepage.is_browser_on_the_page())
        self.homepage.click_register()
        self.assertTrue(self.register.is_browser_on_the_page())
        self.register.fill_form()
        self.register.submit_form()
        self.assertTrue(self.dashboard.is_browser_on_the_page())

    def tearDown(self):
        self.driver.close()
コード例 #30
0
    def test_5(self, setUp):
        home_page = HomePage(driver=self.driver)
        home_page.open("/")
        home_page.click_login_button()
        login_page = LoginPage(driver=self.driver)

        login_page.login_with_email_and_password("*****@*****.**",
                                                 "yamin787898")
        home_page.click_my_account()
        dashboard_page = DashboardPage(driver=self.driver)
        dashboard_page.click_settings()
        settings_page = SettingsPage(driver=self.driver)
        settings_page.change_password("yamin787898", "Y@min787898")

        time.sleep(5)
        settings_page.open("/")
        time.sleep(5)
        home_page.click_my_account()
        self.driver.implicitly_wait(20)
        dashboard_page = DashboardPage(driver=self.driver)
        dashboard_page.click_settings()
        self.driver.implicitly_wait(20)
        settings_page = SettingsPage(driver=self.driver)
        settings_page.change_password("Y@min787898", "yamin787898")
コード例 #31
0
    def testShouldCheckLibDelete(self, mozwebqa):

        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        libpage_obj = LibraryEditorPage(mozwebqa)

        homepage_obj.go_to_home_page()
        loginpage_obj.login()

        homepage_obj.go_to_home_page()
        homepage_obj.click_create_lib_btn()
        library_name = libpage_obj.library_name

        homepage_obj.header.click_dashboard()
        dashboardpage_obj.library(library_name).click_delete()
        dashboardpage_obj.library(library_name).confirm_delete()
        Assert.false(dashboardpage_obj.library(library_name).is_displayed, "Library %s found" % library_name)
コード例 #32
0
    def testShouldCheckAddonDelete(self, mozwebqa):
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        addonpage_obj = AddonEditorPage(mozwebqa)

        loginpage_obj.login()

        homepage_obj.go_to_home_page()
        homepage_obj.click_create_addon_btn()

        # Get the name of the addon on the editor page.
        addon_name = addonpage_obj.addon_name

        # Go the the dashboard and delete the addon that you just created. Then check that the addon at the top of the list is not the same as the one you just deleted.
        homepage_obj.header.click_dashboard()
        dashboardpage_obj.addon(addon_name).click_delete()
        dashboardpage_obj.addon(addon_name).confirm_delete()
        Assert.false(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s found" % addon_name)
コード例 #33
0
def test_add_product(browser):
    AdminLoginPage(browser).log_in()
    DashboardPage(browser).nav_to_products_page()
    DashboardPage(browser).add_new_product()
コード例 #34
0
ファイル: test_register.py プロジェクト: SyedShahiq/Selenium
 def setUp(self):
     self.driver = webdriver.Firefox()
     self.register = RegisterPage(self.driver)
     self.homepage = HomePage(self.driver)
     self.dashboard = DashboardPage(self.driver)
コード例 #35
0
ファイル: login_page.py プロジェクト: ysmirnova/PythonCourse
 def login(self, username, password):
     helpers.input_value(self.driver, self.LOGIN_INPUT, username, 10)
     helpers.input_value(self.driver, self.PASSWORD_INPUT, password, 10)
     helpers.submit(self.driver, self.LOGIN_BUTTON, 10)
     return DashboardPage(self.driver)
コード例 #36
0
    def testShouldCheckLibDeactivateAndActivate(self, mozwebqa):
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        librarypage_obj = LibraryEditorPage(mozwebqa)

        homepage_obj.go_to_home_page()
        homepage_obj.header.click_signin()
        loginpage_obj.login()
        Assert.true(dashboardpage_obj.is_the_current_page)

        # go back to homepage, create a new library to work with
        dashboardpage_obj.header.click_home_logo()
        homepage_obj.click_create_lib_btn()
        library_name = librarypage_obj.library_name
        librarypage_obj.header.click_dashboard()

        #Click on the private button to make it private and then check that the library is not in the list anymore
        dashboardpage_obj.library(library_name).click_private()
        Assert.false(dashboardpage_obj.library(library_name).is_displayed, "Library %s found" % library_name)

        #Go to the private libraries page and check that the library that you just made private is present there.
        #Click on public to make it public and check on the dashboard that the library is present there.
        dashboardpage_obj.click_private_libraries_link()
        Assert.true(dashboardpage_obj.library(library_name).is_displayed, "Library %s not found" % library_name)

        # Switch it back to public - it should disappaer
        dashboardpage_obj.library(library_name).click_public()
        Assert.false(dashboardpage_obj.library(library_name).is_displayed, "Library %s found" % library_name)

        # Go to main dashboard, should be present
        dashboardpage_obj.header.click_dashboard()
        Assert.true(dashboardpage_obj.library(library_name).is_displayed, "Library %s not found" % library_name)

        dashboardpage_obj.delete_test_data()
コード例 #37
0
    def testShouldCheckAddonDeactivateAndActivate(self, mozwebqa):
        homepage_obj = HomePage(mozwebqa)
        loginpage_obj = LoginPage(mozwebqa)
        dashboardpage_obj = DashboardPage(mozwebqa)
        addonpage_obj = AddonEditorPage(mozwebqa)

        homepage_obj.go_to_home_page()
        homepage_obj.header.click_signin()
        loginpage_obj.login()
        Assert.true(dashboardpage_obj.is_the_current_page)

        # Go back to homepage and create a new addon to work with.
        dashboardpage_obj.header.click_home_logo()
        homepage_obj.click_create_addon_btn()
        addon_name = addonpage_obj.addon_name
        addonpage_obj.header.click_dashboard()

        #Click on the private button to make it private and then check that the addon is not in the list anymore
        dashboardpage_obj.addon(addon_name).click_private()
        Assert.false(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s found" % addon_name)

        #Go to the private addons page and check that the addon that you just made private is present there.
        #Click on public to make it public and check on the dashboard that the addon is present there.
        dashboardpage_obj.click_private_addons_link()
        Assert.true(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s not found" % addon_name)

        # Switch it back to public now, addon should disappear
        dashboardpage_obj.addon(addon_name).click_public()
        Assert.false(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s found" % addon_name)

        # Should be on main dashboard page
        dashboardpage_obj.header.click_dashboard()
        Assert.true(dashboardpage_obj.addon(addon_name).is_displayed, "Addon %s not found" % addon_name)

        dashboardpage_obj.delete_test_data()