|
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