2015-10-01 5 views
0

Я новый для модульного тестирования с жасмином, так что я надеюсь это имеет смысл, и достаточно правильно, чтобы получить ответ, я пытаюсь испытать angularJS директивыUnit тестирование директива с AngularJS + Жасмин

Вот мой plunker: http://jsfiddle.net/ksqhmkqm/13

в моем случае я не могу получить вход (= ID "Montid") значение жасмин

вот мой angualr код

app.directive("monthNext", function() { 

    console.log('massif'); 
    return { 
    restrict: 'A', 
    link: function (scope, element) { 
     element.on('input', function() { 
     var todaysYear = new Date(); 
     var u = todaysYear.getFullYear() - 2; 

     if (element.val().length == 4) { 

      var nextElement = element.next().next().next().next().next().next().next(); 
      nextElement = angular.element(document.querySelectorAll('#Montid')); 

      if (element.val() <= u) { 

      console.log(element.children()); 
      //var nextElement = angular.element(document.body).find('[tab index = 6]') 
      console.log(nextElement); 
      //nextElement.focus(); 

      console.log(nextElement); 
      nextElement.val(""); 
      nextElement[0].focus(); 
      } else { 
      // alert(nextElement.val());    
      console.log(nextElement.val("01")); 
      } 
     } 

     }); 
    } 
    }; 
}); 

ее е мой код жасмин

describe('CommonBusInfo', function() { 
    var element, scope, timeout; 
    beforeEach(function() { 
    module('CommonBusInfo'); 

    inject(function ($rootScope, $compile) { 
     scope = $rootScope.$new(); 
     element = angular.element('<form><input id="Montid" ng-model="test" value="09" type="text"/><input id="yearId" " type="text" value="2015" month-next/></form>'); 
     $compile(element)(scope); 
     scope.$digest(); 
    }); 
    }); 
    it('should set Month value to 1', function() { 
    var x = element.find('input'); 
    x.triggerHandler('input'); 
    scope.$digest(); 

    }); 
}); 

я хочу прочитать значение Montid сравнить

Спасибо, Chaitanya

ответ

0

Вы можете получить атрибут с ATTR функцию

it('should set Month value to 1', function() { 
    var x = element.find('input'); 
    var inputId = x.attr('id'); 
    expect(inputId).toBe('Montid'); 
}); 
+0

Привет, Коэн, если я удержу годИдейную стоимость 2015 года, мой Монтид должен быть 09, если я буду держать годИдейную ценность 2015, мой Монтид должен быть «как я должен тестировать в жасмине». – CNandamuri

Смежные вопросы