#random #spanish #process #test #inquisition

bin+lib spanquist

一个用于随机安排应用程序自我终止的宏

2 个版本

使用旧的 Rust 2015

0.1.1 2017年8月31日
0.1.0 2017年8月23日

#8 in #spanish

MIT/Apache

8KB

spanquist Build Status

一个受蒙提·派森启发的宏,在随机时间后突然停止应用程序。

为什么

spanquist可以用作可控混沌的代理,以验证一个看似健壮的系统是否正确处理了意外终止的应用程序。因为它在终止其宿主进程时发出一个容易识别的字符串

NOBODY EXPECTS THE SPANISH INQUISITION

,因此这些终止仍然可以被识别,从日志中过滤出来等。

它还可以用来捉弄你年度最愚蠢的同事。

(误)使用

将以下内容添加到您的Cargo.toml

[dependencies]
spanquist = "*"

然后将应用程序的主函数用spanquist!宏包裹起来。

#[macro_use] extern crate spanquist;

spanquist! {
fn main() {
    loop {
        println!("Hello, world!");
        thread::sleep(time::Duration::from_millis(1000));
    }
}}

试试看

要查看spanquist的实际效果,克隆此存储库,并在其根目录下执行

cargo run

然后,等待一小时,看看一个美丽而脆弱的应用程序被残酷地摧毁。

不是我的错

由此产生的任何荒谬、混乱或直接谋杀,使用此软件包是您个人的责任。无论如何,你打算怎么办?在我身上流血吗?

依赖项

~315–540KB