| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 /** | 5 /** |
| 6 * Test fixture for utility.js. | 6 * Test fixture for utility.js. |
| 7 * @constructor | 7 * @constructor |
| 8 * @extends {testing.Test} | 8 * @extends {testing.Test} |
| 9 */ | 9 */ |
| 10 function GoogleNowUtilityUnitTest () { | 10 function GoogleNowUtilityUnitTest () { |
| (...skipping 453 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 464 | 464 |
| 465 TEST_F('GoogleNowUtilityUnitTest', 'TaskManager2Sequential', function() { | 465 TEST_F('GoogleNowUtilityUnitTest', 'TaskManager2Sequential', function() { |
| 466 // Tests that 2 tasks get successfully executed consecutively, even if the | 466 // Tests that 2 tasks get successfully executed consecutively, even if the |
| 467 // second one conflicts with the first. | 467 // second one conflicts with the first. |
| 468 | 468 |
| 469 // Setup. | 469 // Setup. |
| 470 var test = setUpTaskManagerTest(this); | 470 var test = setUpTaskManagerTest(this); |
| 471 | 471 |
| 472 // Step 1. Add 1st task that doesn't create pending callbacks. | 472 // Step 1. Add 1st task that doesn't create pending callbacks. |
| 473 // Expectations. | 473 // Expectations. |
| 474 this.mockLocalFunctions.expects(once()).task1(ANYTHING); | 474 this.mockLocalFunctions.expects(once()).task1(); |
| 475 // Invocation. | 475 // Invocation. |
| 476 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 476 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 477 Mock4JS.verifyAllMocks(); | 477 Mock4JS.verifyAllMocks(); |
| 478 | 478 |
| 479 // Step 2. Add 2nd task. | 479 // Step 2. Add 2nd task. |
| 480 // Expectations. | 480 // Expectations. |
| 481 this.mockLocalFunctions.expects(once()).task2(ANYTHING); | 481 this.mockLocalFunctions.expects(once()).task2(); |
| 482 // Invocation. | 482 // Invocation. |
| 483 test.tasks.add(taskNameB, this.mockLocalFunctions.functions().task2); | 483 test.tasks.add(taskNameB, this.mockLocalFunctions.functions().task2); |
| 484 }); | 484 }); |
| 485 | 485 |
| 486 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerConflicting', function() { | 486 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerConflicting', function() { |
| 487 // Tests that adding a task while a conflicting task is being executed causes | 487 // Tests that adding a task while a conflicting task is being executed causes |
| 488 // the second one to be ignored. | 488 // the second one to be ignored. |
| 489 | 489 |
| 490 // Setup. | 490 // Setup. |
| 491 var test = setUpTaskManagerTest(this); | 491 var test = setUpTaskManagerTest(this); |
| 492 var task1PluginInstance; | 492 var task1PluginInstance; |
| 493 | 493 |
| 494 // Step 1. Add 1st task that creates a pending callback. | 494 // Step 1. Add 1st task that creates a pending callback. |
| 495 // Expectations. | 495 // Expectations. |
| 496 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 496 this.mockLocalFunctions.expects(once()).task1(). |
| 497 will(callFunction(function() { | 497 will(callFunction(function() { |
| 498 task1PluginInstance = test.pluginFactory(); | 498 task1PluginInstance = test.pluginFactory(); |
| 499 })); | 499 })); |
| 500 // Invocation. | 500 // Invocation. |
| 501 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 501 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 502 Mock4JS.verifyAllMocks(); | 502 Mock4JS.verifyAllMocks(); |
| 503 | 503 |
| 504 // Step 2. Add 2nd task. Since it conflicts with currently running task1 | 504 // Step 2. Add 2nd task. Since it conflicts with currently running task1 |
| 505 // (see areTasksConflicting), it should be ignored. | 505 // (see areTasksConflicting), it should be ignored. |
| 506 test.tasks.add(taskNameB, this.mockLocalFunctions.functions().task2); | 506 test.tasks.add(taskNameB, this.mockLocalFunctions.functions().task2); |
| (...skipping 10 matching lines...) Expand all Loading... |
| 517 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerNestedTaskEnqueue', function() { | 517 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerNestedTaskEnqueue', function() { |
| 518 // Tests that adding a task while a non-conflicting task is being executed | 518 // Tests that adding a task while a non-conflicting task is being executed |
| 519 // causes the second one to be executed after the first one completes. | 519 // causes the second one to be executed after the first one completes. |
| 520 | 520 |
| 521 // Setup. | 521 // Setup. |
| 522 var test = setUpTaskManagerTest(this); | 522 var test = setUpTaskManagerTest(this); |
| 523 var task1PluginInstance; | 523 var task1PluginInstance; |
| 524 | 524 |
| 525 // Step 1. Add 1st task that creates a pending callback. | 525 // Step 1. Add 1st task that creates a pending callback. |
| 526 // Expectations. | 526 // Expectations. |
| 527 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 527 this.mockLocalFunctions.expects(once()).task1(). |
| 528 will(callFunction(function() { | 528 will(callFunction(function() { |
| 529 task1PluginInstance = test.pluginFactory(); | 529 task1PluginInstance = test.pluginFactory(); |
| 530 })); | 530 })); |
| 531 // Invocation. | 531 // Invocation. |
| 532 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 532 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 533 Mock4JS.verifyAllMocks(); | 533 Mock4JS.verifyAllMocks(); |
| 534 | 534 |
| 535 // Step 2. Add 2nd task. Since it doesn't conflict with currently running | 535 // Step 2. Add 2nd task. Since it doesn't conflict with currently running |
| 536 // task1 (see areTasksConflicting), it should not be ignored. | 536 // task1 (see areTasksConflicting), it should not be ignored. |
| 537 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); | 537 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); |
| 538 Mock4JS.verifyAllMocks(); | 538 Mock4JS.verifyAllMocks(); |
| 539 | 539 |
| 540 // Step 3. Enter the callback of task1. | 540 // Step 3. Enter the callback of task1. |
| 541 task1PluginInstance.prologue(); | 541 task1PluginInstance.prologue(); |
| 542 Mock4JS.verifyAllMocks(); | 542 Mock4JS.verifyAllMocks(); |
| 543 | 543 |
| 544 // Step 4. Leave the callback of task1. | 544 // Step 4. Leave the callback of task1. |
| 545 // Expectations. | 545 // Expectations. |
| 546 this.mockLocalFunctions.expects(once()).task2(ANYTHING); | 546 this.mockLocalFunctions.expects(once()).task2(); |
| 547 // Invocation. | 547 // Invocation. |
| 548 task1PluginInstance.epilogue(); | 548 task1PluginInstance.epilogue(); |
| 549 }); | 549 }); |
| 550 | 550 |
| 551 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerBranching', function() { | 551 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerBranching', function() { |
| 552 // Tests that task manager correctly detects completion of tasks that create | 552 // Tests that task manager correctly detects completion of tasks that create |
| 553 // branching chains of callbacks (in this test, task1 creates pending | 553 // branching chains of callbacks (in this test, task1 creates pending |
| 554 // callbacks 1 and 2, and callback 1 creates pending callback 3). | 554 // callbacks 1 and 2, and callback 1 creates pending callback 3). |
| 555 | 555 |
| 556 // Setup. | 556 // Setup. |
| 557 var test = setUpTaskManagerTest(this); | 557 var test = setUpTaskManagerTest(this); |
| 558 var task1PluginInstance1, task1PluginInstance2, task1PluginInstance3; | 558 var task1PluginInstance1, task1PluginInstance2, task1PluginInstance3; |
| 559 | 559 |
| 560 // Step 1. Add 1st task that creates a 2 pending callbacks. | 560 // Step 1. Add 1st task that creates a 2 pending callbacks. |
| 561 // Expectations. | 561 // Expectations. |
| 562 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 562 this.mockLocalFunctions.expects(once()).task1(). |
| 563 will(callFunction(function() { | 563 will(callFunction(function() { |
| 564 task1PluginInstance1 = test.pluginFactory(); | 564 task1PluginInstance1 = test.pluginFactory(); |
| 565 task1PluginInstance2 = test.pluginFactory(); | 565 task1PluginInstance2 = test.pluginFactory(); |
| 566 })); | 566 })); |
| 567 // Invocation. | 567 // Invocation. |
| 568 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 568 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 569 Mock4JS.verifyAllMocks(); | 569 Mock4JS.verifyAllMocks(); |
| 570 | 570 |
| 571 // Step 2. Add 2nd task, which is not conflicting (see areTasksConflicting) | 571 // Step 2. Add 2nd task, which is not conflicting (see areTasksConflicting) |
| 572 // with task1. | 572 // with task1. |
| 573 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); | 573 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); |
| 574 Mock4JS.verifyAllMocks(); | 574 Mock4JS.verifyAllMocks(); |
| 575 | 575 |
| 576 // Step 3. Enter callback 1, create pending callback 3, exit callback 1. | 576 // Step 3. Enter callback 1, create pending callback 3, exit callback 1. |
| 577 // Enter/exit callback 2. Enter callback 3. | 577 // Enter/exit callback 2. Enter callback 3. |
| 578 task1PluginInstance1.prologue(); | 578 task1PluginInstance1.prologue(); |
| 579 task1PluginInstance3 = test.pluginFactory(); | 579 task1PluginInstance3 = test.pluginFactory(); |
| 580 task1PluginInstance1.epilogue(); | 580 task1PluginInstance1.epilogue(); |
| 581 task1PluginInstance2.prologue(); | 581 task1PluginInstance2.prologue(); |
| 582 task1PluginInstance2.epilogue(); | 582 task1PluginInstance2.epilogue(); |
| 583 task1PluginInstance3.prologue(); | 583 task1PluginInstance3.prologue(); |
| 584 Mock4JS.verifyAllMocks(); | 584 Mock4JS.verifyAllMocks(); |
| 585 | 585 |
| 586 // Step 4. Leave 3rd callback of task1. Now task1 is complete, and task2 | 586 // Step 4. Leave 3rd callback of task1. Now task1 is complete, and task2 |
| 587 // should start. | 587 // should start. |
| 588 // Expectations. | 588 // Expectations. |
| 589 this.mockLocalFunctions.expects(once()).task2(ANYTHING); | 589 this.mockLocalFunctions.expects(once()).task2(); |
| 590 // Invocation. | 590 // Invocation. |
| 591 task1PluginInstance3.epilogue(); | 591 task1PluginInstance3.epilogue(); |
| 592 }); | 592 }); |
| 593 | 593 |
| 594 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerSuspendError', function() { | 594 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerSuspendError', function() { |
| 595 // Tests that task manager's onSuspend method reports an error if there are | 595 // Tests that task manager's onSuspend method reports an error if there are |
| 596 // pending tasks. | 596 // pending tasks. |
| 597 | 597 |
| 598 // Setup. | 598 // Setup. |
| 599 var test = setUpTaskManagerTest(this); | 599 var test = setUpTaskManagerTest(this); |
| 600 var onSuspendHandlerContainer = getMockHandlerContainer('runtime.onSuspend'); | 600 var onSuspendHandlerContainer = getMockHandlerContainer('runtime.onSuspend'); |
| 601 | 601 |
| 602 // Step 1. Add a task that creates a pending callback. | 602 // Step 1. Add a task that creates a pending callback. |
| 603 // Expectations. | 603 // Expectations. |
| 604 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 604 this.mockLocalFunctions.expects(once()).task1(). |
| 605 will(callFunction(function() { | 605 will(callFunction(function() { |
| 606 test.pluginFactory(); | 606 test.pluginFactory(); |
| 607 })); | 607 })); |
| 608 // Invocation. | 608 // Invocation. |
| 609 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 609 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 610 Mock4JS.verifyAllMocks(); | 610 Mock4JS.verifyAllMocks(); |
| 611 | 611 |
| 612 // Step 2. Invoke onSuspend event of the task manager. | 612 // Step 2. Invoke onSuspend event of the task manager. |
| 613 // Setup and expectations. The 2 callbacks in onSuspendHandlerContainer are | 613 // Setup and expectations. The 2 callbacks in onSuspendHandlerContainer are |
| 614 // from the wrapper and the task manager. | 614 // from the wrapper and the task manager. |
| 615 assertEquals(2, onSuspendHandlerContainer.length); | 615 assertEquals(2, onSuspendHandlerContainer.length); |
| 616 this.mockGlobals.expects(once()).reportError(eqToString( | 616 this.mockGlobals.expects(once()).reportError(eqToString( |
| 617 'Error: ASSERT: Incomplete task when unloading event page,' + | 617 'Error: ASSERT: Incomplete task when unloading event page,' + |
| 618 ' queue = [{"name":"TASK A"}], testWrapperDebugState')); | 618 ' queue = [{"name":"TASK A"}], testWrapperDebugState')); |
| 619 // Invocation. | 619 // Invocation. |
| 620 onSuspendHandlerContainer[1](); | 620 onSuspendHandlerContainer[1](); |
| 621 }); | 621 }); |
| 622 | 622 |
| 623 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerSuspendSuccess', function() { | 623 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerSuspendSuccess', function() { |
| 624 // Tests that task manager's onSuspend method does not report an error if all | 624 // Tests that task manager's onSuspend method does not report an error if all |
| 625 // tasks completed. | 625 // tasks completed. |
| 626 | 626 |
| 627 // Setup. | 627 // Setup. |
| 628 var test = setUpTaskManagerTest(this); | 628 var test = setUpTaskManagerTest(this); |
| 629 var onSuspendHandlerContainer = getMockHandlerContainer('runtime.onSuspend'); | 629 var onSuspendHandlerContainer = getMockHandlerContainer('runtime.onSuspend'); |
| 630 var task1PluginInstance; | 630 var task1PluginInstance; |
| 631 | 631 |
| 632 // Step 1. Add a task that creates a pending callback. | 632 // Step 1. Add a task that creates a pending callback. |
| 633 // Expectations. | 633 // Expectations. |
| 634 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 634 this.mockLocalFunctions.expects(once()).task1(). |
| 635 will(callFunction(function() { | 635 will(callFunction(function() { |
| 636 task1PluginInstance = test.pluginFactory(); | 636 task1PluginInstance = test.pluginFactory(); |
| 637 })); | 637 })); |
| 638 // Invocation. | 638 // Invocation. |
| 639 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 639 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 640 Mock4JS.verifyAllMocks(); | 640 Mock4JS.verifyAllMocks(); |
| 641 | 641 |
| 642 // Step 2. Invoke task's callback and the onSuspend event of the task manager. | 642 // Step 2. Invoke task's callback and the onSuspend event of the task manager. |
| 643 // The 2 callbacks in onSuspendHandlerContainer are from the wrapper and the | 643 // The 2 callbacks in onSuspendHandlerContainer are from the wrapper and the |
| 644 // task manager. | 644 // task manager. |
| 645 task1PluginInstance.prologue(); | 645 task1PluginInstance.prologue(); |
| 646 task1PluginInstance.epilogue(); | 646 task1PluginInstance.epilogue(); |
| 647 onSuspendHandlerContainer[1](); | 647 onSuspendHandlerContainer[1](); |
| 648 }); | 648 }); |
| 649 | 649 |
| 650 TEST_F('GoogleNowUtilityUnitTest', 'TaskManager3Tasks', function() { | 650 TEST_F('GoogleNowUtilityUnitTest', 'TaskManager3Tasks', function() { |
| 651 // Tests that 3 tasks can be executed too. In particular, that if the second | 651 // Tests that 3 tasks can be executed too. In particular, that if the second |
| 652 // task is a single-step task which execution was originally blocked by task1, | 652 // task is a single-step task which execution was originally blocked by task1, |
| 653 // unblocking it causes immediate synchronous execution of both tasks 2 and 3. | 653 // unblocking it causes immediate synchronous execution of both tasks 2 and 3. |
| 654 | 654 |
| 655 // Setup. | 655 // Setup. |
| 656 var test = setUpTaskManagerTest(this); | 656 var test = setUpTaskManagerTest(this); |
| 657 var task1PluginInstance; | 657 var task1PluginInstance; |
| 658 | 658 |
| 659 // Step 1. Add 1st task that creates a pending callback. | 659 // Step 1. Add 1st task that creates a pending callback. |
| 660 // Expectations. | 660 // Expectations. |
| 661 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 661 this.mockLocalFunctions.expects(once()).task1(). |
| 662 will(callFunction(function() { | 662 will(callFunction(function() { |
| 663 task1PluginInstance = test.pluginFactory(); | 663 task1PluginInstance = test.pluginFactory(); |
| 664 })); | 664 })); |
| 665 // Invocation. | 665 // Invocation. |
| 666 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 666 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 667 Mock4JS.verifyAllMocks(); | 667 Mock4JS.verifyAllMocks(); |
| 668 | 668 |
| 669 // Step 2. Add 2nd and 3rd tasks, both non-conflicting (see | 669 // Step 2. Add 2nd and 3rd tasks, both non-conflicting (see |
| 670 // areTasksConflicting) with task1. | 670 // areTasksConflicting) with task1. |
| 671 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); | 671 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); |
| 672 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task3); | 672 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task3); |
| 673 Mock4JS.verifyAllMocks(); | 673 Mock4JS.verifyAllMocks(); |
| 674 | 674 |
| 675 // Step 3. Enter the callback of task1. | 675 // Step 3. Enter the callback of task1. |
| 676 task1PluginInstance.prologue(); | 676 task1PluginInstance.prologue(); |
| 677 Mock4JS.verifyAllMocks(); | 677 Mock4JS.verifyAllMocks(); |
| 678 | 678 |
| 679 // Step 4. Leave the callback of task1. | 679 // Step 4. Leave the callback of task1. |
| 680 // Expectations. | 680 // Expectations. |
| 681 this.mockLocalFunctions.expects(once()).task2(ANYTHING); | 681 this.mockLocalFunctions.expects(once()).task2(); |
| 682 this.mockLocalFunctions.expects(once()).task3(ANYTHING); | 682 this.mockLocalFunctions.expects(once()).task3(); |
| 683 // Invocation. | 683 // Invocation. |
| 684 task1PluginInstance.epilogue(); | 684 task1PluginInstance.epilogue(); |
| 685 }); | 685 }); |
| 686 | 686 |
| 687 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerNestedNonTask', function() { | 687 TEST_F('GoogleNowUtilityUnitTest', 'TaskManagerNestedNonTask', function() { |
| 688 // Tests callbacks requested while a task is running, but not from a callback | 688 // Tests callbacks requested while a task is running, but not from a callback |
| 689 // belonging to a task, are not counted as a part of the task. | 689 // belonging to a task, are not counted as a part of the task. |
| 690 | 690 |
| 691 // Setup. | 691 // Setup. |
| 692 var test = setUpTaskManagerTest(this); | 692 var test = setUpTaskManagerTest(this); |
| 693 var task1PluginInstance; | 693 var task1PluginInstance; |
| 694 | 694 |
| 695 // Step 1. Add 1st task that creates a pending callback. | 695 // Step 1. Add 1st task that creates a pending callback. |
| 696 // Expectations. | 696 // Expectations. |
| 697 this.mockLocalFunctions.expects(once()).task1(ANYTHING). | 697 this.mockLocalFunctions.expects(once()).task1(). |
| 698 will(callFunction(function() { | 698 will(callFunction(function() { |
| 699 task1PluginInstance = test.pluginFactory(); | 699 task1PluginInstance = test.pluginFactory(); |
| 700 })); | 700 })); |
| 701 // Invocation. | 701 // Invocation. |
| 702 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); | 702 test.tasks.add(taskNameA, this.mockLocalFunctions.functions().task1); |
| 703 Mock4JS.verifyAllMocks(); | 703 Mock4JS.verifyAllMocks(); |
| 704 | 704 |
| 705 // Step 2. Create a pending callback from code that is not a part of the task. | 705 // Step 2. Create a pending callback from code that is not a part of the task. |
| 706 test.pluginFactory(); | 706 test.pluginFactory(); |
| 707 Mock4JS.verifyAllMocks(); | 707 Mock4JS.verifyAllMocks(); |
| 708 | 708 |
| 709 // Step 3. Enter the callback of task1. After this, task1 should be | 709 // Step 3. Enter the callback of task1. After this, task1 should be |
| 710 // finished despite the pending non-task callback. | 710 // finished despite the pending non-task callback. |
| 711 task1PluginInstance.prologue(); | 711 task1PluginInstance.prologue(); |
| 712 task1PluginInstance.epilogue(); | 712 task1PluginInstance.epilogue(); |
| 713 Mock4JS.verifyAllMocks(); | 713 Mock4JS.verifyAllMocks(); |
| 714 | 714 |
| 715 // Step 4. Check that task1 is finished by submitting task2, which should | 715 // Step 4. Check that task1 is finished by submitting task2, which should |
| 716 // be executed immediately. | 716 // be executed immediately. |
| 717 this.mockLocalFunctions.expects(once()).task2(ANYTHING); | 717 this.mockLocalFunctions.expects(once()).task2(); |
| 718 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); | 718 test.tasks.add(taskNameC, this.mockLocalFunctions.functions().task2); |
| 719 }); | 719 }); |
| 720 | 720 |
| 721 var testAttemptAlarmName = 'attempt-scheduler-testAttempts'; | 721 var testAttemptAlarmName = 'attempt-scheduler-testAttempts'; |
| 722 var testAttemptStorageKey = 'current-delay-testAttempts'; | 722 var testAttemptStorageKey = 'current-delay-testAttempts'; |
| 723 var testInitialDelaySeconds = 239; | 723 var testInitialDelaySeconds = 239; |
| 724 var testMaximumDelaySeconds = 2239; | 724 var testMaximumDelaySeconds = 2239; |
| 725 // Value to be returned by mocked Math.random(). We want the value returned by | 725 // Value to be returned by mocked Math.random(). We want the value returned by |
| 726 // Math.random() to be predictable to be able to check results against expected | 726 // Math.random() to be predictable to be able to check results against expected |
| 727 // values. A fixed seed would be okay, but fixed seeding isn't possible in JS at | 727 // values. A fixed seed would be okay, but fixed seeding isn't possible in JS at |
| (...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 930 var alarmsGetSavedArgs = new SaveMockArguments(); | 930 var alarmsGetSavedArgs = new SaveMockArguments(); |
| 931 this.mockApis.expects(once()). | 931 this.mockApis.expects(once()). |
| 932 instrumented_alarms_get( | 932 instrumented_alarms_get( |
| 933 alarmsGetSavedArgs.match(eq(testAttemptAlarmName)), | 933 alarmsGetSavedArgs.match(eq(testAttemptAlarmName)), |
| 934 alarmsGetSavedArgs.match(ANYTHING)). | 934 alarmsGetSavedArgs.match(ANYTHING)). |
| 935 will(invokeCallback(alarmsGetSavedArgs, 1, {testField: 'TEST VALUE'})); | 935 will(invokeCallback(alarmsGetSavedArgs, 1, {testField: 'TEST VALUE'})); |
| 936 this.mockLocalFunctions.expects(once()).attempt(); | 936 this.mockLocalFunctions.expects(once()).attempt(); |
| 937 // Invocation. | 937 // Invocation. |
| 938 onAlarmHandlerContainer[0]({name: testAttemptAlarmName}); | 938 onAlarmHandlerContainer[0]({name: testAttemptAlarmName}); |
| 939 }); | 939 }); |
| OLD | NEW |