Best Python code snippet using lemoncheesecake
zafira_plugin.py
Source:zafira_plugin.py  
...164                    self.on_test_success(self.test)165                elif test_result == 'failed':166                    self.on_test_failure(self.test, report)167                else:168                    self.on_test_skipped(self.test, report)169                log_link = Context.get(PARAMETER['ZAFIRA_APP_URL'])170                log_link += '/tests/runs/{}/info/{}'.format(171                    self.test_run['id'],172                    self.test['id']173                )174                self.add_artifact_to_test(175                    self.test,176                    Context.get(PARAMETER['ARTIFACT_LOG_NAME']),177                    log_link,178                    Context.get(PARAMETER['ARTIFACT_EXPIRES_IN_DEFAULT_TIME']))179        except ZafiraError as e:180            self.logger.error("Unable to finish test correctly", e)181    @pytest.hookimpl182    def pytest_sessionfinish(self, session, exitstatus):183        """184        Teardown-class handler, closes the testrun185        """186        if not self.ZAFIRA_ENABLED:187            return188        try:189            self.zc.finish_test_run(self.test_run["id"])190        except ZafiraError as e:191            self.logger.error("Unable to finish test run correctly", e)192    def compose_package_name(self, path_entries_list):193        return '/'.join(path_entries_list)194    def add_artifact_to_test(self,195                             test,196                             artifact_name,197                             artifact_link,198                             expires_in=None):199        """200        Adds test artifact to test201        """202        try:203            self.zc.add_test_artifact_to_test(204                test["id"],205                artifact_link,206                artifact_name,207                expires_in208            )209        except ZafiraError as e:210            self.logger.error("Unable to add artifact to test correctly", e)211    def __initialize_zafira(self):212        enabled = False213        try:214            ZAFIRA_ENABLED = Context.get(PARAMETER['ZAFIRA_ENABLED'])215            self.ZAFIRA_ENABLED = ZAFIRA_ENABLED == 'True'216            self.ZAFIRA_ACCESS_TOKEN = Context.get(PARAMETER['ACCESS_TOKEN'])217            if self.ZAFIRA_ENABLED:218                self.zc = zafira_client219                self.ZAFIRA_ENABLED = self.zc.is_zafira_available()220                if self.ZAFIRA_ENABLED:221                    self.refresh_token = self.zc.refresh_token(222                        self.ZAFIRA_ACCESS_TOKEN223                    ).json()224                    self.zc.access_token = self.refresh_token['accessToken']225                    if self.ZAFIRA_ENABLED:226                        is_available = "available"227                    else:228                        is_available = "unavailable"229                    self.logger.info("Zafira is " + is_available)230            enabled = self.ZAFIRA_ENABLED231        except ZafiraError as e:232            self.logger.error("Unable to find config property: ", e)233        return enabled234    @staticmethod235    def on_test_success(test):236        test['status'] = TEST_STATUS['PASSED']237    @staticmethod238    def on_test_failure(test, report):239        test['status'] = TEST_STATUS['FAILED']240        test['message'] = report.longreprtext241    @staticmethod242    def on_test_skipped(test, report):243        test['message'] = report.longreprtext244        if not hasattr(report, 'wasxfail'):245            test['status'] = TEST_STATUS['SKIPPED']246        else:247            test['status'] = TEST_STATUS['FAILED']248    def get_ci_run_id(self):249        return self.test_run['ciRunId']250    def add_work_item_to_test(self, test_id, work_item):251        if not self.ZAFIRA_ENABLED:252            return253        try:254            work_items = list()255            lenght_check = len(work_item) < self.MAX_LENGTH_OF_WORKITEM256            work_items.append(work_item if lenght_check else 'Skipped')...test_skip_all_tests.py
Source:test_skip_all_tests.py  
...41        self.test_setup_ran = False42        self.test_teardown_ran = False43    def tearDown(self):44        self.context.close()45    def on_test_skipped(self, **kwargs):46        self.skip_events += 147    def test_skips_all_tests(self):48        self.run_suite()49        expect(self.skip_events).to(equal(3))  # number of tests50    def test_does_not_run_test_setup(self):51        self.run_suite()52        assert not self.test_setup_ran, "Setup ran"53    def test_does_not_run_test_teardown(self):54        self.run_suite()55        assert not self.test_teardown_ran, "Teardown ran"56    def test_does_not_run_suite_teardown(self):57        self.run_suite()58        assert not self.suite_teardown_ran, "Teardown ran"59    def test_repeats_skip_message_for_tests(self):60        caught = None61        def on_test_skipped(*, exception, **kwargs):62            nonlocal caught63            caught = exception64        EventBroker.subscribe(event=TestEvent.test_skipped, func=on_test_skipped)65        self.skip_msg = "Sometimes you feel like a nut.  Sometimes you don't."66        self.run_suite()67        expect(str(caught)).to(contain(self.skip_msg))68if "__main__" == __name__:...test_suite_setup_failure.py
Source:test_suite_setup_failure.py  
...28        subscribe_event_handlers(self)29        self.skip_events = 030    def tearDown(self):31        self.context.close()32    def on_test_skipped(self, **kwargs):33        self.skip_events += 134    def test_skips_all_tests(self):35        run_suite()36        expect(self.skip_events).to(equal(3))  # number of tests37if "__main__" == __name__:...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
