Using bluebird
var Promise = require('bluebird');
it('my test', function(done){
var promises = subElements.map(function(subElm, i){
return element(by.id('get-data')).click()
.then(function(){
return element.all(by.id('users')).map(function (elm) {
return elm;
})
})
.then(function(users) {
expect(users.length).toBe(expectedRecords[i]);
});
});
Promise.all(promises).nodeify(done);
})