aboutsummaryrefslogtreecommitdiffstats
path: root/validator_derive/tests
diff options
context:
space:
mode:
authorVincent Prouillet2017-01-18 01:26:44 +0900
committerVincent Prouillet2017-01-18 01:26:44 +0900
commit3de07e80ed2d961bc0b07d7971a04c590f0a8290 (patch)
tree2f7c51f7bb88191078bde2cce0a0e772f6370452 /validator_derive/tests
parent32ada012eb1de7da60d979b65844d008fc75b458 (diff)
downloadvalidator-3de07e80ed2d961bc0b07d7971a04c590f0a8290.tar.bz2
Add regex validator
Diffstat (limited to 'validator_derive/tests')
-rw-r--r--validator_derive/tests/test_derive.rs20
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());
+}