2016-04-04 18 views
2

私はテーブルの最初の行から 'contractId'という値を保存したいので、契約を追加するときは、この値に1を加えて一意のIDにします。以下の分度器テストを試してみると、「[オブジェクトオブジェクト] 1」が返されます。ここで分度器のテーブルセルから値を保存する方法は?

はテーブルです:

<tbody> 
      <tr data-ng-repeat="contract in vm.contract"> 
      <td data-ng-bind-html="contract.internalId"></td> 
      <td data-ng-bind-html="contract.contractId"></td> 
      <td data-ng-bind-html="contract.contractDescription"></td> 
</tbody> 

私の現在の分度器試験:

it('create contract', function(){ 
    var id = element.all(by.repeater('contract in contracts')).get(0).element(by.binding("contract.contractId")).getText(); 
    id = id + 1; 
    element(by.cssContainingText('.submit-button', 'Add Contract')).click(); 
    element(by.model('vm.newContract.contractId')).sendKeys(id); 
}); 

答えて

2

分度器は非同期です。 getText()の結果は約束であり、文字列ではありません。

it('create contract', function(){ 
    var id = element.all(by.repeater('contract in contracts')).get(0).element(by.binding("contract.contractId")).getText(); 
    id.then(function(text) { 
     text = text + 1; 
     element(by.cssContainingText('.submit-button', 'Add Contract')).click(); 
     element(by.model('vm.newContract.contractId')).sendKeys(text); 
    }); 
}); 
関連する問題