rust-expect-macros

Crates.iorust-expect-macros
lib.rsrust-expect-macros
version0.1.0
created_at2026-01-05 22:01:03.538487+00
updated_at2026-01-05 22:01:03.538487+00
descriptionProcedural macros for the rust-expect terminal automation library
homepage
repositoryhttps://github.com/praxiomlabs/rust-expect
max_upload_size
id2024654
size33,046
Justin (jkindrix)

documentation

README

rust-expect-macros

Procedural macros for the rust-expect terminal automation library.

Macros

patterns!

Create multiple patterns at once:

use rust_expect_macros::patterns;

let patterns = patterns![
    "login:",
    "password:",
    r"\$ $",
];

dialog!

Define dialog flows declaratively:

use rust_expect_macros::dialog;

let login_dialog = dialog! {
    expect "login: " => send "admin\n",
    expect "password: " => send "secret\n",
    expect "$ ",
};

regex!

Compile-time verified regex patterns:

use rust_expect_macros::regex;

let pattern = regex!(r"\d{3}-\d{4}");

timeout!

Human-readable duration syntax:

use rust_expect_macros::timeout;

let duration = timeout!(5 seconds);
let short = timeout!(500 ms);

License

Licensed under MIT or Apache-2.0.

Commit count: 89

cargo fmt