aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test.lua5
-rw-r--r--tests/test_util_uuid.lua24
2 files changed, 27 insertions, 2 deletions
diff --git a/tests/test.lua b/tests/test.lua
index 1192b7b8..4f6c5335 100644
--- a/tests/test.lua
+++ b/tests/test.lua
@@ -22,6 +22,7 @@ function run_all_tests()
dotest "util.sasl.scram"
dotest "util.cache"
dotest "util.throttle"
+ dotest "util.uuid"
dosingletest("test_sasl.lua", "latin1toutf8");
dosingletest("test_utf8.lua", "valid");
@@ -145,10 +146,10 @@ function dotest(unitname)
unit._M = unit;
end
setfenv(chunk, unit);
- local success, err = pcall(chunk);
+ local success, ret = pcall(chunk);
_fakeG.module, _fakeG._M = oldmodule, old_M;
if not success then
- print("WARNING: ", "Failed to initialise module: "..unitname, err);
+ print("WARNING: ", "Failed to initialise module: "..unitname, ret);
return;
end
diff --git a/tests/test_util_uuid.lua b/tests/test_util_uuid.lua
new file mode 100644
index 00000000..d3f72bb4
--- /dev/null
+++ b/tests/test_util_uuid.lua
@@ -0,0 +1,24 @@
+-- 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 i = 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
+