spec/util_jwt_spec.lua
author Kim Alvefur <zash@zash.se>
Mon, 24 Feb 2020 01:24:25 +0100
changeset 10664 c4ded3be7cc0
child 10665 4eee1aaa9405
permissions -rw-r--r--
util.jwt: Basic JSON Web Token library supporting HS256 tokens

local jwt = require "util.jwt";

describe("util.jwt", function ()
	it("validates", function ()
		local key = "secret";
		local token = jwt.sign(key, { payload = "this" });
		assert.string(token);
		local ok, parsed = jwt.verify(key, token);
		assert.truthy(ok)
		assert.same({ payload = "this" }, parsed);
	end);
	it("rejects invalid", function ()
		local key = "secret";
		local token = jwt.sign("wrong", { payload = "this" });
		assert.string(token);
		local ok, err = jwt.verify(key, token);
		assert.falsy(ok)
	end);
end);