From c7c8f25284a3d99b10276fd0ce16dbcb501c985b Mon Sep 17 00:00:00 2001 From: ell <77150506+ellraiser@users.noreply.github.com> Date: Sun, 8 Oct 2023 18:25:00 +0100 Subject: [PATCH] added objects module placeholders --- .github/workflows/main.yml | 14 +- testing/tests/data.lua | 6 +- testing/tests/event.lua | 2 +- testing/tests/graphics.lua | 30 +-- testing/tests/objects.lua | 366 ++++++++++++++++++++++++++++++------- 5 files changed, 326 insertions(+), 92 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 9fb1f58bf..4dbfab58d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -50,9 +50,9 @@ jobs: name: love-x86_64-AppImage-debug path: love-${{ github.sha }}.AppImage-debug.tar.gz - name: Make Runnable - run: chmod a+x love-linux-x86_64.AppImage + run: chmod a+x love-${{ github.sha }}.AppImage - name: Run All Tests - run: xvfb-run love-linux-x86_64.AppImage testing + run: xvfb-run love-${{ github.sha }}.AppImage testing - name: Love Test Report uses: ellraiser/love-test-report@main with: @@ -218,13 +218,11 @@ jobs: - name: Build Test Exe if: steps.vars.outputs.arch != 'ARM64' run: cmake --build build --config Release --target install - - name: Install Mesa + - name: Install Mesa if: steps.vars.outputs.arch != 'ARM64' - run: | - curl.exe -L --output mesa.7z --url https://github.com/pal1000/mesa-dist-win/releases/download/23.2.1/mesa3d-23.2.1-release-msvc.7z - 7z x mesa.7z - mklink opengl32.dll "x64\opengl32.dll" - mklink libglapi.dll "x64\libglapi.dll" + uses: ssciwr/setup-mesa-dist-win@v1 + with: + version: '23.2.1' - name: Run All Tests if: steps.vars.outputs.arch != 'ARM64' run: install\lovec.exe testing/main.lua diff --git a/testing/tests/data.lua b/testing/tests/data.lua index 76abdf5c7..dac5f3c06 100644 --- a/testing/tests/data.lua +++ b/testing/tests/data.lua @@ -121,7 +121,7 @@ end -- love.data.getPackedSize -- @NOTE I don't really get what lua packing types are so skipping for now - ell love.test.data.getPackedSize = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end @@ -161,12 +161,12 @@ end -- love.data.pack -- @NOTE I don't really get what lua packing types are so skipping for now - ell love.test.data.pack = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.data.unpack -- @NOTE I don't really get what lua packing types are so skipping for now - ell love.test.data.unpack = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end diff --git a/testing/tests/event.lua b/testing/tests/event.lua index 56650250f..ff667c394 100644 --- a/testing/tests/event.lua +++ b/testing/tests/event.lua @@ -69,5 +69,5 @@ end -- love.event.wait -- @NOTE not sure best way to test this one love.test.event.wait = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end diff --git a/testing/tests/graphics.lua b/testing/tests/graphics.lua index 5e054d1f3..8ace6eaea 100644 --- a/testing/tests/graphics.lua +++ b/testing/tests/graphics.lua @@ -10,91 +10,91 @@ -- love.graphics.arc love.test.graphics.arc = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.circle love.test.graphics.circle = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.clear love.test.graphics.clear = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.discard love.test.graphics.discard = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.draw love.test.graphics.draw = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.drawInstanced love.test.graphics.drawInstanced = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.drawLayer love.test.graphics.drawLayer = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.ellipse love.test.graphics.ellipse = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.flushBatch love.test.graphics.flushBatch = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.line love.test.graphics.line = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.points love.test.graphics.points = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.polygon love.test.graphics.polygon = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.present love.test.graphics.present = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.print love.test.graphics.print = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end -- love.graphics.printf love.test.graphics.printf = function(test) - test:skipTest('test method needs writing') + test:skipTest('test class needs writing') end diff --git a/testing/tests/objects.lua b/testing/tests/objects.lua index 6ccd9dae0..2a03544b8 100644 --- a/testing/tests/objects.lua +++ b/testing/tests/objects.lua @@ -1,6 +1,93 @@ -- objects put in their own test methods to test all attributes and class methods +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +------------------------------------AUDIO--------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + + +-- RecordingDevice (love.audio.getRecordingDevices) +love.test.objects.RecordingDevice = function(test) + test:skipTest('test class needs writing') +end + + +-- Source (love.audio.newSource) +love.test.objects.Source = function(test) + test:skipTest('test class needs writing') + -- local source1 = love.audio.newSource('resources/click.ogg', 'static') + --source1:clone() + --source1:getChannelCount() + --source1:getDuration() + --source1:isRelative() + --source1:queue() + --source1:getFreeBufferCount() + --source1:getType() + --source1:isPlaying() + --source1:play() + --source1:pause() + --source1:stop() + --source1:seek() + --source1:tell() + --source1:isLooping() + --source1:setLooping() + --source1:setAirAbsorption() + --source1:getAirAbsorption() + --source1:setAttenuationDistances() + --source1:getAttenuationDistances() + --source1:setCone() + --source1:getCone() + --source1:setDirection() + --source1:getDirection() + --source1:setEffect() + --source1:getEffect() + --source1:getActiveEffects() + --source1:setFilter() + --source1:getFilter() + --source1:setPitch() + --source1:getPitch() + --source1:setPosition() + --source1:getPosition() + --source1:setRelative() + --source1:setRolloff() + --source1:getRolloff() + --source1:setVelocity() + --source1:getVelocity() + --source1:setVolume() + --source1:getVolume() + --source1:setVolumeLimits() + --source1:getVolumeLimits() +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +------------------------------------DATA---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + + +-- ByteData (love.data.newByteData) +love.test.objects.ByteData = function(test) + test:skipTest('test class needs writing') +end + + +-- CompressedData (love.data.compress) +love.test.objects.CompressedData = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +---------------------------------FILESYSTEM------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + + -- File (love.filesystem.newFile) love.test.objects.File = function(test) @@ -88,88 +175,237 @@ love.test.objects.File = function(test) end --- Source (love.audio.newSource) --- love.test.objects.Source = function(test) - -- local source1 = love.audio.newSource('resources/click.ogg', 'static') - --source1:clone() - --source1:getChannelCount() - --source1:getDuration() - --source1:isRelative() - --source1:queue() - --source1:getFreeBufferCount() - --source1:getType() - --source1:isPlaying() - --source1:play() - --source1:pause() - --source1:stop() - --source1:seek() - --source1:tell() - --source1:isLooping() - --source1:setLooping() - --source1:setAirAbsorption() - --source1:getAirAbsorption() - --source1:setAttenuationDistances() - --source1:getAttenuationDistances() - --source1:setCone() - --source1:getCone() - --source1:setDirection() - --source1:getDirection() - --source1:setEffect() - --source1:getEffect() - --source1:getActiveEffects() - --source1:setFilter() - --source1:getFilter() - --source1:setPitch() - --source1:getPitch() - --source1:setPosition() - --source1:getPosition() - --source1:setRelative() - --source1:setRolloff() - --source1:getRolloff() - --source1:setVelocity() - --source1:getVelocity() - --source1:setVolume() - --source1:getVolume() - --source1:setVolumeLimits() - --source1:getVolumeLimits() --- end - -- FileData (love.filesystem.newFileData) +love.test.objects.FileData = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +------------------------------------FONT---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- --- ByteData (love.data.newByteData) --- DataView (love.data.newDataView) --- FontData (love.font.newFontData) -- GlyphData (love.font.newGlyphData) +love.test.objects.GlyphData = function(test) + test:skipTest('test class needs writing') +end + + -- Rasterizer (love.font.newRasterizer) +love.test.objects.Rasterizer = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +---------------------------------GRAPHICS--------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + + +-- Canvas (love.graphics.newCanvas) +love.test.objects.Canvas = function(test) + test:skipTest('test class needs writing') +end + + +-- Font (love.graphics.newFont) +love.test.objects.Font = function(test) + test:skipTest('test class needs writing') +end + + +-- Image (love.graphics.newImage) +love.test.objects.Image = function(test) + test:skipTest('test class needs writing') +end + + +-- Mesh (love.graphics.newMesh) +love.test.objects.Mesh = function(test) + test:skipTest('test class needs writing') +end + + +-- ParticleSystem (love.graphics.newParticleSystem) +love.test.objects.ParticleSystem = function(test) + test:skipTest('test class needs writing') +end + + +-- Quad (love.graphics.newQuad) +love.test.objects.Quad = function(test) + test:skipTest('test class needs writing') +end + + +-- Shader (love.graphics.newShader) +love.test.objects.Shader = function(test) + test:skipTest('test class needs writing') +end + + +-- SpriteBatch (love.graphics.newSpriteBatch) +love.test.objects.SpriteBatch = function(test) + test:skipTest('test class needs writing') +end + + +-- Text (love.graphics.newTextBatch) +love.test.objects.Text = function(test) + test:skipTest('test class needs writing') +end + + +-- Texture (love.graphics.newTexture) +love.test.objects.Texture = function(test) + test:skipTest('test class needs writing') +end + + +-- Video (love.graphics.newVideo) +love.test.objects.Video = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +-----------------------------------IMAGE---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + -- CompressedImageData (love.image.newCompressedImageData) +love.test.objects.CompressedImageData = function(test) + test:skipTest('test class needs writing') +end + + -- ImageData (love.image.newImageData) +love.test.objects.ImageData = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +------------------------------------MATH---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + -- BezierCurve (love.math.newBezierCurve) +love.test.objects.BezierCurve = function(test) + test:skipTest('test class needs writing') +end + + -- RandomGenerator (love.math.RandomGenerator) +love.test.objects.RandomGenerator = function(test) + test:skipTest('test class needs writing') +end + + -- Transform (love.math.Transform) +love.test.objects.Transform = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +----------------------------------PHYSICS--------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + + +-- Body (love.physics.newBody) +love.test.objects.Body = function(test) + test:skipTest('test class needs writing') +end + + +-- Contact (love.physics.World:getContacts) +love.test.objects.Contact = function(test) + test:skipTest('test class needs writing') +end + + +-- Fixture (love.physics.newFixture) +love.test.objects.Fixture = function(test) + test:skipTest('test class needs writing') +end + + +-- Joint (love.physics.newDistanceJoint) +love.test.objects.Joint = function(test) + test:skipTest('test class needs writing') +end + + +-- Shape (love.physics.newCircleShape) +love.test.objects.Shape = function(test) + test:skipTest('test class needs writing') +end + + +-- World (love.physics.newWorld) +love.test.objects.World = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +-----------------------------------SOUND---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + -- Decoder (love.sound.newDecoder) +love.test.objects.Decoder = function(test) + test:skipTest('test class needs writing') +end + + -- SoundData (love.sound.newSoundData) +love.test.objects.SoundData = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +----------------------------------THREAD---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + -- Channel (love.thread.newChannel) +love.test.objects.Channel = function(test) + test:skipTest('test class needs writing') +end + + -- Thread (love.thread.newThread) +love.test.objects.Thread = function(test) + test:skipTest('test class needs writing') +end + + +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- +-----------------------------------VIDEO---------------------------------------- +-------------------------------------------------------------------------------- +-------------------------------------------------------------------------------- + -- VideoStream (love.thread.newVideoStream) - --- all the stuff from love.physics! barf - --- (love.graphics objs) --- Canvas --- Font --- Image --- Framebugger --- Mesh --- ParticleSystem --- PixelEffect --- Quad --- Shader --- SpriteBatch --- Text --- Video +love.test.objects.VideoStream = function(test) + test:skipTest('test class needs writing') +end