I have a decent idea of how the $q library in angular works but I\'m not sure how protractor or web-driver-js uses them. (especially since the utilizations are slightly diff
Is there some sort of implicit promising going on?
Looking at https://github.com/angular/protractor/blob/master/docs/control-flow.md , it looks like the answer is yes, there is, by using a queue of promises, called the control flow. So to expand on your example:
browser.get(url);
var title = browser.getTitle();
expect(title).toEqual('My Title');
Each of the lines above adds to the queue. The variable title is actually a promise, which, at the appropriate point in the control flow, expect unwraps.