0

単位テストgetAll()を含むいくつかの機能を持つngModelを使用するディレクティブをユニットテストします。モデルは完全に注入されます(出力すると、アクセス可能なgetter/settersなどが表示されます)。私はそれを要素に渡します。コンパイルとダイジェストを行います。ユニットのテスト中のモデルの見出しモデル(機能)

「タイプエラー:プロパティを読み取ることができません」のgetAll 'は未定義です。

'consoleModel'、vehiclesModel.get( 'vehicles')); '

stubbedData!を出力します。

'use strict'; 
describe('Directive: selectBox', function() { 

    beforeEach(module('sytacApp')); 
    beforeEach(module('syt.templates')); 

    var scope, 
     httpBackend, 
     $rootScope, 
     $compile, 
     element, 
     vehiclesModel, 
     stubbedData; 

    beforeEach(function() { 
     inject(function ($injector) { 
      $compile = $injector.get('$compile'); 
     }); 
    }); 

    beforeEach(inject(function (_$rootScope_, _$httpBackend_, _vehiclesModel_, _stubbedData_) { 

     httpBackend = _$httpBackend_; 
     $rootScope = _$rootScope_; 
     vehiclesModel = _vehiclesModel_; 
     stubbedData = _stubbedData_; 

     vehiclesModel.set('vehicles', {data: stubbedData.container}); 
     console.log('vehiclesModel', vehiclesModel.get('vehicles')); 
    })); 

    it('should process model data accordingly', function() { 

     var element = angular.element('<select-box identifier="type" selectedidentifier="selectedType" model="vehiclesTypesModel" data-ng-model="vehiclesModel"></select-box>'); 

     element = $compile(element)(scope); 
     scope.$digest(); 

     //...... 
    }); 
}); 

質問。私は何か見落としていますか?

答えて

0

は、 '$ compile'の前にスコープの仮想モデルモデルを配置する必要がありました

関連する問題