form_field_test.js 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. var App = require('app');
  19. require('models/form');
  20. /*
  21. * formField.isValid property doesn't update correctly, so I have to work with errorMessage property
  22. */
  23. describe('App.FormField', function () {
  24. describe('#validate()', function () {
  25. /*DIGITS TYPE*/
  26. it('123456789 is correct digits', function () {
  27. var formField = App.FormField.create();
  28. formField.set('displayType', 'digits');
  29. formField.set('value', 123456789);
  30. formField.validate();
  31. expect(formField.get('errorMessage') === '').to.equal(true);
  32. })
  33. it('"a33bc" is incorrect digits', function () {
  34. var formField = App.FormField.create();
  35. formField.set('displayType', 'digits');
  36. formField.set('value', 'a33bc');
  37. formField.validate();
  38. expect(formField.get('errorMessage') === '').to.equal(false);
  39. })
  40. /*DIGITS TYPE END*/
  41. /*NUMBER TYPE*/
  42. it('+1234 is correct number', function () {
  43. var formField = App.FormField.create();
  44. formField.set('displayType', 'number');
  45. formField.set('value', '+1234');
  46. formField.validate();
  47. expect(formField.get('errorMessage') === '').to.equal(true);
  48. })
  49. it('-1234 is correct number', function () {
  50. var formField = App.FormField.create();
  51. formField.set('displayType', 'number');
  52. formField.set('value', '-1234');
  53. formField.validate();
  54. expect(formField.get('errorMessage') === '').to.equal(true);
  55. })
  56. it('-1.23.6 is incorrect number', function () {
  57. var formField = App.FormField.create();
  58. formField.set('displayType', 'number');
  59. formField.set('value', '-1.23.6');
  60. formField.validate();
  61. expect(formField.get('errorMessage') === '').to.equal(false);
  62. })
  63. it('+1.6 is correct number', function () {
  64. var formField = App.FormField.create();
  65. formField.set('displayType', 'number');
  66. formField.set('value', +1.6);
  67. formField.validate();
  68. expect(formField.get('errorMessage') === '').to.equal(true);
  69. })
  70. it('-1.6 is correct number', function () {
  71. var formField = App.FormField.create();
  72. formField.set('displayType', 'number');
  73. formField.set('value', -1.6);
  74. formField.validate();
  75. expect(formField.get('errorMessage') === '').to.equal(true);
  76. })
  77. it('1.6 is correct number', function () {
  78. var formField = App.FormField.create();
  79. formField.set('displayType', 'number');
  80. formField.set('value', 1.6);
  81. formField.validate();
  82. expect(formField.get('errorMessage') === '').to.equal(true);
  83. })
  84. it('-.356 is correct number', function () {
  85. var formField = App.FormField.create();
  86. formField.set('displayType', 'number');
  87. formField.set('value', '-.356');
  88. formField.validate();
  89. expect(formField.get('errorMessage') === '').to.equal(true);
  90. })
  91. it('+.356 is correct number', function () {
  92. var formField = App.FormField.create();
  93. formField.set('displayType', 'number');
  94. formField.set('value', '+.356');
  95. formField.validate();
  96. expect(formField.get('errorMessage') === '').to.equal(true);
  97. })
  98. it('-1. is incorrect number', function () {
  99. var formField = App.FormField.create();
  100. formField.set('displayType', 'number');
  101. formField.set('value', '-1.');
  102. formField.validate();
  103. expect(formField.get('errorMessage') === '').to.equal(false);
  104. })
  105. it('+1. is incorrect number', function () {
  106. var formField = App.FormField.create();
  107. formField.set('displayType', 'number');
  108. formField.set('value', '+1.');
  109. formField.validate();
  110. expect(formField.get('errorMessage') === '').to.equal(false);
  111. })
  112. it('1. is incorrect number', function () {
  113. var formField = App.FormField.create();
  114. formField.set('displayType', 'number');
  115. formField.set('value', '1.');
  116. formField.validate();
  117. expect(formField.get('errorMessage') === '').to.equal(false);
  118. })
  119. it('-1,23,6 is incorrect number', function () {
  120. var formField = App.FormField.create();
  121. formField.set('displayType', 'number');
  122. formField.set('value', '-1,23,6');
  123. formField.validate();
  124. expect(formField.get('errorMessage') === '').to.equal(false);
  125. })
  126. it('-1234567890 is correct number', function () {
  127. var formField = App.FormField.create();
  128. formField.set('displayType', 'number');
  129. formField.set('value', '-1234567890');
  130. formField.validate();
  131. expect(formField.get('errorMessage') === '').to.equal(true);
  132. })
  133. it('+1234567890 is correct number', function () {
  134. var formField = App.FormField.create();
  135. formField.set('displayType', 'number');
  136. formField.set('value', '+1234567890');
  137. formField.validate();
  138. expect(formField.get('errorMessage') === '').to.equal(true);
  139. })
  140. it('123eed is incorrect number', function () {
  141. var formField = App.FormField.create();
  142. formField.set('displayType', 'number');
  143. formField.set('value', '123eed');
  144. formField.validate();
  145. expect(formField.get('errorMessage') === '').to.equal(false);
  146. })
  147. /*NUMBER TYPE END*/
  148. /*REQUIRE*/
  149. it('Required field shouldn\'t be empty', function () {
  150. var formField = App.FormField.create();
  151. formField.set('displayType', 'string');
  152. formField.set('value', '');
  153. formField.set('isRequired', true);
  154. formField.validate();
  155. expect(formField.get('errorMessage') === '').to.equal(false);
  156. })
  157. /*REQUIRE END*/
  158. })
  159. })