Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIX: cancel $timeout promises when calling clearAll (related to #78) #98

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

gkniazkov
Copy link

Benefits:

  • Protractor doesn't wait until timeouts will finish after calling clearAll

This changes are related to issue.
I suppose that use $intervsal instead of $timeout is wrong way, because protractor waits for $timeout and should do it here too.

So with these changes, we can write something like this:

browser.ignoreSynchronization = true;
showNotificationButton.click();
// check if notification appears
browser.executeAsyncScript(clearAllNotifications);
browser.ignoreSynchronization = false;
// test runs and go ahead immediately

function clearAllNotifications(callback) {
    (function() {
        var el = document.querySelector('[ng-app]'); 
        var injector = angular.element(el).injector();
        var Notification = injector.get('Notification');
        var $timeout = injector.get('$timeout');
        Notification.clearAll();
        callback();
    })();
}

…rack#78)

Benefits:
 * Protractor doesn't wait untill timeouts will finish after calling clearAll
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant