| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from datetime import datetime | 5 from datetime import datetime |
| 6 import mock | 6 import mock |
| 7 import os | 7 import os |
| 8 import unittest | 8 import unittest |
| 9 | 9 |
| 10 from libs.http.retry_http_client import RetryHttpClient | 10 from libs.http.retry_http_client import RetryHttpClient |
| (...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 282 build_file = os.path.join( | 282 build_file = os.path.join( |
| 283 os.path.dirname(__file__), 'data', 'running_build.json') | 283 os.path.dirname(__file__), 'data', 'running_build.json') |
| 284 with open(build_file, 'r') as f: | 284 with open(build_file, 'r') as f: |
| 285 build_data = f.read() | 285 build_data = f.read() |
| 286 | 286 |
| 287 master_name = 'a' | 287 master_name = 'a' |
| 288 builder_name = 'b' | 288 builder_name = 'b' |
| 289 build_number = 632 | 289 build_number = 632 |
| 290 expected_build_start_time = datetime.utcfromtimestamp(1417470720.763887) | 290 expected_build_start_time = datetime.utcfromtimestamp(1417470720.763887) |
| 291 expected_chromium_revision = '449cdbd05616de91fcf7e8b4282e300336d6d7c5' | 291 expected_chromium_revision = '449cdbd05616de91fcf7e8b4282e300336d6d7c5' |
| 292 expected_commit_position = 306253 |
| 292 expected_completed = False | 293 expected_completed = False |
| 293 expected_result = None | 294 expected_result = None |
| 294 expected_blame_list = [ | 295 expected_blame_list = [ |
| 295 'f1e24ae21c95228522c24697dae474db5f26854b', | 296 'f1e24ae21c95228522c24697dae474db5f26854b', |
| 296 'fae4955b2ae9cf68aa2a391a7640b1c3276656e8', | 297 'fae4955b2ae9cf68aa2a391a7640b1c3276656e8', |
| 297 '4ef763a9bb3dc53c7afccbcab9a1b0327b83681c', | 298 '4ef763a9bb3dc53c7afccbcab9a1b0327b83681c', |
| 298 '89ef2ae2a6e2d21813c14471eb444c8651b46651', | 299 '89ef2ae2a6e2d21813c14471eb444c8651b46651', |
| 299 '58becfc708670659119ca72472d1d0882797f706', | 300 '58becfc708670659119ca72472d1d0882797f706', |
| 300 '1cc47034de564d0fd33a89c7d785a539b6c3a5a0', | 301 '1cc47034de564d0fd33a89c7d785a539b6c3a5a0', |
| 301 '87be98a1f687d430c4e1e1a5da04065067a4c1cc', | 302 '87be98a1f687d430c4e1e1a5da04065067a4c1cc', |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 ] | 379 ] |
| 379 | 380 |
| 380 build_info = buildbot.ExtractBuildInfo( | 381 build_info = buildbot.ExtractBuildInfo( |
| 381 master_name, builder_name, build_number, build_data) | 382 master_name, builder_name, build_number, build_data) |
| 382 | 383 |
| 383 self.assertEqual(master_name, build_info.master_name) | 384 self.assertEqual(master_name, build_info.master_name) |
| 384 self.assertEqual(builder_name, build_info.builder_name) | 385 self.assertEqual(builder_name, build_info.builder_name) |
| 385 self.assertEqual(build_number, build_info.build_number) | 386 self.assertEqual(build_number, build_info.build_number) |
| 386 self.assertEqual(expected_build_start_time, build_info.build_start_time) | 387 self.assertEqual(expected_build_start_time, build_info.build_start_time) |
| 387 self.assertEqual(expected_chromium_revision, build_info.chromium_revision) | 388 self.assertEqual(expected_chromium_revision, build_info.chromium_revision) |
| 389 self.assertEqual(expected_commit_position, build_info.commit_position) |
| 388 self.assertEqual(expected_completed, build_info.completed) | 390 self.assertEqual(expected_completed, build_info.completed) |
| 389 self.assertEqual(expected_result, build_info.result) | 391 self.assertEqual(expected_result, build_info.result) |
| 390 self.assertEqual(expected_blame_list, build_info.blame_list) | 392 self.assertEqual(expected_blame_list, build_info.blame_list) |
| 391 self.assertEqual(expected_failed_steps, build_info.failed_steps) | 393 self.assertEqual(expected_failed_steps, build_info.failed_steps) |
| 392 self.assertEqual(expected_passed_steps, build_info.passed_steps) | 394 self.assertEqual(expected_passed_steps, build_info.passed_steps) |
| 393 self.assertEqual(expected_not_passed_steps, build_info.not_passed_steps) | 395 self.assertEqual(expected_not_passed_steps, build_info.not_passed_steps) |
| 394 | 396 |
| 395 def testExtractBuildInfoOfCompletedBuild(self): | 397 def testExtractBuildInfoOfCompletedBuild(self): |
| 396 build_file = os.path.join( | 398 build_file = os.path.join( |
| 397 os.path.dirname(__file__), 'data', 'completed_build.json') | 399 os.path.dirname(__file__), 'data', 'completed_build.json') |
| 398 with open(build_file, 'r') as f: | 400 with open(build_file, 'r') as f: |
| 399 build_data = f.read() | 401 build_data = f.read() |
| 400 | 402 |
| 401 master_name = 'a' | 403 master_name = 'a' |
| 402 builder_name = 'b' | 404 builder_name = 'b' |
| 403 build_number = 632 | 405 build_number = 632 |
| 404 expected_build_start_time = datetime.utcfromtimestamp(1417470720.763887) | 406 expected_build_start_time = datetime.utcfromtimestamp(1417470720.763887) |
| 405 expected_chromium_revision = '449cdbd05616de91fcf7e8b4282e300336d6d7c5' | 407 expected_chromium_revision = '449cdbd05616de91fcf7e8b4282e300336d6d7c5' |
| 408 expected_commit_position = 306253 |
| 406 expected_completed = True | 409 expected_completed = True |
| 407 expected_result = None | 410 expected_result = None |
| 408 expected_blame_list = [ | 411 expected_blame_list = [ |
| 409 '449cdbd05616de91fcf7e8b4282e300336d6d7c5' | 412 '449cdbd05616de91fcf7e8b4282e300336d6d7c5' |
| 410 ] | 413 ] |
| 411 expected_failed_steps = [ | 414 expected_failed_steps = [ |
| 412 'net_unittests on Windows-XP-SP3' | 415 'net_unittests on Windows-XP-SP3' |
| 413 ] | 416 ] |
| 414 expected_passed_steps = [ | 417 expected_passed_steps = [ |
| 415 'browser_tests on Windows-XP-SP3' | 418 'browser_tests on Windows-XP-SP3' |
| 416 ] | 419 ] |
| 417 expected_not_passed_steps = [ | 420 expected_not_passed_steps = [ |
| 418 'steps', | 421 'steps', |
| 419 'net_unittests on Windows-XP-SP3', | 422 'net_unittests on Windows-XP-SP3', |
| 420 ] | 423 ] |
| 421 | 424 |
| 422 build_info = buildbot.ExtractBuildInfo( | 425 build_info = buildbot.ExtractBuildInfo( |
| 423 master_name, builder_name, build_number, build_data) | 426 master_name, builder_name, build_number, build_data) |
| 424 | 427 |
| 425 self.assertEqual(master_name, build_info.master_name) | 428 self.assertEqual(master_name, build_info.master_name) |
| 426 self.assertEqual(builder_name, build_info.builder_name) | 429 self.assertEqual(builder_name, build_info.builder_name) |
| 427 self.assertEqual(build_number, build_info.build_number) | 430 self.assertEqual(build_number, build_info.build_number) |
| 428 self.assertEqual(expected_build_start_time, build_info.build_start_time) | 431 self.assertEqual(expected_build_start_time, build_info.build_start_time) |
| 429 self.assertEqual(expected_chromium_revision, build_info.chromium_revision) | 432 self.assertEqual(expected_chromium_revision, build_info.chromium_revision) |
| 433 self.assertEqual(expected_commit_position, build_info.commit_position) |
| 430 self.assertEqual(expected_completed, build_info.completed) | 434 self.assertEqual(expected_completed, build_info.completed) |
| 431 self.assertEqual(expected_result, build_info.result) | 435 self.assertEqual(expected_result, build_info.result) |
| 432 self.assertEqual(expected_blame_list, build_info.blame_list) | 436 self.assertEqual(expected_blame_list, build_info.blame_list) |
| 433 self.assertEqual(expected_failed_steps, build_info.failed_steps) | 437 self.assertEqual(expected_failed_steps, build_info.failed_steps) |
| 434 self.assertEqual(expected_passed_steps, build_info.passed_steps) | 438 self.assertEqual(expected_passed_steps, build_info.passed_steps) |
| 435 self.assertEqual(expected_not_passed_steps, build_info.not_passed_steps) | 439 self.assertEqual(expected_not_passed_steps, build_info.not_passed_steps) |
| 436 | 440 |
| 437 def testExtractBuildInfoBlameList(self): | 441 def testExtractBuildInfoBlameList(self): |
| 438 build_file = os.path.join( | 442 build_file = os.path.join( |
| 439 os.path.dirname(__file__), 'data', 'blame_list_test.json') | 443 os.path.dirname(__file__), 'data', 'blame_list_test.json') |
| 440 with open(build_file, 'r') as f: | 444 with open(build_file, 'r') as f: |
| 441 build_data = f.read() | 445 build_data = f.read() |
| 442 | 446 |
| 443 master_name = 'a' | 447 master_name = 'a' |
| 444 builder_name = 'b' | 448 builder_name = 'b' |
| 445 build_number = 632 | 449 build_number = 632 |
| 446 | 450 |
| 447 expected_blame_list = [ | 451 expected_blame_list = [ |
| 448 '449cdbd05616de91fcf7e8b4282e300336d6d7c5', | 452 '449cdbd05616de91fcf7e8b4282e300336d6d7c5', |
| 449 '6addffac2601ab1083a55d085847d9bf8e66da02' | 453 '6addffac2601ab1083a55d085847d9bf8e66da02' |
| 450 ] | 454 ] |
| 451 | 455 |
| 452 build_info = buildbot.ExtractBuildInfo( | 456 build_info = buildbot.ExtractBuildInfo( |
| 453 master_name, builder_name, build_number, build_data) | 457 master_name, builder_name, build_number, build_data) |
| 454 | 458 |
| 455 self.assertEqual(expected_blame_list, build_info.blame_list) | 459 self.assertEqual(expected_blame_list, build_info.blame_list) |
| 460 |
| 461 def testGetCommitPosition(self): |
| 462 self.assertIsNone(buildbot._GetCommitPosition(None)) |
| 463 self.assertIsNone(buildbot._GetCommitPosition('')) |
| 464 self.assertIsNone(buildbot._GetCommitPosition('not a commit position')) |
| 465 self.assertEqual( |
| 466 438538, buildbot._GetCommitPosition('refs/heads/master@{#438538}')) |
| OLD | NEW |