validation.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. (function (Misago) {
  2. 'use strict';
  3. var service = getMisagoService('validate');
  4. QUnit.module("Validate");
  5. QUnit.test("service factory", function(assert) {
  6. var validate = service.factory();
  7. assert.ok(validate, "service factory has returned service instance.");
  8. });
  9. QUnit.test("validate data", function(assert) {
  10. var validate = service.factory();
  11. var controller = {
  12. username: m.prop(''),
  13. password: m.prop('ok!'),
  14. optional: m.prop(''),
  15. validation: {
  16. username: [],
  17. password: []
  18. }
  19. };
  20. assert.deepEqual(
  21. validate(controller),
  22. {
  23. username: [
  24. "This field is required."
  25. ]
  26. },
  27. "validate() validated invalid form correctly.");
  28. controller.username('fullname');
  29. assert.equal(validate(controller), null,
  30. "valid form validation didn't return errors");
  31. });
  32. QUnit.test("required validator", function(assert) {
  33. assert.ok(Misago.validators.required('yup'),
  34. "non-empty string passed validation.");
  35. assert.ok(Misago.validators.required(' '),
  36. "empty string failed validation.");
  37. });
  38. }(Misago.prototype));