Lua Resty Busted Save

Test OpenResty scripts with busted

Project README

lua-resty-busted Module Version

A little hack to test OpenResty scripts with busted.

By overriding the busted executable with the one shipped with this module, busted runs with the resty-cli interpreter, which can execute Lua scripts written for OpenResty from the CLI.

Install

By default, the script is installed under /usr/local/bin. You can use the Makefile variables (also from Luarocks) to install it somewhere else.

Luarocks:

$ luarocks install lua-resty-busted

Makefile:

$ make install

Manually: just copy the bin/busted script somewhere in your $PATH.

Usage

describe("openresty script", function()
  it("should run in ngx_lua context", function()
    assert.equal(0, ngx.OK)
    assert.equal(200, ngx.HTTP_OK)
  end)
  it("should wait", function()
    ngx.sleep(3)
    assert.is_true(1 == 1)
  end)
end)

From resty-cli's documentation:

The Lua code is initiated by the init_worker_by_lua directive and run in the context of ngx.timer callback. So all of ngx_lua's Lua APIs available in the ngx.timer callback context are also available in the resty utility. We may remove some of the remaining limitations in the future though.

License

Work licensed under the MIT License. Please check Olivine-Labs/busted for the license of the underlying, actual testing framework, and OpenResty/lua-resty-cli for the license of the interpreter.

Open Source Agenda is not affiliated with "Lua Resty Busted" Project. README Source: thibaultcha/lua-resty-busted
Stars
32
Open Issues
0
Last Commit
5 months ago

Open Source Agenda Badge

Open Source Agenda Rating