aboutsummaryrefslogtreecommitdiffstats
path: root/validator_derive/tests
diff options
context:
space:
mode:
authorShadoySV2020-05-20 15:33:12 +0300
committerShadoySV2020-05-20 15:33:12 +0300
commit48a179d2ccfbda0e6f501337ac4bd18f953858be (patch)
tree512c58de8dcc5b70f18dbed024ab4adee61682b0 /validator_derive/tests
parentdb4f4be938d381d4a83efbfbbcc1ac9b1a1df511 (diff)
downloadvalidator-48a179d2ccfbda0e6f501337ac4bd18f953858be.tar.bz2
required validation
Diffstat (limited to 'validator_derive/tests')
-rw-r--r--validator_derive/tests/required.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/validator_derive/tests/required.rs b/validator_derive/tests/required.rs
new file mode 100644
index 0000000..2f02b1b
--- /dev/null
+++ b/validator_derive/tests/required.rs
@@ -0,0 +1,31 @@
+#[macro_use]
+extern crate validator_derive;
+
+use serde::Serialize;
+use validator::Validate;
+
+#[derive(Debug, Serialize)]
+struct ObjectRef {
+ id: i32,
+ name: String,
+}
+
+#[derive(Debug, Validate)]
+struct TestStruct {
+ #[validate(required)]
+ val: Option<ObjectRef>,
+}
+
+#[test]
+fn can_validate_some() {
+ let s = TestStruct { val: Some(ObjectRef { id: 0, name: String::new() }) };
+
+ assert!(s.validate().is_ok());
+}
+
+#[test]
+fn none_fails_validate() {
+ let s = TestStruct { val: None };
+
+ assert!(s.validate().is_err());
+}