def _compare_testharness_test(self, driver_output, expected_driver_output):
        if expected_driver_output.image or expected_driver_output.audio or expected_driver_output.text:
            return False, []

        if driver_output.image or driver_output.audio or self._is_render_tree(
                driver_output.text):
            return False, []

        failures = []
        found_a_pass = False
        text = driver_output.text or ''
        lines = text.strip().splitlines()
        header = 'This is a testharness.js-based test.'
        footer = 'Harness: the test ran to completion.'
        if not lines or not header in lines:
            return False, []
        if not footer in lines:
            return True, [test_failures.FailureTestHarnessAssertion()]

        for line in lines:
            if line.startswith('FAIL') or line.startswith('TIMEOUT'):
                return True, [test_failures.FailureTestHarnessAssertion()]

            # Fail the test if there is any unrecognized output.
            if line != header and line != footer and not line.startswith(
                    'PASS'):
                return True, [test_failures.FailureTestHarnessAssertion()]
        return True, []
Ejemplo n.º 2
0
    def _compare_testharness_test(self, driver_output, expected_driver_output):
        if expected_driver_output.image or expected_driver_output.audio or expected_driver_output.text:
            return False, []

        if driver_output.image or driver_output.audio or self._is_render_tree(driver_output.text):
            return False, []

        failures = []
        found_a_pass = False
        text = driver_output.text or ''
        lines = text.strip().splitlines()
        if not lines or lines[0] != 'This is a testharness.js-based test.':
            return False, []
        if lines[-1] != 'Harness: the test ran to completion.':
            return True, [test_failures.FailureTestHarnessAssertion()]

        for line in lines:
            if line.startswith('FAIL') or line.startswith('TIMEOUT'):
                return True, [test_failures.FailureTestHarnessAssertion()]

        return True, []
Ejemplo n.º 3
0
    def _compare_testharness_test(self, driver_output, expected_driver_output):
        if expected_driver_output.image or expected_driver_output.audio or expected_driver_output.text:
            return False, []

        if driver_output.image or driver_output.audio or self._is_render_tree(driver_output.text):
            return False, []

        text = driver_output.text or ''

        if not testharness_results.is_testharness_output(text):
            return False, []
        if not testharness_results.is_testharness_output_passing(text):
            return True, [test_failures.FailureTestHarnessAssertion()]
        return True, []