diff options
| author | Vincent Prouillet | 2017-01-18 01:26:44 +0900 |
|---|---|---|
| committer | Vincent Prouillet | 2017-01-18 01:26:44 +0900 |
| commit | 3de07e80ed2d961bc0b07d7971a04c590f0a8290 (patch) | |
| tree | 2f7c51f7bb88191078bde2cce0a0e772f6370452 /validator_derive/tests | |
| parent | 32ada012eb1de7da60d979b65844d008fc75b458 (diff) | |
| download | validator-3de07e80ed2d961bc0b07d7971a04c590f0a8290.tar.bz2 | |
Add regex validator
Diffstat (limited to 'validator_derive/tests')
| -rw-r--r-- | validator_derive/tests/test_derive.rs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/validator_derive/tests/test_derive.rs b/validator_derive/tests/test_derive.rs index c7e78cc..4e6c088 100644 --- a/validator_derive/tests/test_derive.rs +++ b/validator_derive/tests/test_derive.rs @@ -2,8 +2,11 @@ extern crate validator; #[macro_use] extern crate serde_derive; extern crate serde_json; +extern crate regex; +#[macro_use] extern crate lazy_static; use validator::Validate; +use regex::Regex; #[derive(Debug, Validate, Deserialize)] @@ -251,3 +254,20 @@ fn test_can_fail_contains_validation() { assert!(errs.contains_key("mail")); assert_eq!(errs["mail"], vec!["contains".to_string()]); } + +#[test] +fn test_can_check_regex_validator() { + lazy_static! { + static ref RE: Regex = Regex::new(r"[a-z]{2}").unwrap(); + } + + #[derive(Debug, Validate)] + struct RegexStruct { + #[validate(regex = "RE")] + name: String, + } + let s = RegexStruct {name: "al".to_string()}; + assert!(s.validate().is_ok()); + let s2 = RegexStruct {name: "AL".to_string()}; + assert!(s2.validate().is_err()); +} |
