Skip to content

Commit 90a8751

Browse files
More test refactoring
1 parent acb81aa commit 90a8751

File tree

3 files changed

+36
-44
lines changed

3 files changed

+36
-44
lines changed

src/cli.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ fn delete_subcommands() -> [Command; 11] {
803803
.required(true),
804804
),
805805
Command::new("user_limit")
806-
.about("delete a user limit")
806+
.about("clears a user limit")
807807
.arg(
808808
Arg::new("user")
809809
.long("user")

tests/list_user_limits_tests.rs

Lines changed: 23 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,47 +11,48 @@
1111
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
14-
use assert_cmd::Command;
1514
use predicates::prelude::*;
1615

16+
mod test_helpers;
17+
use crate::test_helpers::*;
18+
1719
#[test]
1820
fn test_user_limits() -> Result<(), Box<dyn std::error::Error>> {
19-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
20-
21-
cmd.args([
21+
let limit_name = "max-connections";
22+
let username = "guest";
23+
run_succeeds([
2224
"declare",
2325
"user_limit",
2426
"--user",
25-
"guest",
27+
username,
2628
"--name",
27-
"max-connections",
29+
limit_name,
2830
"--value",
2931
"1234",
3032
]);
31-
cmd.assert().success();
3233

33-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
34-
cmd.args(["list", "user_limits"]);
35-
cmd.assert()
36-
.success()
37-
.stdout(predicate::str::contains("max-connections").and(predicate::str::contains("1234")));
34+
run_succeeds(["list", "user_limits"])
35+
.stdout(predicate::str::contains(limit_name).and(predicate::str::contains("1234")));
3836

39-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
40-
cmd.args([
37+
run_succeeds([
4138
"delete",
4239
"user_limit",
4340
"--user",
44-
"guest",
41+
username,
4542
"--name",
46-
"max-connections",
43+
limit_name,
4744
]);
48-
cmd.assert().success();
4945

50-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
51-
cmd.args(["list", "user_limits"]);
52-
cmd.assert()
53-
.success()
54-
.stdout(predicate::str::contains("max-connections").not());
46+
run_succeeds(["list", "user_limits"]).stdout(predicate::str::contains(limit_name).not());
47+
48+
run_succeeds([
49+
"delete",
50+
"user_limit",
51+
"--user",
52+
username,
53+
"--name",
54+
limit_name,
55+
]);
5556

5657
Ok(())
5758
}

tests/list_users_tests.rs

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
use std::process::Command;
21
// Copyright (C) 2023-2024 RabbitMQ Core Team ([email protected])
32
//
43
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -12,37 +11,29 @@ use std::process::Command;
1211
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1312
// See the License for the specific language governing permissions and
1413
// limitations under the License.
15-
use assert_cmd::prelude::*;
14+
1615
use predicates::prelude::*;
1716

17+
mod test_helpers;
18+
use crate::test_helpers::*;
19+
1820
#[test]
1921
fn test_list_users() -> Result<(), Box<dyn std::error::Error>> {
20-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
21-
cmd.args([
22+
let username = "new_user";
23+
let password = "pa$$w0rd";
24+
run_succeeds([
2225
"declare",
2326
"user",
2427
"--name",
25-
"new_user",
28+
username,
2629
"--password",
27-
"pa$$w0rd",
30+
password,
2831
]);
29-
cmd.assert().success();
30-
31-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
32-
cmd.args(["list", "users"]);
33-
cmd.assert()
34-
.success()
35-
.stdout(predicate::str::contains("new_user"));
3632

37-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
38-
cmd.args(["delete", "user", "--name", "new_user"]);
39-
cmd.assert().success();
33+
run_succeeds(["list", "users"]).stdout(predicate::str::contains(username));
34+
run_succeeds(["delete", "user", "--name", username]);
4035

41-
let mut cmd = Command::cargo_bin("rabbitmqadmin")?;
42-
cmd.args(["list", "users"]);
43-
cmd.assert()
44-
.success()
45-
.stdout(predicate::str::contains("new_user").not());
36+
run_succeeds(["list", "users"]).stdout(predicate::str::contains(username).not());
4637

4738
Ok(())
4839
}

0 commit comments

Comments
 (0)