aardio 文档

aardio 范例: 自动化单元测试

// 自动化单元测试
import console; 

/*测试函数{{*/
var expect = console.expect;//使用全等式比较,失败则序列化为 JSON 后比较。
var test = console.test;

//自定义测试函数,以下是 console.match 的源代码
var match = function(str, pattern, testName){
    if(!test(str ? string.match(str, pattern),testName) ) {
        console.fail("  期望匹配模式:", pattern); 
    }
};
/*}}*/

import win.form;

//测试参数 @1 指定的条件是否为真
test( win[["form"]],"导入 win.form")

var array = table.append([1,2],[3]);

//测试是否期望值
expect(array,[1,2,3],"table.append")

//注意 <> 表示非捕获组,: 表示多字节字符,匹配原始字符都需要先转义。
match("<div>中文:English</div>","\<div\>:+\:","模式匹配检测")

//如果测试成功或失败计数非零则 console.report/console.pause/console.more 都可以打印测试小结并清零计数器
console.report()

//控制台全部输出如下:
/*
导入 win.form ✓ PASS
table.append ✓ PASS
模式匹配检测 ✓ PASS
════════════════════════════
All tests ✓ 成功
Passed: 3
Failed: 0
════════════════════════════
请按任意键继续 ...
*/

/*
<ignore><!--
标准库 util.testRunner 可用于编写无 UI 阻塞的自动测试代码(已被用于 aardio autos)。
--></ignore> 
*/
Markdown 格式