File

tests/test_util_uuid.lua @ 8100:1773559b03a8

prosodyctl cert: If running as root, write certificate files to config directory (fixes #530)
author Kim Alvefur <zash@zash.se>
date Wed, 19 Apr 2017 20:39:47 +0200
parent 7512:7a655ff689b1
line wrap: on
line source

-- This tests the format, not the randomness

-- https://tools.ietf.org/html/rfc4122#section-4.4

local pattern = "^" .. table.concat({
	string.rep("%x", 8),
	string.rep("%x", 4),
	"4" .. -- version
	string.rep("%x", 3),
	"[89ab]" .. -- reserved bits of 1 and 0
	string.rep("%x", 3),
	string.rep("%x", 12),
}, "%-") .. "$";

function generate(generate)
	for _ = 1, 100 do
		assert_is(generate():match(pattern));
	end
end

function seed(seed)
	assert_equal(seed("random string here"), nil, "seed doesn't return anything");
end