[Test]
[TestCase(InputField.ContentType.Alphanumeric, "0", "0")]
[TestCase(InputField.ContentType.Alphanumeric, "1", "1")]
[TestCase(InputField.ContentType.Alphanumeric, "123456", "123456")]
[TestCase(InputField.ContentType.Alphanumeric, "0123456", "0123456")]
[TestCase(InputField.ContentType.Alphanumeric, "111110123456", "111110123456")]
[TestCase(InputField.ContentType.Alphanumeric, "123456", "123456")]
[TestCase(InputField.ContentType.Alphanumeric, "-1.0", "10")]
[TestCase(InputField.ContentType.Alphanumeric, "-00.45", "0045")]
[TestCase(InputField.ContentType.Alphanumeric, "-1111101.23456", "111110123456")]
[TestCase(InputField.ContentType.Alphanumeric, "Test", "Test")]
[TestCase(InputField.ContentType.Alphanumeric, "-1-", "1")]
[TestCase(InputField.ContentType.Alphanumeric, "--1", "1")]
[TestCase(InputField.ContentType.Alphanumeric, "123456abc", "123456abc")]
[TestCase(InputField.ContentType.Alphanumeric, "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789", "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789")]
[TestCase(InputField.ContentType.DecimalNumber, "0", "0")]
[TestCase(InputField.ContentType.DecimalNumber, "1", "1")]
[TestCase(InputField.ContentType.DecimalNumber, "123456", "123456")]
[TestCase(InputField.ContentType.DecimalNumber, "0123456", "0123456")]
[TestCase(InputField.ContentType.DecimalNumber, "111110123456", "111110123456")]
[TestCase(InputField.ContentType.DecimalNumber, "-123456", "-123456")]
[TestCase(InputField.ContentType.DecimalNumber, "-0123456", "-0123456")]
[TestCase(InputField.ContentType.DecimalNumber, "-111110123456", "-111110123456")]
[TestCase(InputField.ContentType.DecimalNumber, "Test", "")]
[TestCase(InputField.ContentType.DecimalNumber, "-1-", "-1")]
[TestCase(InputField.ContentType.DecimalNumber, "--1", "-1")]
[TestCase(InputField.ContentType.DecimalNumber, "123456abc", "123456")]
[TestCase(InputField.ContentType.EmailAddress, "name@domain.com", "name@domain.com")]
[TestCase(InputField.ContentType.EmailAddress, "name@@@domain.com", "name@domain.com")]
[TestCase(InputField.ContentType.EmailAddress, "name@domain.co.uk", "name@domain.co.uk")]
[TestCase(InputField.ContentType.EmailAddress, "name.other@domain-site.co.uk", "name.other@domain-site.co.uk")]
[TestCase(InputField.ContentType.EmailAddress, "name!#$%&'*+-/=?^_`{|}~@domain.com", "name!#$%&'*+-/=?^_`{|}~@domain.com")]
[TestCase(InputField.ContentType.IntegerNumber, "0", "0")]
[TestCase(InputField.ContentType.IntegerNumber, "1", "1")]
[TestCase(InputField.ContentType.IntegerNumber, "123456", "123456")]
[TestCase(InputField.ContentType.IntegerNumber, "0123456", "0123456")]
[TestCase(InputField.ContentType.IntegerNumber, "111110123456", "111110123456")]
[TestCase(InputField.ContentType.IntegerNumber, "-1", "-1")]
[TestCase(InputField.ContentType.IntegerNumber, "-123456", "-123456")]
[TestCase(InputField.ContentType.IntegerNumber, "-0123456", "-0123456")]
[TestCase(InputField.ContentType.IntegerNumber, "-111110123456", "-111110123456")]
[TestCase(InputField.ContentType.IntegerNumber, "3.14", "314")]
[TestCase(InputField.ContentType.IntegerNumber, "Test", "")]
[TestCase(InputField.ContentType.IntegerNumber, "-1-", "-1")]
[TestCase(InputField.ContentType.IntegerNumber, "--1", "-1")]
[TestCase(InputField.ContentType.IntegerNumber, "123456abc", "123456")]
[TestCase(InputField.ContentType.IntegerNumber, "12.34.5#6abc", "123456")]
[TestCase(InputField.ContentType.Name, "john smith", "John Smith")]
[TestCase(InputField.ContentType.Name, "mary jane", "Mary Jane")]
[TestCase(InputField.ContentType.Name, "jOHn smIth", "John Smith")]
[TestCase(InputField.ContentType.Name, "john123 smith123", "John Smith")]
[TestCase(InputField.ContentType.Name, "Bucky O'Hare", "Bucky O'Hare")]
[TestCase(InputField.ContentType.Name, "bucky o'Har'e", "Bucky O'Hare")]
[TestCase(InputField.ContentType.Name, "first second third", "First Second Third")]
[TestCase(InputField.ContentType.Pin, "012345", "012345")]
[TestCase(InputField.ContentType.Pin, "012345abc", "012345")]
[TestCase(InputField.ContentType.Pin, "0a1b2c3#45", "012345")]
[TestCase(InputField.ContentType.Pin, "-012345", "-012345")]
[TestCase(InputField.ContentType.Pin, " 012345", "012345")]
public void ValueIsValidatedCorrectly(InputField.ContentType type, string testValue, string expected)