def test_assert_that_a_app_can_be_added_and_deleted_via_the_api(self, mozwebqa): mock_app = MockApplication() # generate mock app # init API client mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) mk_api.submit_app(mock_app) # submit app app_status = mk_api.app_status(mock_app) # get app data from API # check that app is pending Assert.equal(2, app_status['status']) # Check for app on the site dev_home = Home(mozwebqa) dev_home.go_to_developers_homepage() dev_home.login(user="******") mock_app['url_end'] = app_status['slug'] app_status_page = dev_home.go_to_apps_status_page(mock_app) Assert.contains(mock_app.name, app_status_page.page_title) # Delete the app mk_api.delete_app(mock_app) app_status_page = dev_home.go_to_apps_status_page(mock_app) Assert.contains("We're sorry, but we can't find what you're looking for.", app_status_page.app_not_found_message)
def test_assert_that_a_app_can_be_added_and_deleted_via_the_api(self, mozwebqa_devhub_logged_in): mock_app = MockApplication() # generate mock app # init API client mk_api = MarketplaceAPI.get_client(mozwebqa_devhub_logged_in.base_url, mozwebqa_devhub_logged_in.credentials) mk_api.submit_app(mock_app) # submit app app_status = mk_api.app_status(mock_app) # get app data from API # check that app is pending Assert.equal(2, app_status['status']) # Check for app on the site dev_home = Home(mozwebqa_devhub_logged_in) app_status_page = dev_home.go_to_app_status_page(mock_app) Assert.contains(mock_app.name, app_status_page.page_title) # Delete the app mk_api.delete_app(mock_app) app_status_page = dev_home.go_to_app_status_page(mock_app) Assert.contains("We're sorry, but we can't find what you're looking for.", app_status_page.app_not_found_message)
def test_assert_that_a_app_can_be_added_by_api(self, mozwebqa): mock_app = MockApplication() # generate mock app mock_app.name = "API %s" % mock_app.name # init API client mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) mk_api.submit_app(mock_app) # submit app app_status = mk_api.app_status(mock_app) # get app data from API # Selenium dev_home = Home(mozwebqa) dev_home.go_to_developers_homepage() dev_home.login(user="******") dev_submissions = dev_home.header.click_my_submissions() dev_submissions.sorter.sort_by("created") apps = dev_submissions.submitted_apps app_names = [] for app in apps: app_names.append(app.name) Assert.contains(app_status["name"], app_names)
def test_assert_that_a_app_can_be_added_by_api(self, mozwebqa): mock_app = MockApplication() # generate mock app mock_app.name = 'API %s' % mock_app.name # init API client mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) mk_api.submit_app(mock_app) # submit app app_status = mk_api.app_status(mock_app) # get app data from API # Selenium dev_home = Home(mozwebqa) dev_home.go_to_developers_homepage() dev_home.login(user="******") dev_submissions = dev_home.header.click_my_submissions() dev_submissions.sorter.sort_by('created') apps = dev_submissions.submitted_apps app_names = [] for app in apps: app_names.append(app.name) Assert.contains(app_status['name'], app_names)
def test_that_deletes_app(self, mozwebqa): mock_app = MockApplication() # generate mock app mock_app.name = 'API %s' % mock_app.name # init API client mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) mk_api.submit_app(mock_app) # submit app app_status = mk_api.app_status(mock_app) # get app data from API dev_home = Home(mozwebqa) dev_home.go_to_developers_homepage() dev_home.login(user="******") my_apps = dev_home.header.click_my_submissions() app_name = app_status['name'] self._delete_app(mozwebqa, app_name) Assert.true(my_apps.is_notification_visible) Assert.true(my_apps.is_notification_successful, my_apps.notification_message) Assert.equal("App deleted.", my_apps.notification_message) for i in range(1, my_apps.paginator.total_page_number + 1): for app in my_apps.submitted_apps: Assert.not_equal(app.name, app_name) if my_apps.paginator.is_paginator_present: if not my_apps.paginator.is_first_page_disabled: my_apps.paginator.click_next_page()
def _reviews_setup(self, mozwebqa): # init API client self.mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) # Submit a review using marketplace API mock_review = MockReview() home_page = Home(mozwebqa) self.app_name, self.review_id = self.mk_api.submit_app_review_for_either( home_page.app_under_test, mock_review.body, mock_review.rating )
def _reviews_setup(self, mozwebqa): # init API client self.mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) # Submit a review using marketplace API mock_review = MockReview() home_page = Home(mozwebqa) self.app_name, self.review_id = self.mk_api.submit_app_review_for_either( home_page.app_under_test, mock_review.body, mock_review.rating)
def free_app(request): """Return a free app created via the Marketplace API, and automatically delete the app after the test.""" mozwebqa = request.getfuncargvalue('mozwebqa') request.app = MockApplication() api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) api.submit_app(request.app) # This acts like a tearDown, running after each test function def fin(): # If the app is being deleted by the test, set the id to 0 if hasattr(request, 'app') and request.app['id'] > 0: api.delete_app(request.app) request.addfinalizer(fin) return request.app
def free_app(request): """Return a free app created via the Marketplace API, and automatically delete the app after the test.""" mozwebqa = request.getfuncargvalue('mozwebqa') request.app = MockApplication() api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials) api.submit_app(request.app) # This acts like a tearDown, running after each test function def fin(): # If the app is being deleted by the test, set the id to 0 if hasattr(request, 'app') and request.app['id'] > 0: api.delete_app(request.app) request.addfinalizer(fin) return request.app
def _reviews_setup(self, mozwebqa): self.mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials)
def _reviews_setup(self, mozwebqa): self.mk_api = MarketplaceAPI.get_client(mozwebqa.base_url, mozwebqa.credentials)