aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_util_uuid.lua
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2016-01-10 03:57:17 +0100
committerKim Alvefur <zash@zash.se>2016-01-10 03:57:17 +0100
commit1df83ddc8cdb6a93f4b736f461cec71084bbf095 (patch)
tree64202f4daef595ff51640c1810fbb2751775faa4 /tests/test_util_uuid.lua
parent8cdd08825d3ab4afddc12ddf75dc9af1924e8518 (diff)
parent0d98ccd02a37153aef1cbfb71ba9c103d43fbda7 (diff)
downloadprosody-1df83ddc8cdb6a93f4b736f461cec71084bbf095.tar.gz
prosody-1df83ddc8cdb6a93f4b736f461cec71084bbf095.zip
Merge 0.10->trunk
Diffstat (limited to 'tests/test_util_uuid.lua')
-rw-r--r--tests/test_util_uuid.lua24
1 files changed, 24 insertions, 0 deletions
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
+