atproto_devtool/commands.rs
1//! Top-level subcommand dispatch.
2
3use clap::Subcommand;
4use miette::Report;
5use std::process::ExitCode;
6
7pub mod test;
8
9use self::test::TestCmd;
10
11#[derive(Debug, Subcommand)]
12pub enum Command {
13 /// Conformance and diagnostic checks against atproto services.
14 #[command(subcommand)]
15 Test(TestCmd),
16}
17
18impl Command {
19 pub async fn run(self, no_color: bool) -> Result<ExitCode, Report> {
20 match self {
21 Command::Test(cmd) => cmd.run(no_color).await,
22 }
23 }
24}