validation.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  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. validation: {
  15. username: [Misago.validators.required()],
  16. password: [Misago.validators.required()]
  17. }
  18. };
  19. assert.deepEqual(
  20. validate(controller),
  21. {
  22. username: [
  23. "This field is required."
  24. ]
  25. },
  26. "validate() validated invalid form correctly.");
  27. controller.username('fullname');
  28. assert.equal(validate(controller), null,
  29. "valid form validation didn't return errors");
  30. });
  31. QUnit.test("required validator", function(assert) {
  32. assert.ok(Misago.validators.required('yup'),
  33. "non-empty string passed validation.");
  34. assert.ok(Misago.validators.required(' '),
  35. "empty string failed validation.");
  36. });
  37. }(Misago.prototype));