def GetDisabledTests(self): """Returns a list of disabled tests. Returns: A list of disabled tests obtained from gtest_filter/test_suite_disabled. """ disabled_tests = run_tests_helper.GetExpectations(self._GetFilterFileName()) if self._running_on_emulator: # Append emulator's filter file. disabled_tests.extend(run_tests_helper.GetExpectations( self._GetAdditionalEmulatorFilterName())) return disabled_tests
def UpdateFilter(self, failed_tests): """Updates test_suite_disabled file with the new filter (deletes if empty). If running in Emulator, only the failed tests which are not in the normal filter returned by _GetFilterFileName() are written to emulator's additional filter file. Args: failed_tests: A sorted list of failed tests. """ disabled_tests = [] if not self._running_on_emulator: filter_file_name = self._GetFilterFileName() else: filter_file_name = self._GetAdditionalEmulatorFilterName() disabled_tests.extend( run_tests_helper.GetExpectations(self._GetFilterFileName())) logging.info( 'About to update emulator\'s additional filter (%s).' % filter_file_name) new_failed_tests = [] if failed_tests: for test in failed_tests: if test.name not in disabled_tests: new_failed_tests.append(test.name) if not new_failed_tests: if os.path.exists(filter_file_name): os.unlink(filter_file_name) return filter_file = file(filter_file_name, 'w') if self._running_on_emulator: filter_file.write( '# Addtional list of suppressions from emulator\n') else: filter_file.write('# List of suppressions\n') filter_file.write('# This file was automatically generated by %s\n' % sys.argv[0]) filter_file.write('\n'.join(sorted(new_failed_tests))) filter_file.write('\n') filter_file.close()