vendredi 8 avril 2016

Testing a simple directive

I wrote this directive (which works fine) but I'm having trouble testing it :

module.exports = /*@ngInject*/ function($filter) {
      return {
        restrict: 'A',
        require: 'ngModel',
        link: function(scope, element, attrs, ngModel) {
          ngModel.$parsers.push(function(value) {
            var phoneNumber;

        if (scope.country === 'US' && value.length >= 10) {
          phoneNumber = value.replace(/[ &()-.]+/g, '');
          ngModel.$setViewValue(phoneNumber);
          ngModel.$render();
        } else {
          phoneNumber = value;
        }
        return phoneNumber;
      });
    }
  };
};

and I'm basically at square 1 after reading 200 articles and failing :

var factory = require('./us-phone.directive.js');
describe('US Phone Number directive', function() {
  it('should remove dashes, parantheses, and spaces' , function() {
    var value = '(555)555-5555';
    var phoneNumber = '';

    phoneNumber.should.equal('5555555555');
  });
});

Aucun commentaire:

Enregistrer un commentaire