示例#1
0
 public void should_handle_different_combos_of_leading_invalid_characters()
 {
     CssClassNameValidator.SanitizeClassName("9-9asdf").ShouldBe("asdf");
     CssClassNameValidator.SanitizeClassName("-99asdf").ShouldBe("asdf");
     CssClassNameValidator.SanitizeClassName("@-99asdf").ShouldBe("asdf");
     CssClassNameValidator.SanitizeClassName("@-99@asdf").ShouldBe("asdf");
 }
示例#2
0
 public void do_nothing_if_already_valid_class_name()
 {
     CssClassNameValidator.SanitizeClassName("asdf").ShouldBe("asdf");
     CssClassNameValidator.SanitizeClassName("-test").ShouldBe("-test");
     CssClassNameValidator.SanitizeClassName("-_test").ShouldBe("-_test");
     CssClassNameValidator.SanitizeClassName("TEST_2-test").ShouldBe("TEST_2-test");
     CssClassNameValidator.SanitizeClassName("-just-4-test").ShouldBe("-just-4-test");
 }
示例#3
0
 public void valid_class_names()
 {
     CssClassNameValidator.IsValidClassName("-test").ShouldBeTrue();
     CssClassNameValidator.IsValidClassName("-test").ShouldBeTrue();
     CssClassNameValidator.IsValidClassName("_test").ShouldBeTrue();
     CssClassNameValidator.IsValidClassName("TEST_2-test").ShouldBeTrue();
     CssClassNameValidator.IsValidClassName("-just-4-test").ShouldBeTrue();
 }
示例#4
0
 public void json_arrays_must_start_and_end_with_square_brackets()
 {
     CssClassNameValidator.IsJsonClassName("[a, b, c]").ShouldBeTrue();
     CssClassNameValidator.IsJsonClassName("[a, b, c}").ShouldBeFalse();
 }
示例#5
0
 public void json_objects_must_start_and_end_with_curly_brackets()
 {
     CssClassNameValidator.IsJsonClassName("{a:1, a:2}").ShouldBeTrue();
     CssClassNameValidator.IsJsonClassName("{a:1, a:2]").ShouldBeFalse();
 }
示例#6
0
 public void class_name_with_wrong_json()
 {
     CssClassNameValidator.IsValidClassName("[1,2,3}").ShouldBeFalse();
     CssClassNameValidator.IsValidClassName("{a:1, a:2]").ShouldBeFalse();
 }
示例#7
0
 public void do_allow_a_class_that_is_a_json_blob_with_spaces()
 {
     CssClassNameValidator.IsValidClassName("{a:1, a:2}").ShouldBeTrue();
     CssClassNameValidator.IsValidClassName("[1, 2, 3]").ShouldBeTrue();
 }
示例#8
0
 public void remove_leading_hyphen_and_numbers_if_not_followed_by_an_underscore_or_alpha_char()
 {
     CssClassNameValidator.SanitizeClassName("-9asdf").ShouldBe("asdf");
 }
示例#9
0
 public void do_not_allow_first_double_dashes_in_class_names()
 {
     CssClassNameValidator.IsValidClassName("--test").ShouldBeFalse();
 }
示例#10
0
 public void do_not_allow_start_with_number_in_class_names()
 {
     CssClassNameValidator.IsValidClassName("4test").ShouldBeFalse();
 }
示例#11
0
 public void do_not_allow_special_characters_in_class_names()
 {
     CssClassNameValidator.IsValidClassName("$test@@").ShouldBeFalse();
 }
示例#12
0
 public void return_default_if_completely_invalid_input()
 {
     CssClassNameValidator.SanitizeClassName("-99").ShouldBe(CssClassNameValidator.DefaultClass);
 }
示例#13
0
 public void setting_AllowInvalidClassNames_to_true_should_disable_validation_altogether()
 {
     CssClassNameValidator.IsValidClassName("$test@@").ShouldBeFalse();
     CssClassNameValidator.AllowInvalidCssClassNames = true;
     CssClassNameValidator.IsValidClassName("$test@@").ShouldBeTrue();
 }
示例#14
0
 public void return_default_if_empty_input()
 {
     CssClassNameValidator.SanitizeClassName("").ShouldBe(CssClassNameValidator.DefaultClass);
 }
示例#15
0
 public void remove_bogus_characters()
 {
     CssClassNameValidator.SanitizeClassName("a!@#$%^&*()`=':;?><|{}[]~sdf").ShouldBe("asdf");
 }
示例#16
0
 public void remove_leading_numbers()
 {
     CssClassNameValidator.SanitizeClassName("9asdf").ShouldBe("asdf");
 }
示例#17
0
 public void class_name_must_have_at_least_two_chars_if_starts_with_dash()
 {
     CssClassNameValidator.IsValidClassName("-").ShouldBeFalse();
 }
示例#18
0
 public void return_default_if_null_input()
 {
     CssClassNameValidator.SanitizeClassName(null).ShouldEqual(CssClassNameValidator.DefaultClass);
 }