用于测试非公共功能的惯用方法

时间:2017-01-21 04:55:52

标签: rust automated-tests idiomatic

此代码无法使用cargo test进行编译。它会出现错误未解析名称bar

fn bar()
{
}

#[cfg(test)]
mod tests {
    use super::*;
    #[test]
    fn test_bar()
    {
        bar();
    }
}

因为fn bar()不公开。我可以通过这种方式编写测试来解决这个问题:

fn bar()
{
}

#[cfg(test)]
#[test]
fn test_bar()
{
    bar();
}

然而,根据Rust Book,第一种方法是在Rust中编写测试的惯用方法。在Rust中测试非公共函数的惯用方法是什么?

0 个答案:

没有答案