예제 #1
0
    def pytest_runtest_logreport(self, report):
        """pytest runtest logreport hook

        - sends serialized log reports to the master

        """
        self.send_event("runtest_logreport", report=serialize_report(report))
        if report.when == 'teardown':
            path, lineno, domaininfo = report.location
            test_status = _test_status(_format_nodeid(report.nodeid, False))
            if test_status == "failed":
                appliance = find_appliance(self)
                try:
                    self.log.info(
                        "Managed providers: {}".format(
                            ", ".join([
                                prov.key for prov in
                                appliance.managed_known_providers]))
                    )
                except KeyError as ex:
                    if 'ext_management_systems' in ex.msg:
                        self.log.warning("Unable to query ext_management_systems table; DB issue")
                    else:
                        raise
            self.log.info(log.format_marker('{} result: {}'.format(_format_nodeid(report.nodeid),
                                                                   test_status)),
                          extra={'source_file': path, 'source_lineno': lineno})
        if report.outcome == "skipped":
            self.log.info(log.format_marker(report.longreprtext))
예제 #2
0
    def pytest_runtest_logreport(self, report):
        """pytest runtest logreport hook

        - sends serialized log reports to the master

        """
        self.send_event("runtest_logreport", report=serialize_report(report))
        if report.when == 'teardown':
            path, lineno, domaininfo = report.location
            test_status = _test_status(_format_nodeid(report.nodeid, False))
            if test_status == "failed":
                appliance = find_appliance(self)
                try:
                    self.log.info(
                        "Managed providers: {}".format(
                            ", ".join([
                                prov.key for prov in
                                appliance.managed_known_providers]))
                    )
                except KeyError as ex:
                    if 'ext_management_systems' in ex.msg:
                        self.log.warning("Unable to query ext_management_systems table; DB issue")
                    else:
                        raise
            self.log.info(log.format_marker('{} result: {}'.format(_format_nodeid(report.nodeid),
                                                                   test_status)),
                          extra={'source_file': path, 'source_lineno': lineno})
        if report.outcome == "skipped":
            self.log.info(log.format_marker(report.longreprtext))