0

单元测试使用具有多个函数(包括getAll())的ngModel的指令。模型被完美注入(当我输出时,它显示可访问的getters/setters /等)。我将它传递给元素。做一个编译和摘要。在单元测试中无法访问指令中的模型(函数)

获取错误'TypeError:虽然不能读取属性'getAll'未定义'。

'console.log('vehiclesModel',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

必须在''编译'

之前将灶台模型放在示波器scope.vehiclesModel上
相关问题