| OLD | NEW |
| 1 # Copyright (C) 2010 Google Inc. All rights reserved. | 1 # Copyright (C) 2010 Google Inc. All rights reserved. |
| 2 # Copyright (C) 2010 Gabor Rapcsanyi (rgabor@inf.u-szeged.hu), University of Sze
ged | 2 # Copyright (C) 2010 Gabor Rapcsanyi (rgabor@inf.u-szeged.hu), University of Sze
ged |
| 3 # | 3 # |
| 4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
| 5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
| 6 # met: | 6 # met: |
| 7 # | 7 # |
| 8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
| 9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
| 10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 """The Manager orchestrates the overall process of running layout tests. | 30 """The Manager orchestrates the overall process of running layout tests. |
| 31 | 31 |
| 32 This includes finding tests to run, reading the test expectations, | 32 This includes finding tests to run, reading the test expectations, |
| 33 starting the required helper servers, deciding the order and way to | 33 starting the required helper servers, deciding the order and way to |
| 34 run the tests, retrying fails tests and collecting the test results, | 34 run the tests, retrying fails tests and collecting the test results, |
| 35 including crash logs, and mismatches with expectations. | 35 including crash logs, and mismatches with expectations. |
| 36 | 36 |
| 37 The Manager object has a constructor and one main method called run. | 37 The Manager object has a constructor and one main method called run. |
| 38 """ | 38 """ |
| 39 | 39 |
| 40 import datetime | |
| 41 import json | 40 import json |
| 42 import logging | 41 import logging |
| 43 import random | 42 import random |
| 44 import sys | 43 import sys |
| 45 import time | 44 import time |
| 46 | 45 |
| 47 from webkitpy.common.net.file_uploader import FileUploader | 46 from webkitpy.common.net.file_uploader import FileUploader |
| 48 from webkitpy.layout_tests.controllers.layout_test_finder import LayoutTestFinde
r | 47 from webkitpy.layout_tests.controllers.layout_test_finder import LayoutTestFinde
r |
| 49 from webkitpy.layout_tests.controllers.layout_test_runner import LayoutTestRunne
r | 48 from webkitpy.layout_tests.controllers.layout_test_runner import LayoutTestRunne
r |
| 50 from webkitpy.layout_tests.controllers.test_result_writer import TestResultWrite
r | 49 from webkitpy.layout_tests.controllers.test_result_writer import TestResultWrite
r |
| (...skipping 500 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 551 | 550 |
| 552 stats = {} | 551 stats = {} |
| 553 for result in initial_results.results_by_name.values(): | 552 for result in initial_results.results_by_name.values(): |
| 554 if result.type != test_expectations.SKIP: | 553 if result.type != test_expectations.SKIP: |
| 555 stats[result.test_name] = {'results': (_worker_number(result.wor
ker_name), result.test_number, result.pid, int( | 554 stats[result.test_name] = {'results': (_worker_number(result.wor
ker_name), result.test_number, result.pid, int( |
| 556 result.test_run_time * 1000), int(result.total_run_time * 10
00))} | 555 result.test_run_time * 1000), int(result.total_run_time * 10
00))} |
| 557 stats_trie = {} | 556 stats_trie = {} |
| 558 for name, value in stats.iteritems(): | 557 for name, value in stats.iteritems(): |
| 559 json_results_generator.add_path_to_trie(name, value, stats_trie) | 558 json_results_generator.add_path_to_trie(name, value, stats_trie) |
| 560 return stats_trie | 559 return stats_trie |
| OLD | NEW |