|  | 
| 14 | 14 | use rabbitmq_http_client::blocking_api::Client; | 
| 15 | 15 | 
 | 
| 16 | 16 | mod test_helpers; | 
| 17 |  | -use crate::test_helpers::{await_metric_emission, endpoint, PASSWORD, USERNAME}; | 
|  | 17 | +use crate::test_helpers::{ | 
|  | 18 | +    await_metric_emission, await_queue_metric_emission, endpoint, PASSWORD, USERNAME, | 
|  | 19 | +}; | 
| 18 | 20 | use rabbitmq_http_client::commons::PolicyTarget; | 
| 19 | 21 | use rabbitmq_http_client::requests::{ | 
| 20 | 22 |     ExchangeParams, PolicyParams, QueueParams, VirtualHostParams, | 
| @@ -214,26 +216,73 @@ fn test_blocking_export_vhost_definitions_as_data() { | 
| 214 | 216 | } | 
| 215 | 217 | 
 | 
| 216 | 218 | #[test] | 
| 217 |  | -fn test_blocking_import_definitions() { | 
|  | 219 | +fn test_blocking_import_cluster_definitions() { | 
| 218 | 220 |     let endpoint = endpoint(); | 
| 219 | 221 |     let rc = Client::new(&endpoint, USERNAME, PASSWORD); | 
| 220 |  | -    let _ = rc.delete_queue("/", "imported_queue", false); | 
|  | 222 | +    let q = "imported_queue"; | 
|  | 223 | + | 
|  | 224 | +    let _ = rc.delete_queue("/", q, false); | 
| 221 | 225 |     let defs = json!({  "queues": [ | 
| 222 | 226 |       { | 
| 223 | 227 |         "auto_delete": false, | 
| 224 | 228 |         "durable": true, | 
| 225 |  | -        "name": "imported_queue", | 
|  | 229 | +        "name": q, | 
| 226 | 230 |         "vhost": "/" | 
| 227 | 231 |       } | 
| 228 | 232 |     ]}); | 
| 229 | 233 | 
 | 
| 230 |  | -    let result = rc.import_definitions(defs); | 
| 231 |  | -    assert!(result.is_ok(), "import_definitions returned {:?}", result); | 
|  | 234 | +    let result = rc.import_cluster_wide_definitions(defs); | 
|  | 235 | +    assert!( | 
|  | 236 | +        result.is_ok(), | 
|  | 237 | +        "import_cluster_wide_definitions returned {:?}", | 
|  | 238 | +        result | 
|  | 239 | +    ); | 
| 232 | 240 | 
 | 
| 233 |  | -    let result1 = rc.get_queue_info("/", "imported_queue"); | 
|  | 241 | +    let result1 = rc.get_queue_info("/", q); | 
|  | 242 | +    assert!( | 
|  | 243 | +        result1.is_ok(), | 
|  | 244 | +        "can't get the imported import_cluster_wide_definitions: {:?}", | 
|  | 245 | +        result1 | 
|  | 246 | +    ); | 
|  | 247 | + | 
|  | 248 | +    rc.delete_queue("/", q, true).unwrap(); | 
|  | 249 | +} | 
|  | 250 | + | 
|  | 251 | +#[test] | 
|  | 252 | +fn test_blocking_import_vhost_definitions() { | 
|  | 253 | +    let endpoint = endpoint(); | 
|  | 254 | +    let rc = Client::new(&endpoint, USERNAME, PASSWORD); | 
|  | 255 | + | 
|  | 256 | +    let vh = "rust/http/api/blocking/vhost.definitions.import"; | 
|  | 257 | +    let _ = rc.delete_vhost(vh, true).unwrap(); | 
|  | 258 | + | 
|  | 259 | +    let vh_params = VirtualHostParams::named(vh); | 
|  | 260 | +    rc.create_vhost(&vh_params).unwrap(); | 
|  | 261 | + | 
|  | 262 | +    let q = "imported_queue"; | 
|  | 263 | +    let defs = json!({  "queues": [ | 
|  | 264 | +      { | 
|  | 265 | +        "auto_delete": false, | 
|  | 266 | +        "durable": true, | 
|  | 267 | +        "name": q, | 
|  | 268 | +      } | 
|  | 269 | +    ]}); | 
|  | 270 | + | 
|  | 271 | +    let result = rc.import_vhost_definitions(vh, defs); | 
|  | 272 | +    assert!( | 
|  | 273 | +        result.is_ok(), | 
|  | 274 | +        "import_vhost_definitions returned {:?}", | 
|  | 275 | +        result | 
|  | 276 | +    ); | 
|  | 277 | + | 
|  | 278 | +    await_queue_metric_emission(); | 
|  | 279 | + | 
|  | 280 | +    let result1 = rc.get_queue_info(vh, q); | 
| 234 | 281 |     assert!( | 
| 235 | 282 |         result1.is_ok(), | 
| 236 | 283 |         "can't get the imported queue: {:?}", | 
| 237 | 284 |         result1 | 
| 238 | 285 |     ); | 
|  | 286 | + | 
|  | 287 | +    let _ = rc.delete_vhost(vh, true).unwrap(); | 
| 239 | 288 | } | 
0 commit comments