@@ -871,10 +871,30 @@ mod tests {
871871 assert ! ( compiled. is_valid( & instance) ) ;
872872 }
873873 #[ test]
874+ fn validate_data_transfer_request_no_data ( ) {
875+ let test = DataTransferRequest {
876+ message_id : Some ( "message_id" . to_string ( ) ) ,
877+ data : None ,
878+ vendor_id : "vendor_id" . to_string ( ) ,
879+ } ;
880+ let schema = include_str ! ( "schemas/v2.0.1/DataTransferRequest.json" ) ;
881+ let schema = serde_json:: from_str ( schema) . unwrap ( ) ;
882+ let instance = serde_json:: to_value ( test) . unwrap ( ) ;
883+ let compiled = Validator :: new ( & schema) . expect ( "A valid schema" ) ;
884+ let result = compiled. validate ( & instance) ;
885+ if let Err ( errors) = result {
886+ for error in errors {
887+ println ! ( "Validation error: {}" , error) ;
888+ println ! ( "Instance path: {}" , error. instance_path) ;
889+ }
890+ }
891+ assert ! ( compiled. is_valid( & instance) ) ;
892+ }
893+ #[ test]
874894 fn validate_data_transfer_request ( ) {
875895 let test = DataTransferRequest {
876896 message_id : Some ( "message_id" . to_string ( ) ) ,
877- data : "data" . to_string ( ) ,
897+ data : Some ( "data" . to_string ( ) ) ,
878898 vendor_id : "vendor_id" . to_string ( ) ,
879899 } ;
880900 let schema = include_str ! ( "schemas/v2.0.1/DataTransferRequest.json" ) ;
@@ -894,7 +914,7 @@ mod tests {
894914 fn validate_data_transfer_response ( ) {
895915 let test = DataTransferResponse {
896916 status : DataTransferStatusEnumType :: Accepted ,
897- data : "" . to_string ( ) ,
917+ data : None ,
898918 status_info : Some ( StatusInfoType {
899919 reason_code : "" . to_string ( ) ,
900920 additional_info : Some ( "" . to_string ( ) ) ,
0 commit comments