Skip to content

Commit 8e267cb

Browse files
committed
port some ECMA-262 tests
1 parent 8685d36 commit 8e267cb

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

src/lib.rs

+19
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,12 @@ mod tests {
1414
fn validate_flags_test() {
1515
let validator = EcmaRegexValidator::new(EcmaVersion::ES2018);
1616
assert_eq!(validator.validate_flags("gimuys"), Ok(()));
17+
assert_eq!(validator.validate_flags("g"), Ok(()));
18+
assert_eq!(validator.validate_flags("gim"), Ok(()));
19+
1720
assert_eq!(validator.validate_flags("gimgu"), Err("Duplicated flag g".to_string()));
1821
assert_eq!(validator.validate_flags("gimuf"), Err("Invalid flag f".to_string()));
22+
assert_eq!(validator.validate_flags("a"), Err("Invalid flag a".to_string()));
1923
}
2024

2125
#[test]
@@ -26,5 +30,20 @@ mod tests {
2630
assert_ne!(validator.validate_pattern("^[z-a]$", false), Ok(()));
2731
assert_ne!(validator.validate_pattern("0{2,1}", false), Ok(()));
2832
assert_ne!(validator.validate_pattern("\\", false), Ok(()));
33+
assert_ne!(validator.validate_pattern("a**", false), Ok(()));
34+
assert_ne!(validator.validate_pattern("++a", false), Ok(()));
35+
assert_ne!(validator.validate_pattern("?a", false), Ok(()));
36+
assert_ne!(validator.validate_pattern("x{1}{1,}", false), Ok(()));
37+
assert_ne!(validator.validate_pattern("x{1,2}{1}", false), Ok(()));
38+
assert_ne!(validator.validate_pattern("x{1,}{1}", false), Ok(()));
39+
assert_ne!(validator.validate_pattern("x{0,1}{1,}", false), Ok(()));
40+
assert_ne!(validator.validate_pattern("a***", false), Ok(()));
41+
assert_ne!(validator.validate_pattern("a++", false), Ok(()));
42+
assert_ne!(validator.validate_pattern("a+++", false), Ok(()));
43+
assert_ne!(validator.validate_pattern("a???", false), Ok(()));
44+
assert_ne!(validator.validate_pattern("a????", false), Ok(()));
45+
assert_ne!(validator.validate_pattern("*a", false), Ok(()));
46+
assert_ne!(validator.validate_pattern("**a", false), Ok(()));
47+
assert_ne!(validator.validate_pattern("+a", false), Ok(()));
2948
}
3049
}

0 commit comments

Comments
 (0)