use crate::define_tool;
define_tool!(RPK, {
command: "rpk",
macos: { brew: "redpanda-data/tap/redpanda" },
linux: { brew: "redpanda-data/tap/redpanda" },
category: "messaging",
});
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn rpk_registration_shape() {
assert_eq!(RPK.command, "rpk");
assert_eq!(RPK.category, Some("messaging"));
let mac = RPK.macos.expect("rpk must support macOS");
assert_eq!(
mac.brew,
Some("redpanda-data/tap/redpanda"),
"macOS formula lives in the redpanda-data/tap tap (verify upstream if this fails — formula may have promoted to homebrew-core)"
);
let linux = RPK.linux.expect("rpk must support Linux");
assert_eq!(
linux.brew,
Some("redpanda-data/tap/redpanda"),
"use Linuxbrew, NOT the upstream apt package — that installs the full broker daemon as a system service"
);
assert!(RPK.windows.is_none(), "no first-party winget manifest");
}
}