use crate::define_tool;
define_tool!(MOSQUITTO, {
command: "mosquitto",
macos: { brew: "mosquitto" },
linux: { uniform: "mosquitto" },
windows: { winget: "EclipseFoundation.Mosquitto" },
category: "messaging",
});
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn mosquitto_registration_shape() {
assert_eq!(MOSQUITTO.command, "mosquitto");
assert_eq!(MOSQUITTO.category, Some("messaging"));
let mac = MOSQUITTO.macos.expect("mosquitto must support macOS");
assert_eq!(mac.brew, Some("mosquitto"));
let linux = MOSQUITTO.linux.expect("mosquitto must support Linux");
assert_eq!(linux.apt, Some("mosquitto"));
let win = MOSQUITTO.windows.expect("mosquitto must support Windows");
assert_eq!(
win.winget,
Some("EclipseFoundation.Mosquitto"),
"winget id verified against microsoft/winget-pkgs"
);
}
}