| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 import datetime | 4 import datetime |
| 5 | 5 |
| 6 import webapp2 | 6 import webapp2 |
| 7 | 7 |
| 8 from testing_utils import testing | 8 from testing_utils import testing |
| 9 | 9 |
| 10 from handlers import list_analyses | 10 from handlers import list_analyses |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 | 262 |
| 263 def testDisplayAggregatedBuildAnalysisResults(self): | 263 def testDisplayAggregatedBuildAnalysisResults(self): |
| 264 """Basic test case, no parameters.""" | 264 """Basic test case, no parameters.""" |
| 265 expected_result = { | 265 expected_result = { |
| 266 'analyses': [ | 266 'analyses': [ |
| 267 { | 267 { |
| 268 'master_name': 'chromium.linux', | 268 'master_name': 'chromium.linux', |
| 269 'builder_name': 'Linux GN', | 269 'builder_name': 'Linux GN', |
| 270 'build_number': 26120, | 270 'build_number': 26120, |
| 271 'build_start_time': self.stored_dates.get(10), | 271 'build_start_time': self.stored_dates.get(10), |
| 272 'failure_type': 'test', |
| 272 'status': 70, | 273 'status': 70, |
| 273 'status_description': 'Completed', | 274 'status_description': 'Completed', |
| 274 'suspected_cls': [ | 275 'suspected_cls': [ |
| 275 { | 276 { |
| 276 'repo_name': 'chromium', | 277 'repo_name': 'chromium', |
| 277 'revision': 'r99_10', | 278 'revision': 'r99_10', |
| 278 'commit_position': None, | 279 'commit_position': None, |
| 279 'url': None | 280 'url': None |
| 280 } | 281 } |
| 281 ], | 282 ], |
| 282 'result_status': 'Correct - Found' | 283 'result_status': 'Correct - Found' |
| 283 }, | 284 }, |
| 284 { | 285 { |
| 285 'master_name': 'm', | 286 'master_name': 'm', |
| 286 'builder_name': 'b', | 287 'builder_name': 'b', |
| 287 'build_number': 1, | 288 'build_number': 1, |
| 288 'build_start_time': None, | 289 'build_start_time': None, |
| 290 'failure_type': 'test', |
| 289 'status': 70, | 291 'status': 70, |
| 290 'status_description': 'Completed', | 292 'status_description': 'Completed', |
| 291 'suspected_cls': [ | 293 'suspected_cls': [ |
| 292 { | 294 { |
| 293 'repo_name': 'chromium', | 295 'repo_name': 'chromium', |
| 294 'revision': 'r99_1', | 296 'revision': 'r99_1', |
| 295 'commit_position': None, | 297 'commit_position': None, |
| 296 'url': None | 298 'url': None |
| 297 } | 299 } |
| 298 ], | 300 ], |
| 299 'result_status': 'Incorrect - Found' | 301 'result_status': 'Incorrect - Found' |
| 300 }, | 302 }, |
| 301 { | 303 { |
| 302 'master_name': 'm', | 304 'master_name': 'm', |
| 303 'builder_name': 'b', | 305 'builder_name': 'b', |
| 304 'build_number': 3, | 306 'build_number': 3, |
| 305 'build_start_time': None, | 307 'build_start_time': None, |
| 308 'failure_type': 'test', |
| 306 'status': 70, | 309 'status': 70, |
| 307 'status_description': 'Completed', | 310 'status_description': 'Completed', |
| 308 'suspected_cls': [], | 311 'suspected_cls': [], |
| 309 'result_status': 'Incorrect - Not Found' | 312 'result_status': 'Incorrect - Not Found' |
| 310 } | 313 } |
| 311 ], | 314 ], |
| 312 'triage': '-1', | 315 'triage': '-1', |
| 313 'days': '-1', | 316 'days': '-1', |
| 314 'count': '-1', | 317 'count': '-1', |
| 315 'result_status': '-1' | 318 'result_status': '-1' |
| 316 } | 319 } |
| 317 | 320 |
| 318 response_json = self.test_app.get('/list-analyses?format=json') | 321 response_json = self.test_app.get('/list-analyses?format=json') |
| 319 self.assertEqual(200, response_json.status_int) | 322 self.assertEqual(200, response_json.status_int) |
| 320 self.assertEqual(expected_result, response_json.json_body) | 323 self.assertEqual(expected_result, response_json.json_body) |
| 321 | 324 |
| 322 def testDisplayAggregatedBuildAnalysisResultsTriage(self): | 325 def testDisplayAggregatedBuildAnalysisResultsTriage(self): |
| 323 """Test for parameter triage.""" | 326 """Test for parameter triage.""" |
| 324 expected_result = { | 327 expected_result = { |
| 325 'analyses': [ | 328 'analyses': [ |
| 326 { | 329 { |
| 327 'master_name': 'm', | 330 'master_name': 'm', |
| 328 'builder_name': 'b', | 331 'builder_name': 'b', |
| 329 'build_number': 1, | 332 'build_number': 1, |
| 330 'build_start_time': None, | 333 'build_start_time': None, |
| 334 'failure_type': 'test', |
| 331 'status': 70, | 335 'status': 70, |
| 332 'status_description': 'Completed', | 336 'status_description': 'Completed', |
| 333 'suspected_cls': [ | 337 'suspected_cls': [ |
| 334 { | 338 { |
| 335 'repo_name': 'chromium', | 339 'repo_name': 'chromium', |
| 336 'revision': 'r99_1', | 340 'revision': 'r99_1', |
| 337 'commit_position': None, | 341 'commit_position': None, |
| 338 'url': None | 342 'url': None |
| 339 } | 343 } |
| 340 ], | 344 ], |
| 341 'result_status': 'Incorrect - Found' | 345 'result_status': 'Incorrect - Found' |
| 342 }, | 346 }, |
| 343 { | 347 { |
| 344 'master_name': 'm', | 348 'master_name': 'm', |
| 345 'builder_name': 'b', | 349 'builder_name': 'b', |
| 346 'build_number': 3, | 350 'build_number': 3, |
| 347 'build_start_time': None, | 351 'build_start_time': None, |
| 352 'failure_type': 'test', |
| 348 'status': 70, | 353 'status': 70, |
| 349 'status_description': 'Completed', | 354 'status_description': 'Completed', |
| 350 'suspected_cls': [], | 355 'suspected_cls': [], |
| 351 'result_status': 'Incorrect - Not Found' | 356 'result_status': 'Incorrect - Not Found' |
| 352 }, | 357 }, |
| 353 { | 358 { |
| 354 'master_name': 'm', | 359 'master_name': 'm', |
| 355 'builder_name': 'b', | 360 'builder_name': 'b', |
| 356 'build_number': 7, | 361 'build_number': 7, |
| 357 'build_start_time': self.stored_dates.get(7), | 362 'build_start_time': self.stored_dates.get(7), |
| 363 'failure_type': 'test', |
| 358 'status': 70, | 364 'status': 70, |
| 359 'status_description': 'Completed', | 365 'status_description': 'Completed', |
| 360 'suspected_cls': [ | 366 'suspected_cls': [ |
| 361 { | 367 { |
| 362 'repo_name': 'chromium', | 368 'repo_name': 'chromium', |
| 363 'revision': 'r99_2', | 369 'revision': 'r99_2', |
| 364 'commit_position': None, | 370 'commit_position': None, |
| 365 'url': None | 371 'url': None |
| 366 }, | 372 }, |
| 367 { | 373 { |
| (...skipping 10 matching lines...) Expand all Loading... |
| 378 '/chromium/src/r99_1' | 384 '/chromium/src/r99_1' |
| 379 } | 385 } |
| 380 ], | 386 ], |
| 381 'result_status': 'Untriaged - Found' | 387 'result_status': 'Untriaged - Found' |
| 382 }, | 388 }, |
| 383 { | 389 { |
| 384 'master_name': 'm', | 390 'master_name': 'm', |
| 385 'builder_name': 'b', | 391 'builder_name': 'b', |
| 386 'build_number': 9, | 392 'build_number': 9, |
| 387 'build_start_time': None, | 393 'build_start_time': None, |
| 394 'failure_type': 'test', |
| 388 'status': 70, | 395 'status': 70, |
| 389 'status_description': 'Completed', | 396 'status_description': 'Completed', |
| 390 'suspected_cls': [ | 397 'suspected_cls': [ |
| 391 { | 398 { |
| 392 'repo_name': 'chromium', | 399 'repo_name': 'chromium', |
| 393 'revision': 'r99_9', | 400 'revision': 'r99_9', |
| 394 'commit_position': None, | 401 'commit_position': None, |
| 395 'url': None | 402 'url': None |
| 396 } | 403 } |
| 397 ], | 404 ], |
| 398 'result_status': 'Untriaged - Found' | 405 'result_status': 'Untriaged - Found' |
| 399 }, | 406 }, |
| 400 { | 407 { |
| 401 'master_name': 'm', | 408 'master_name': 'm', |
| 402 'builder_name': 'b', | 409 'builder_name': 'b', |
| 403 'build_number': 2, | 410 'build_number': 2, |
| 404 'build_start_time': self.stored_dates.get(2), | 411 'build_start_time': self.stored_dates.get(2), |
| 412 'failure_type': 'test', |
| 405 'status': 70, | 413 'status': 70, |
| 406 'status_description': 'Completed', | 414 'status_description': 'Completed', |
| 407 'suspected_cls': [], | 415 'suspected_cls': [], |
| 408 'result_status': 'Untriaged - Not Found' | 416 'result_status': 'Untriaged - Not Found' |
| 409 } | 417 } |
| 410 ], | 418 ], |
| 411 'triage': '1', | 419 'triage': '1', |
| 412 'days': '-1', | 420 'days': '-1', |
| 413 'count': '-1', | 421 'count': '-1', |
| 414 'result_status': '-1' | 422 'result_status': '-1' |
| 415 } | 423 } |
| 416 | 424 |
| 417 response_json = self.test_app.get('/list-analyses?format=json&triage=1') | 425 response_json = self.test_app.get('/list-analyses?format=json&triage=1') |
| 418 self.assertEqual(200, response_json.status_int) | 426 self.assertEqual(200, response_json.status_int) |
| 419 self.assertEqual(expected_result, response_json.json_body) | 427 self.assertEqual(expected_result, response_json.json_body) |
| 420 | 428 |
| 421 def testDisplayAggregatedBuildAnalysisResultsCount(self): | 429 def testDisplayAggregatedBuildAnalysisResultsCount(self): |
| 422 """Test for parameter count.""" | 430 """Test for parameter count.""" |
| 423 expected_result = { | 431 expected_result = { |
| 424 'analyses': [ | 432 'analyses': [ |
| 425 { | 433 { |
| 426 'master_name': 'chromium.linux', | 434 'master_name': 'chromium.linux', |
| 427 'builder_name': 'Linux GN', | 435 'builder_name': 'Linux GN', |
| 428 'build_number': 26120, | 436 'build_number': 26120, |
| 429 'build_start_time': self.stored_dates.get(10), | 437 'build_start_time': self.stored_dates.get(10), |
| 438 'failure_type': 'test', |
| 430 'status': 70, | 439 'status': 70, |
| 431 'status_description': 'Completed', | 440 'status_description': 'Completed', |
| 432 'suspected_cls': [ | 441 'suspected_cls': [ |
| 433 { | 442 { |
| 434 'repo_name': 'chromium', | 443 'repo_name': 'chromium', |
| 435 'revision': 'r99_10', | 444 'revision': 'r99_10', |
| 436 'commit_position': None, | 445 'commit_position': None, |
| 437 'url': None | 446 'url': None |
| 438 } | 447 } |
| 439 ], | 448 ], |
| 440 'result_status': 'Correct - Found' | 449 'result_status': 'Correct - Found' |
| 441 }, | 450 }, |
| 442 { | 451 { |
| 443 'master_name': 'm', | 452 'master_name': 'm', |
| 444 'builder_name': 'b', | 453 'builder_name': 'b', |
| 445 'build_number': 1, | 454 'build_number': 1, |
| 446 'build_start_time': None, | 455 'build_start_time': None, |
| 456 'failure_type': 'test', |
| 447 'status': 70, | 457 'status': 70, |
| 448 'status_description': 'Completed', | 458 'status_description': 'Completed', |
| 449 'suspected_cls': [ | 459 'suspected_cls': [ |
| 450 { | 460 { |
| 451 'repo_name': 'chromium', | 461 'repo_name': 'chromium', |
| 452 'revision': 'r99_1', | 462 'revision': 'r99_1', |
| 453 'commit_position': None, | 463 'commit_position': None, |
| 454 'url': None | 464 'url': None |
| 455 } | 465 } |
| 456 ], | 466 ], |
| (...skipping 12 matching lines...) Expand all Loading... |
| 469 | 479 |
| 470 def testDisplayAggregatedBuildAnalysisResultsResultStatus(self): | 480 def testDisplayAggregatedBuildAnalysisResultsResultStatus(self): |
| 471 """Test for parameter result_status.""" | 481 """Test for parameter result_status.""" |
| 472 expected_result = { | 482 expected_result = { |
| 473 'analyses': [ | 483 'analyses': [ |
| 474 { | 484 { |
| 475 'master_name': 'm', | 485 'master_name': 'm', |
| 476 'builder_name': 'b', | 486 'builder_name': 'b', |
| 477 'build_number': 1, | 487 'build_number': 1, |
| 478 'build_start_time': None, | 488 'build_start_time': None, |
| 489 'failure_type': 'test', |
| 479 'status': 70, | 490 'status': 70, |
| 480 'status_description': 'Completed', | 491 'status_description': 'Completed', |
| 481 'suspected_cls': [ | 492 'suspected_cls': [ |
| 482 { | 493 { |
| 483 'repo_name': 'chromium', | 494 'repo_name': 'chromium', |
| 484 'revision': 'r99_1', | 495 'revision': 'r99_1', |
| 485 'commit_position': None, | 496 'commit_position': None, |
| 486 'url': None | 497 'url': None |
| 487 } | 498 } |
| 488 ], | 499 ], |
| (...skipping 16 matching lines...) Expand all Loading... |
| 505 | 516 |
| 506 This test case will only run locally, because it may cause flaky failure. | 517 This test case will only run locally, because it may cause flaky failure. |
| 507 """ | 518 """ |
| 508 expected_result = { | 519 expected_result = { |
| 509 'analyses': [ | 520 'analyses': [ |
| 510 { | 521 { |
| 511 'master_name': 'm', | 522 'master_name': 'm', |
| 512 'builder_name': 'b', | 523 'builder_name': 'b', |
| 513 'build_number': 2, | 524 'build_number': 2, |
| 514 'build_start_time': self.stored_dates.get(2), | 525 'build_start_time': self.stored_dates.get(2), |
| 526 'failure_type': 'test', |
| 515 'status': 70, | 527 'status': 70, |
| 516 'status_description': 'Completed', | 528 'status_description': 'Completed', |
| 517 'suspected_cls': [], | 529 'suspected_cls': [], |
| 518 'result_status': 'Untriaged - Not Found' | 530 'result_status': 'Untriaged - Not Found' |
| 519 }, | 531 }, |
| 520 { | 532 { |
| 521 'master_name': 'chromium.linux', | 533 'master_name': 'chromium.linux', |
| 522 'builder_name': 'Linux GN', | 534 'builder_name': 'Linux GN', |
| 523 'build_number': 26120, | 535 'build_number': 26120, |
| 524 'build_start_time': self.stored_dates.get(10), | 536 'build_start_time': self.stored_dates.get(10), |
| 537 'failure_type': 'test', |
| 525 'status': 70, | 538 'status': 70, |
| 526 'status_description': 'Completed', | 539 'status_description': 'Completed', |
| 527 'suspected_cls': [ | 540 'suspected_cls': [ |
| 528 { | 541 { |
| 529 'repo_name': 'chromium', | 542 'repo_name': 'chromium', |
| 530 'revision': 'r99_10', | 543 'revision': 'r99_10', |
| 531 'commit_position': None, | 544 'commit_position': None, |
| 532 'url': None | 545 'url': None |
| 533 } | 546 } |
| 534 ], | 547 ], |
| (...skipping 16 matching lines...) Expand all Loading... |
| 551 | 564 |
| 552 This test case will only run locally, because it may cause flaky failure. | 565 This test case will only run locally, because it may cause flaky failure. |
| 553 """ | 566 """ |
| 554 expected_result = { | 567 expected_result = { |
| 555 'analyses': [ | 568 'analyses': [ |
| 556 { | 569 { |
| 557 'master_name': 'chromium.linux', | 570 'master_name': 'chromium.linux', |
| 558 'builder_name': 'Linux GN', | 571 'builder_name': 'Linux GN', |
| 559 'build_number': 26120, | 572 'build_number': 26120, |
| 560 'build_start_time': self.stored_dates.get(10), | 573 'build_start_time': self.stored_dates.get(10), |
| 574 'failure_type': 'test', |
| 561 'status': 70, | 575 'status': 70, |
| 562 'status_description': 'Completed', | 576 'status_description': 'Completed', |
| 563 'suspected_cls': [ | 577 'suspected_cls': [ |
| 564 { | 578 { |
| 565 'repo_name': 'chromium', | 579 'repo_name': 'chromium', |
| 566 'revision': 'r99_10', | 580 'revision': 'r99_10', |
| 567 'commit_position': None, | 581 'commit_position': None, |
| 568 'url': None | 582 'url': None |
| 569 } | 583 } |
| 570 ], | 584 ], |
| 571 'result_status': 'Correct - Found' | 585 'result_status': 'Correct - Found' |
| 572 } | 586 } |
| 573 ], | 587 ], |
| 574 'triage': '-1', | 588 'triage': '-1', |
| 575 'days': '6', | 589 'days': '6', |
| 576 'count': '-1', | 590 'count': '-1', |
| 577 'result_status': '0' | 591 'result_status': '0' |
| 578 } | 592 } |
| 579 | 593 |
| 580 response_json = self.test_app.get( | 594 response_json = self.test_app.get( |
| 581 '/list-analyses?format=json&result_status=0&days=6') | 595 '/list-analyses?format=json&result_status=0&days=6') |
| 582 self.assertEqual(200, response_json.status_int) | 596 self.assertEqual(200, response_json.status_int) |
| 583 self.assertEqual(expected_result, response_json.json_body) | 597 self.assertEqual(expected_result, response_json.json_body) |
| OLD | NEW |