How to Protractor - Counting the no.of elements and Display all the elements with For loop is Not getting executed

I am working on Protractor with Android hybrid app. I am trying to count the elements and Retrieve and display all the elements. I am able to get the count of the elements. But when I try to display, the For loop is not getting executed, nor gives any Error.

Kindly Advise. Here's my code below.

   var n1 = browser.element.all(by.className('program-details-directive-container')).count();
  browser.element.all(by.className('program-details-directive-container')).
  then( function(n1)
   {
    for(var i=0; i<n1;++i)
    {
      n1(i).getText().then(function(text1)
      {
       console.log(text1);
       })
     }
  });

Last updated:2/3/2015 11:28:34 PM

1 Answers

Allen Scott
Allen Scott

It looks the promise chain is not continuing try the following with the help of bluebird

  var Promise = require('bluebird');
 
  var n1 = browser.element.all(by.className('program-details-directive-container')).count();
  browser.element.all(by.className('program-details-directive-container'))
    .then(function(n1) {
      var promises = n1.map(function(elm){
        return elm.getText().then( function(text1) {
          console.log(text1);
        })
      });
 
      return Promise.all(promises);
    });
  });

Answer