diff --git a/pom.xml b/pom.xml index 6669c8f8185..7f3fde37808 100644 --- a/pom.xml +++ b/pom.xml @@ -1206,6 +1206,7 @@ samples/client/petstore/c samples/client/petstore/cpp-qt5 samples/client/petstore/rust + samples/client/petstore/rust/reqwest/petstore samples/client/petstore/php/OpenAPIClient-php samples/openapi3/client/petstore/php/OpenAPIClient-php diff --git a/samples/client/petstore/rust/reqwest/petstore/pom.xml b/samples/client/petstore/rust/reqwest/petstore/pom.xml new file mode 100644 index 00000000000..0a4e79b04b2 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/pom.xml @@ -0,0 +1,46 @@ + + 4.0.0 + org.openapitools + RustReqwestClientTests + pom + 1.0-SNAPSHOT + Rust Reqwest Petstore Client + + + + maven-dependency-plugin + + + package + + copy-dependencies + + + ${project.build.directory} + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + bundle-test + integration-test + + exec + + + cargo + + test + + + + + + + + diff --git a/samples/client/petstore/rust/reqwest/petstore/tests/pet_tests.rs b/samples/client/petstore/rust/reqwest/petstore/tests/pet_tests.rs new file mode 100644 index 00000000000..61d26eae449 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/tests/pet_tests.rs @@ -0,0 +1,34 @@ +extern crate petstore_reqwest; +use petstore_reqwest::apis::PetApi; +use petstore_reqwest::apis::PetApiClient; +use petstore_reqwest::apis::configuration; +//use petstore_reqwest::apis::PetApiUpdatePetWithFormParams; +use petstore_reqwest::models::{Pet}; +use std::option::Option; +use std::rc::Rc; + +#[test] +fn test_pet() { + let config = configuration::Configuration::new(); + let pet_api_client = PetApiClient::new(Rc::new(config)); + + // create pet object + let photo_urls = vec!["https://11".to_string(), "https://22".to_string()]; + let mut new_pet = Pet::new("Rust Pet".to_string(), photo_urls); + new_pet.id = Option::Some(8787); + + // add pet + let _add_result = pet_api_client.add_pet(new_pet); + + // get pet + let pet_result = pet_api_client.get_pet_by_id(8787); + + let _pet_result = match pet_result { + Ok(pet) => { + assert_eq!(pet.id, Option::Some(8787)); + assert_eq!(pet.name, "Rust Pet"); + assert_eq!(pet.photo_urls, vec!["https://11".to_string(), "https://22".to_string()]); + }, + Err(error) => println!("error: {:?}", error), + }; +}