2016-06-08 10 views
19

Readonly atamak Burada mı yoksa kontrolör değişkenini yanlış bir şekilde test edip etmediğimi mi?Karma testi: TypeError: Ben dizge ı beklenen değeri alıyorum ama onun error.What am altında olan başarısız bekliyoruz hata ayıklama Ben error.When alıyorum benim denetleyicisi sınamak birimine çalışıyorum zaman teşebbüs mülkiyet

Benim özellik dosyası

'use strict'; 
describe('Information.controller', function() { 
beforeEach(angular.mock.module('asp')); 
var InformationController, scope; 

beforeEach(inject(function($controller, $rootScope) { 
    scope = $rootScope.$new(); 
    InformationController = $controller('InformationController', { 
     $scope: scope 
    }); 
})); 

fit('Should remove the object without info from the object', function() { 
    InformationController.Data = [ 
     { 
      "ban": "03745645455", 
      "accountNo": "0000drgyt456456565", 
      "id": "2c4cc5e8-f360367" 
     }, 
     { 
      "ban": "27346fgh9080", 
      "accountNo": "000456456ytr655680", 
      "id": "2c4cc8ae-50bbf360367" 
     } 
    ]; 
    InformationController.banList = InformationController.Data.map((value, index) => (value && value.ban ? {'id': index, 'text': value.ban} : null)) 
    .filter(value => value); 
    expect(InformationController.banList.length).toBe(3); 
}); 
}); 

cevap

26

salt okunur hata tanımsız olmak (benim InformationController cinsinden) scope.page kaynaklanır altındadır ve daha sonra kod olarak değiştirilmiş beforeEach bloğunu undefined.Hence bir özellik atamak için çalışıyor Bu, sorunu çözmüştür. Bu, sorunu çözmüştür. Bu, sorunu çözmüştür.

İlgili konular