From 602818b895fec710b0534b0b8fa7f5e1f57203c2 Mon Sep 17 00:00:00 2001 From: amelia squires Date: Mon, 16 Sep 2024 12:16:29 -0500 Subject: fix _copy and mem leaks --- tests/hash.lua | 22 +++++++++++++++++++++- tests/t.lua | 5 +++++ tests/thread.lua | 15 +++++++++++++++ 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 tests/t.lua create mode 100644 tests/thread.lua (limited to 'tests') diff --git a/tests/hash.lua b/tests/hash.lua index 60d33a8..d314167 100644 --- a/tests/hash.lua +++ b/tests/hash.lua @@ -1,5 +1,7 @@ llib = require "lullaby" +--llib.io.log = function() end + local hashes_working = 0 local hashes_failed = 0 local functions_working = 0 @@ -14,6 +16,8 @@ function test(name,b,exp,oargs) local hash5 local hash6 local hash7 + local hash8 + local hash9 local add = "" if oargs == nil then hash = llib.crypto[name](b) @@ -28,13 +32,29 @@ function test(name,b,exp,oargs) hash5 = llib.crypto[name]() hash6 = hash5 + b; hash6 = hash6:final() - hash5 = hash5:update(b):final() + hash5 = hash5:update(b):final() + hash7 = llib.crypto[name]() else hash2 = llib.crypto[name](table.unpack(oargs)):update(b):final() hash5 = llib.crypto[name](table.unpack(oargs)) hash6 = hash5 + b; hash6 = hash6:final() hash5 = hash5:update(b):final() + hash7 = llib.crypto[name](table.unpack(oargs)) + end + + hash8 = hash7 + "test" + hash9 = hash8:final() + hash7 = hash7:update("meo"):final() + hash8 = hash8:final() + + if hash8 ~= hash9 then + fail = true + functions_failed = functions_failed + 1 + llib.io.error(name.." __copy not working") + else + functions_working = functions_working + 1 + llib.io.log(name.." __copy working") end if(hash5 ~= exp) then diff --git a/tests/t.lua b/tests/t.lua new file mode 100644 index 0000000..9c71c61 --- /dev/null +++ b/tests/t.lua @@ -0,0 +1,5 @@ +a = require "lullaby" + +o = a.crypto.sha224() +--o:update("me") +--print(o:final()) diff --git a/tests/thread.lua b/tests/thread.lua new file mode 100644 index 0000000..8b7de88 --- /dev/null +++ b/tests/thread.lua @@ -0,0 +1,15 @@ +llby = require "lullaby" + +llby.thread.async(function(res, rej) + print("hi") + a = llby.crypto.sha512() + a:update("hi") + b = a + "meow" + print((b + "hi"):final()) + print((a:update("hi")):final()) + print((b + "hi"):final()) +end) + +os.execute("sleep 1") + + -- cgit v1.2.3