summaryrefslogtreecommitdiffstats
path: root/mqtt-tester/src
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2023-01-09 09:27:14 +0100
committerMatthias Beyer <mail@beyermatthias.de>2023-01-11 09:01:48 +0100
commitd53aeb6a2be4624df29e6ef80126be5ee0fd1922 (patch)
tree570add10e009487e1f6dfe848f0f68ea8d247fc4 /mqtt-tester/src
parent5bb528078701b182a3030cc5d10e44e7bd5e93a1 (diff)
Fix: NoUsernameMeansNoPassword impl PacketInvariant returns Option<_>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'mqtt-tester/src')
-rw-r--r--mqtt-tester/src/client_report.rs12
1 files changed, 7 insertions, 5 deletions
diff --git a/mqtt-tester/src/client_report.rs b/mqtt-tester/src/client_report.rs
index 5498b77..a3c345d 100644
--- a/mqtt-tester/src/client_report.rs
+++ b/mqtt-tester/src/client_report.rs
@@ -706,10 +706,10 @@ async fn check_connect_flag_username_zero_means_password_zero(
struct NoUsernameMeansNoPassword;
impl PacketInvariant for NoUsernameMeansNoPassword {
- fn test_invariant(&self, packet: &MPacket<'_>) -> miette::Result<Report> {
- let result = if let MConnect {
+ fn test_invariant(&self, packet: &MPacket<'_>) -> Option<miette::Result<Report>> {
+ let result = if let MPacket::Connect(MConnect {
username, password, ..
- } = packet
+ }) = packet
{
if username.is_none() {
if password.is_some() {
@@ -720,13 +720,15 @@ impl PacketInvariant for NoUsernameMeansNoPassword {
} else {
ReportResult::Success
}
+ } else {
+ return None;
};
- Ok(mk_report! {
+ Some(Ok(mk_report! {
name: "If the CONNECT packet flag for username is set, a username must be present",
desc: "If the User Name Flag is set to 1, a user name MUST be present in the payload.",
normative: "[MQTT-3.1.2-18, MQTT-3.1.2-19]",
result
- })
+ }))
}
}