issn.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. describe('issn', function() {
  2. // Override the default options
  3. $.extend($.fn.bootstrapValidator.DEFAULT_OPTIONS, {
  4. feedbackIcons: {
  5. valid: 'glyphicon glyphicon-ok',
  6. invalid: 'glyphicon glyphicon-remove',
  7. validating: 'glyphicon glyphicon-refresh'
  8. }
  9. });
  10. beforeEach(function() {
  11. var html = [
  12. '<div class="container">',
  13. '<form class="form-horizontal" id="form">',
  14. '<div class="form-group">',
  15. '<input type="text" name="issn" data-bv-issn />',
  16. '</div>',
  17. '</form>',
  18. '</div>'
  19. ].join('\n');
  20. $(html).appendTo('body');
  21. $('#form').bootstrapValidator();
  22. this._bs = $('#form').data('bootstrapValidator');
  23. this._$field = this._bs.getFieldElements('issn');
  24. });
  25. afterEach(function() {
  26. $('#form').bootstrapValidator('destroy').remove();
  27. });
  28. it('valid', function() {
  29. var samples = ['0378-5955', '0024-9319', '0032-1478'];
  30. for (var i in samples) {
  31. this._$field.val(samples[i]);
  32. this._bs.validate();
  33. expect(this._bs.isValidField('issn')).toBeTruthy();
  34. }
  35. });
  36. it('not contains hyphen', function() {
  37. this._$field.val('03785955');
  38. this._bs.validate();
  39. expect(this._bs.isValidField('issn')).toEqual(false);
  40. });
  41. it('contains only digits, X', function() {
  42. this._$field.val('1234-566A');
  43. this._bs.validate();
  44. expect(this._bs.isValidField('issn')).toEqual(false);
  45. });
  46. it('invalid check sum', function() {
  47. this._$field.val('0032-147X');
  48. this._bs.validate();
  49. expect(this._bs.isValidField('issn')).toEqual(false);
  50. });
  51. });