No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

ContentValidation.cs 5.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. using NUnit.Framework;
  2. using ContentType = UnityEngine.UI.InputField.ContentType;
  3. namespace Core.InputField
  4. {
  5. public class ContentValidation : TestBehaviourBase<UnityEngine.UI.InputField>
  6. {
  7. [Test]
  8. [TestCase(ContentType.Alphanumeric, "0", "0")]
  9. [TestCase(ContentType.Alphanumeric, "1", "1")]
  10. [TestCase(ContentType.Alphanumeric, "123456", "123456")]
  11. [TestCase(ContentType.Alphanumeric, "0123456", "0123456")]
  12. [TestCase(ContentType.Alphanumeric, "111110123456", "111110123456")]
  13. [TestCase(ContentType.Alphanumeric, "123456", "123456")]
  14. [TestCase(ContentType.Alphanumeric, "-1.0", "10")]
  15. [TestCase(ContentType.Alphanumeric, "-00.45", "0045")]
  16. [TestCase(ContentType.Alphanumeric, "-1111101.23456", "111110123456")]
  17. [TestCase(ContentType.Alphanumeric, "Test", "Test")]
  18. [TestCase(ContentType.Alphanumeric, "-1-", "1")]
  19. [TestCase(ContentType.Alphanumeric, "--1", "1")]
  20. [TestCase(ContentType.Alphanumeric, "123456abc", "123456abc")]
  21. [TestCase(ContentType.Alphanumeric, "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789", "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789")]
  22. [TestCase(ContentType.DecimalNumber, "0", "0")]
  23. [TestCase(ContentType.DecimalNumber, "1", "1")]
  24. [TestCase(ContentType.DecimalNumber, "123456", "123456")]
  25. [TestCase(ContentType.DecimalNumber, "0123456", "0123456")]
  26. [TestCase(ContentType.DecimalNumber, "111110123456", "111110123456")]
  27. //[TestCase(ContentType.DecimalNumber, "3.14", "3.14")]
  28. //[TestCase(ContentType.DecimalNumber, "1.23", "1.23")]
  29. //[TestCase(ContentType.DecimalNumber, "1.0", "1.0")]
  30. //[TestCase(ContentType.DecimalNumber, "00.45", "00.45")]
  31. //[TestCase(ContentType.DecimalNumber, "1111101.23456", "1111101.23456")]
  32. //[TestCase(ContentType.DecimalNumber, "-1", "-1")]
  33. [TestCase(ContentType.DecimalNumber, "-123456", "-123456")]
  34. [TestCase(ContentType.DecimalNumber, "-0123456", "-0123456")]
  35. [TestCase(ContentType.DecimalNumber, "-111110123456", "-111110123456")]
  36. //[TestCase(ContentType.DecimalNumber, "-3.14", "-3.14")]
  37. //[TestCase(ContentType.DecimalNumber, "-1.23", "-1.23")]
  38. //[TestCase(ContentType.DecimalNumber, "-1.0", "-1.0")]
  39. //[TestCase(ContentType.DecimalNumber, "-00.45", "-00.45")]
  40. //[TestCase(ContentType.DecimalNumber, "-1111101.23456", "-1111101.23456")]
  41. [TestCase(ContentType.DecimalNumber, "Test", "")]
  42. [TestCase(ContentType.DecimalNumber, "-1-", "-1")]
  43. //[TestCase(ContentType.DecimalNumber, "-0", "0")]
  44. [TestCase(ContentType.DecimalNumber, "--1", "-1")]
  45. [TestCase(ContentType.DecimalNumber, "123456abc", "123456")]
  46. //[TestCase(ContentType.DecimalNumber, "12.34.5#6abc", "12.3456")]
  47. [TestCase(ContentType.EmailAddress, "name@domain.com", "name@domain.com")]
  48. [TestCase(ContentType.EmailAddress, "name@@@domain.com", "name@domain.com")]
  49. [TestCase(ContentType.EmailAddress, "name@domain.co.uk", "name@domain.co.uk")]
  50. [TestCase(ContentType.EmailAddress, "name.other@domain-site.co.uk", "name.other@domain-site.co.uk")]
  51. [TestCase(ContentType.EmailAddress, "name!#$%&'*+-/=?^_`{|}~@domain.com", "name!#$%&'*+-/=?^_`{|}~@domain.com")]
  52. [TestCase(ContentType.IntegerNumber, "0", "0")]
  53. [TestCase(ContentType.IntegerNumber, "1", "1")]
  54. [TestCase(ContentType.IntegerNumber, "123456", "123456")]
  55. [TestCase(ContentType.IntegerNumber, "0123456", "0123456")]
  56. [TestCase(ContentType.IntegerNumber, "111110123456", "111110123456")]
  57. [TestCase(ContentType.IntegerNumber, "-1", "-1")]
  58. [TestCase(ContentType.IntegerNumber, "-123456", "-123456")]
  59. [TestCase(ContentType.IntegerNumber, "-0123456", "-0123456")]
  60. [TestCase(ContentType.IntegerNumber, "-111110123456", "-111110123456")]
  61. [TestCase(ContentType.IntegerNumber, "3.14", "314")]
  62. [TestCase(ContentType.IntegerNumber, "Test", "")]
  63. [TestCase(ContentType.IntegerNumber, "-1-", "-1")]
  64. //[TestCase(ContentType.IntegerNumber, "-0", "0")]
  65. //[TestCase(ContentType.IntegerNumber, "-0", "")]
  66. [TestCase(ContentType.IntegerNumber, "--1", "-1")]
  67. [TestCase(ContentType.IntegerNumber, "123456abc", "123456")]
  68. [TestCase(ContentType.IntegerNumber, "12.34.5#6abc", "123456")]
  69. [TestCase(ContentType.Name, "john smith", "John Smith")]
  70. [TestCase(ContentType.Name, "mary jane", "Mary Jane")]
  71. [TestCase(ContentType.Name, "jOHn smIth", "John Smith")]
  72. [TestCase(ContentType.Name, "john123 smith123", "John Smith")]
  73. [TestCase(ContentType.Name, "Bucky O'Hare", "Bucky O'Hare")]
  74. [TestCase(ContentType.Name, "bucky o'Har'e", "Bucky O'Hare")]
  75. [TestCase(ContentType.Name, "first second third", "First Second Third")]
  76. [TestCase(ContentType.Pin, "012345", "012345")]
  77. [TestCase(ContentType.Pin, "012345abc", "012345")]
  78. [TestCase(ContentType.Pin, "0a1b2c3#45", "012345")]
  79. [TestCase(ContentType.Pin, "-012345", "-012345")]
  80. [TestCase(ContentType.Pin, " 012345", "012345")]
  81. public void ValueIsValidatedCorrectly(ContentType type, string testValue, string expected)
  82. {
  83. m_TestObject.contentType = type;
  84. m_TestObject.text = testValue;
  85. Assert.AreEqual(expected, m_TestObject.text);
  86. }
  87. }
  88. }