糖果实验室杂货铺

Candy Lab

Moonscript的Busted单体测试

1 year ago 0

作者:糖果

Busted是Lua的单体测试工具。 去官网Github看一下,也支持Moonscript的单体测试。

moonunit.moon

None
1
2
3
4
5
6
describe 'moonscript tests', ->
  it 'works', ->
    assert.are.equal true, true
    return
  return
return

Describe关键字:描述了一组单元测试。 It关键字: 是对一个Case的描述。

把Moonscript脚本,翻译成Lua脚本。 moonc moonunit.moon

None
1
2
3
4
5
describe('moonscript tests', function()
  it('works', function()
    assert.are.equal(true, true)
  end)
end)

其实,不用有这个翻译过程,因为busted直接可以解析.moon脚本。

因为这个脚本只有一个Case,所有显示结果如下:

1
2
3
busted moonunit.moon 

1 success / 0 failures / 0 errors / 0 pending : 0.000782 seconds

下面我们估计,把Case的表达结果,改成NG。

1
2
3
4
5
6
describe 'moonscript tests', ->
  it 'works', ->
    assert.are.equal true, false
    return                
  return
return
1
2
3
4
5
6
7
8
9
10
11
busted moonunit.moon 

0 successes / 1 failure / 0 errors / 0 pending : 0.000996 seconds

Failure → moonunit.moon @ 2
moonscript tests works
moonunit.moon:3: Expected objects to be equal.
Passed in:
(boolean) false
Expected:
(boolean) true

如预期一样,出现了NG报告。

在另一篇中,我们用Vanilla框架的Simple Route做例子,写单体测试CASE。


糖果实验室

Openresty中文编程网
IKBC经典机械键盘
机械键盘领券优惠购买

Write a Comment