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