finished a bunch of modules

- finished audio module
- finished data module
- finished filesystem module
- finished font module (note: glphy test fails, but seems to be a 12.0 issue)
- finished image module
- finished maths module
- finished sound module
- finished thread module
- finished video module
- fixed pcall error not showing in results for invalid test code
This commit is contained in:
ell
2023-10-14 18:18:53 +01:00
parent f477b8085f
commit 09d0ace4b6
27 changed files with 2169 additions and 1263 deletions
+54 -32
View File
@@ -1,6 +1,13 @@
-- love.window
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------METHODS---------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- love.window.close
love.test.window.close = function(test)
-- closing window should cause graphics to not be active
@@ -130,12 +137,6 @@ end
-- love.window.getVSync
love.test.window.getVSync = function(test)
test:assertNotNil(love.window.getVSync())
-- check turning off
love.window.setVSync(0)
test:assertEquals(0, love.window.getVSync(), 'check vsync off')
-- check turning on
love.window.setVSync(1)
test:assertEquals(1, love.window.getVSync(), 'check vsync on')
end
@@ -168,6 +169,7 @@ end
-- love.window.isMaximized
love.test.window.isMaximized = function(test)
if test:isDelayed() == false then
test:assertEquals(false, love.window.isMaximized(), 'check window not maximized')
love.window.maximize()
test:setDelay(10)
else
@@ -180,12 +182,17 @@ end
-- love.window.isMinimized
love.test.window.isMinimized = function(test)
-- check not minimized to start
test:assertEquals(false, love.window.isMinimized(), 'check window not minimized')
-- try to minimize
love.window.minimize()
test:assertEquals(true, love.window.isMinimized(), 'check window minimized')
love.window.restore()
if test:isDelayed() == false then
-- check not minimized to start
test:assertEquals(false, love.window.isMinimized(), 'check window not minimized')
-- try to minimize
love.window.minimize()
test:setDelay(10)
else
-- on linux minimize won't get recognized immediately, so wait a few frames
test:assertEquals(true, love.window.isMinimized(), 'check window minimized')
love.window.restore()
end
end
@@ -214,6 +221,7 @@ end
-- love.window.maximize
love.test.window.maximize = function(test)
if test:isDelayed() == false then
test:assertEquals(false, love.window.isMaximized(), 'check window not maximized')
-- check maximizing is set
love.window.maximize()
test:setDelay(10)
@@ -227,10 +235,16 @@ end
-- love.window.minimize
love.test.window.minimize = function(test)
-- check minimizing is set
love.window.minimize()
test:assertEquals(true, love.window.isMinimized(), 'check window minimized')
love.window.restore()
if test:isDelayed() == false then
test:assertEquals(false, love.window.isMinimized(), 'check window not minimized')
-- check minimizing is set
love.window.minimize()
test:setDelay(10)
else
-- on linux we need to wait a few frames
test:assertEquals(true, love.window.isMinimized(), 'check window maximized')
love.window.restore()
end
end
@@ -242,12 +256,20 @@ end
-- love.window.restore
love.test.window.restore = function(test)
-- check minimized to start
love.window.minimize()
test:assertEquals(true, love.window.isMinimized(), 'check window minimized')
-- check restoring the state of the window
love.window.restore()
test:assertEquals(false, love.window.isMinimized(), 'check window restored')
-- TODO: for linux runner
-- test doesn't pass because the current test delay system can't wait twice
if test:isDelayed() == false then
-- check minimized to start
love.window.minimize()
love.window.restore()
test:setDelay(10)
else
-- check restoring the state of the window
test:assertEquals(false, love.window.isMinimized(), 'check window restored')
end
end
@@ -305,11 +327,15 @@ end
-- love.window.setPosition
love.test.window.setPosition = function(test)
-- check position is returned
love.window.setPosition(100, 100, 1)
local x, y, _ = love.window.getPosition()
test:assertEquals(100, x, 'check position x')
test:assertEquals(100, y, 'check position y')
if test:isDelayed() == false then
-- check position is returned
love.window.setPosition(100, 100, 1)
test:setDelay(10)
else
local x, y, _ = love.window.getPosition()
test:assertEquals(100, x, 'check position x')
test:assertEquals(100, y, 'check position y')
end
end
@@ -324,12 +350,8 @@ end
-- love.window.setVSync
love.test.window.setVSync = function(test)
-- check setting vsync value off
love.window.setVSync(0)
test:assertEquals(0, love.window.getVSync(), 'check vsync off')
-- check setting vsync value on
love.window.setVSync(1)
test:assertEquals(1, love.window.getVSync(), 'check vsync on')
test:assertNotNil(love.window.getVSync())
end