4个版本
0.6.2 | 2022年7月25日 |
---|---|
0.6.1 | 2022年7月25日 |
0.6.0 | 2022年7月25日 |
0.5.0 | 2022年7月25日 |
#519 在 编程语言
145KB
340 行
WhileyTestFile
一个库,用于根据RFC#110 解析Whiley测试文件,这些文件用于测试Whiley编译器。每个测试描述了对一个或多个Whiley文件的一系列修改,以及预期的结果(例如错误、警告等)。以下是一个测试文件的示例
whiley.verify = false
boogie.timeout = 1000
================
>>> main.whiley
method main():
>>> other.whiley
import main
---
E101 main.whiley 1,2
E302 main.whiley 2,2:3
================
<<< other.whiley
>>> main.whiley 1:1
method main()
skip
---
这是一个涉及两个文件(main.whiley
和 other.whiley
)的测试。初始帧将 main.whiley
的内容设置为 method main()
,将 other.whiley
的内容设置为 import main
。此外,编译此帧应产生两个错误(E101
和 E302
)。第二个帧删除文件 other.whiley
并更新 main.whiley
的内容。此外,此点编译快照不应产生任何错误。
用法
use std::fs;
use whiley_test_file::WhileyTestFile;
//!
fn load(filename: &str) {
// Read the test file
let input = fs::read_to_string(filename).unwrap();
// Parse test file
let test_file = WhileyTestFile::new(&input).unwrap();
// ...
}
这仅从磁盘读取文件并将其解析为 WhileyTestFile
,并期望这一切都成功。