Browse Source

ignore setMipmapFilter on opengl ES

ell 1 year ago
parent
commit
1323bb1452

+ 2 - 2
testing/classes/TestSuite.lua

@@ -142,7 +142,7 @@ TestSuite = {
     local md = '<!-- PASSED ' .. tostring(self.totals[1]) ..
       ' || FAILED ' .. tostring(self.totals[2]) ..
       ' || SKIPPED ' .. tostring(self.totals[3]) ..
-      ' || TIME ' .. finaltime .. ' -->\n\n' ..
+      ' || TIME ' .. finaltime .. ' -->\n\n### Info\n' ..
       '**' .. tostring(self.totals[1] + self.totals[2] + self.totals[3]) .. '** tests were completed in **' ..
       finaltime .. 's** with **' ..
       tostring(self.totals[1]) .. '** passed, **' ..
@@ -152,7 +152,7 @@ TestSuite = {
       '### Report\n' ..
       '| Module                | Pass | Fail | Skip | Time   |\n' ..
       '| --------------------- | ------ | ------ | ------- | ------ |\n' ..
-      self.mdrows .. '\n\n### Failures\n' .. self.mdfailures
+      self.mdrows .. '\n### Failures\n' .. self.mdfailures
 
     local xml = '<testsuites name="love.test" tests="' .. tostring(self.totals[1]) .. 
       '" failures="' .. tostring(self.totals[2]) .. 

File diff suppressed because it is too large
+ 0 - 0
testing/examples/lovetest_runAllTests.html


+ 20 - 21
testing/examples/lovetest_runAllTests.md

@@ -1,31 +1,30 @@
-<!-- PASSED 281 || FAILED 2 || SKIPPED 20 || TIME 13.278 -->
+<!-- PASSED 282 || FAILED 1 || SKIPPED 20 || TIME 9.881 -->
 
-**303** tests were completed in **13.278s** with **281** passed, **2** failed, and **20** skipped
+### Info
+**303** tests were completed in **9.881s** with **282** passed, **1** failed, and **20** skipped
+
+Renderer: OpenGL | 4.1 Metal - 76.3 | Apple | Apple M1 Max
 
 ### Report
 | Module                | Pass | Fail | Skip | Time   |
 | --------------------- | ------ | ------ | ------- | ------ |
-| 🟢 audio | 28 | 0 | 0 | 0.851s |
-| 🟢 data | 12 | 0 | 0 | 0.197s |
-| 🟢 event | 4 | 0 | 2 | 0.096s |
-| 🟢 filesystem | 29 | 0 | 2 | 0.539s |
-| 🔴 font | 6 | 1 | 0 | 0.121s |
-| 🔴 graphics | 98 | 1 | 6 | 2.029s |
-| 🟢 image | 5 | 0 | 0 | 0.087s |
-| 🟢 math | 20 | 0 | 0 | 0.321s |
-| 🟢 physics | 22 | 0 | 6 | 0.468s |
-| 🟢 sound | 4 | 0 | 0 | 0.068s |
-| 🟢 system | 6 | 0 | 2 | 0.148s |
-| 🟢 thread | 5 | 0 | 0 | 0.376s |
-| 🟢 timer | 6 | 0 | 0 | 2.082s |
-| 🟢 video | 2 | 0 | 0 | 0.039s |
-| 🟢 window | 34 | 0 | 2 | 5.855s |
-
+| 🟢 audio | 28 | 0 | 0 | 0.857s |
+| 🟢 data | 12 | 0 | 0 | 0.139s |
+| 🟢 event | 4 | 0 | 2 | 0.010s |
+| 🟢 filesystem | 29 | 0 | 2 | 0.068s |
+| 🔴 font | 6 | 1 | 0 | 0.015s |
+| 🟢 graphics | 99 | 0 | 6 | 0.294s |
+| 🟢 image | 5 | 0 | 0 | 0.011s |
+| 🟢 math | 20 | 0 | 0 | 0.070s |
+| 🟢 physics | 22 | 0 | 6 | 0.071s |
+| 🟢 sound | 4 | 0 | 0 | 0.015s |
+| 🟢 system | 6 | 0 | 2 | 0.026s |
+| 🟢 thread | 5 | 0 | 0 | 0.317s |
+| 🟢 timer | 6 | 0 | 0 | 2.021s |
+| 🟢 video | 2 | 0 | 0 | 0.012s |
+| 🟢 window | 34 | 0 | 2 | 5.955s |
 
 ### Failures
 > 🔴 GlyphData  
 > assert 8 [check glyph number] expected '97' got '0'  
 
-> 🔴 Canvas  
-> assert 44 [check depth sample mode set] expected 'equal' got 'nil'  
-

+ 301 - 302
testing/examples/lovetest_runAllTests.xml

@@ -1,8 +1,8 @@
-<testsuites name="love.test" tests="281" failures="2" skipped="20" time="13.278">
-	<testsuite name="love.audio" tests="28" failures="0" skipped="0" time="0.851">
-		<testcase classname="RecordingDevice" name="RecordingDevice" assertions="20" time="0.397">
+<testsuites name="love.test" tests="282" failures="1" skipped="20" time="9.881">
+	<testsuite name="love.audio" tests="28" failures="0" skipped="0" time="0.857">
+		<testcase classname="RecordingDevice" name="RecordingDevice" assertions="20" time="0.394">
 		</testcase>
-		<testcase classname="Source" name="Source" assertions="54" time="0.021">
+		<testcase classname="Source" name="Source" assertions="54" time="0.019">
 		</testcase>
 		<testcase classname="getActiveEffects" name="getActiveEffects" assertions="3" time="0.017">
 		</testcase>
@@ -16,645 +16,644 @@
 		</testcase>
 		<testcase classname="getMaxSceneEffects" name="getMaxSceneEffects" assertions="1" time="0.017">
 		</testcase>
-		<testcase classname="getMaxSourceEffects" name="getMaxSourceEffects" assertions="1" time="0.017">
+		<testcase classname="getMaxSourceEffects" name="getMaxSourceEffects" assertions="1" time="0.016">
 		</testcase>
-		<testcase classname="getOrientation" name="getOrientation" assertions="6" time="0.017">
+		<testcase classname="getOrientation" name="getOrientation" assertions="6" time="0.016">
 		</testcase>
-		<testcase classname="getPosition" name="getPosition" assertions="3" time="0.016">
+		<testcase classname="getPosition" name="getPosition" assertions="3" time="0.017">
 		</testcase>
 		<testcase classname="getRecordingDevices" name="getRecordingDevices" assertions="1" time="0.017">
 		</testcase>
-		<testcase classname="getVelocity" name="getVelocity" assertions="3" time="0.014">
+		<testcase classname="getVelocity" name="getVelocity" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="getVolume" name="getVolume" assertions="1" time="0.017">
+		<testcase classname="getVolume" name="getVolume" assertions="1" time="0.018">
 		</testcase>
-		<testcase classname="isEffectsSupported" name="isEffectsSupported" assertions="1" time="0.017">
+		<testcase classname="isEffectsSupported" name="isEffectsSupported" assertions="1" time="0.016">
 		</testcase>
 		<testcase classname="newQueueableSource" name="newQueueableSource" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="newSource" name="newSource" assertions="6" time="0.017">
+		<testcase classname="newSource" name="newSource" assertions="6" time="0.018">
 		</testcase>
-		<testcase classname="pause" name="pause" assertions="2" time="0.017">
+		<testcase classname="pause" name="pause" assertions="2" time="0.018">
 		</testcase>
-		<testcase classname="play" name="play" assertions="1" time="0.017">
+		<testcase classname="play" name="play" assertions="1" time="0.019">
 		</testcase>
-		<testcase classname="setDistanceModel" name="setDistanceModel" assertions="7" time="0.018">
+		<testcase classname="setDistanceModel" name="setDistanceModel" assertions="7" time="0.017">
 		</testcase>
 		<testcase classname="setDopplerScale" name="setDopplerScale" assertions="2" time="0.016">
 		</testcase>
 		<testcase classname="setEffect" name="setEffect" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="setMixWithSystem" name="setMixWithSystem" assertions="1" time="0.017">
+		<testcase classname="setMixWithSystem" name="setMixWithSystem" assertions="1" time="0.016">
 		</testcase>
-		<testcase classname="setOrientation" name="setOrientation" assertions="6" time="0.016">
+		<testcase classname="setOrientation" name="setOrientation" assertions="6" time="0.017">
 		</testcase>
-		<testcase classname="setPosition" name="setPosition" assertions="3" time="0.016">
+		<testcase classname="setPosition" name="setPosition" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="setVelocity" name="setVelocity" assertions="3" time="0.016">
+		<testcase classname="setVelocity" name="setVelocity" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="setVolume" name="setVolume" assertions="1" time="0.016">
+		<testcase classname="setVolume" name="setVolume" assertions="1" time="0.017">
 		</testcase>
-		<testcase classname="stop" name="stop" assertions="2" time="0.017">
+		<testcase classname="stop" name="stop" assertions="2" time="0.018">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.data" tests="12" failures="0" skipped="0" time="0.197">
-		<testcase classname="ByteData" name="ByteData" assertions="10" time="0.016">
+	<testsuite name="love.data" tests="12" failures="0" skipped="0" time="0.139">
+		<testcase classname="ByteData" name="ByteData" assertions="10" time="0.017">
 		</testcase>
-		<testcase classname="CompressedData" name="CompressedData" assertions="12" time="0.016">
+		<testcase classname="CompressedData" name="CompressedData" assertions="12" time="0.017">
 		</testcase>
-		<testcase classname="compress" name="compress" assertions="45" time="0.016">
+		<testcase classname="compress" name="compress" assertions="45" time="0.017">
 		</testcase>
-		<testcase classname="decode" name="decode" assertions="4" time="0.018">
+		<testcase classname="decode" name="decode" assertions="4" time="0.017">
 		</testcase>
-		<testcase classname="decompress" name="decompress" assertions="18" time="0.017">
+		<testcase classname="decompress" name="decompress" assertions="18" time="0.018">
 		</testcase>
-		<testcase classname="encode" name="encode" assertions="15" time="0.017">
+		<testcase classname="encode" name="encode" assertions="15" time="0.019">
 		</testcase>
-		<testcase classname="getPackedSize" name="getPackedSize" assertions="3" time="0.016">
+		<testcase classname="getPackedSize" name="getPackedSize" assertions="3" time="0.011">
 		</testcase>
-		<testcase classname="hash" name="hash" assertions="6" time="0.015">
+		<testcase classname="hash" name="hash" assertions="6" time="0.016">
 		</testcase>
-		<testcase classname="newByteData" name="newByteData" assertions="3" time="0.016">
+		<testcase classname="newByteData" name="newByteData" assertions="3" time="0.001">
 		</testcase>
-		<testcase classname="newDataView" name="newDataView" assertions="3" time="0.015">
+		<testcase classname="newDataView" name="newDataView" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="pack" name="pack" assertions="4" time="0.018">
+		<testcase classname="pack" name="pack" assertions="4" time="0.001">
 		</testcase>
-		<testcase classname="unpack" name="unpack" assertions="3" time="0.016">
+		<testcase classname="unpack" name="unpack" assertions="3" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.event" tests="4" failures="0" skipped="2" time="0.096">
-		<testcase classname="clear" name="clear" assertions="1" time="0.016">
+	<testsuite name="love.event" tests="4" failures="0" skipped="2" time="0.010">
+		<testcase classname="clear" name="clear" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="poll" name="poll" assertions="1" time="0.016">
+		<testcase classname="poll" name="poll" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="pump" name="pump" assertions="0" time="0.016">
+		<testcase classname="pump" name="pump" assertions="0" time="0.002">
 			<skipped message="used internally" />
 		</testcase>
-		<testcase classname="push" name="push" assertions="1" time="0.016">
+		<testcase classname="push" name="push" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="quit" name="quit" assertions="1" time="0.016">
+		<testcase classname="quit" name="quit" assertions="1" time="0.003">
 		</testcase>
-		<testcase classname="wait" name="wait" assertions="0" time="0.016">
+		<testcase classname="wait" name="wait" assertions="0" time="0.001">
 			<skipped message="used internally" />
 		</testcase>
 	</testsuite>
-	<testsuite name="love.filesystem" tests="29" failures="0" skipped="2" time="0.539">
-		<testcase classname="File" name="File" assertions="36" time="0.020">
+	<testsuite name="love.filesystem" tests="29" failures="0" skipped="2" time="0.068">
+		<testcase classname="File" name="File" assertions="36" time="0.002">
 		</testcase>
-		<testcase classname="FileData" name="FileData" assertions="12" time="0.016">
+		<testcase classname="FileData" name="FileData" assertions="12" time="0.003">
 		</testcase>
-		<testcase classname="append" name="append" assertions="6" time="0.022">
+		<testcase classname="append" name="append" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="areSymlinksEnabled" name="areSymlinksEnabled" assertions="1" time="0.017">
+		<testcase classname="areSymlinksEnabled" name="areSymlinksEnabled" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="createDirectory" name="createDirectory" assertions="3" time="0.017">
+		<testcase classname="createDirectory" name="createDirectory" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="getAppdataDirectory" name="getAppdataDirectory" assertions="1" time="0.016">
+		<testcase classname="getAppdataDirectory" name="getAppdataDirectory" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getCRequirePath" name="getCRequirePath" assertions="1" time="0.017">
+		<testcase classname="getCRequirePath" name="getCRequirePath" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getDirectoryItems" name="getDirectoryItems" assertions="2" time="0.019">
+		<testcase classname="getDirectoryItems" name="getDirectoryItems" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getIdentity" name="getIdentity" assertions="1" time="0.017">
+		<testcase classname="getIdentity" name="getIdentity" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getInfo" name="getInfo" assertions="3" time="0.018">
+		<testcase classname="getInfo" name="getInfo" assertions="3" time="0.007">
 		</testcase>
-		<testcase classname="getRealDirectory" name="getRealDirectory" assertions="1" time="0.017">
+		<testcase classname="getRealDirectory" name="getRealDirectory" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getRequirePath" name="getRequirePath" assertions="1" time="0.017">
+		<testcase classname="getRequirePath" name="getRequirePath" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getSaveDirectory" name="getSaveDirectory" assertions="1" time="0.017">
+		<testcase classname="getSaveDirectory" name="getSaveDirectory" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getSource" name="getSource" assertions="0" time="0.017">
+		<testcase classname="getSource" name="getSource" assertions="0" time="0.002">
 			<skipped message="used internally" />
 		</testcase>
-		<testcase classname="getSourceBaseDirectory" name="getSourceBaseDirectory" assertions="1" time="0.017">
+		<testcase classname="getSourceBaseDirectory" name="getSourceBaseDirectory" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getUserDirectory" name="getUserDirectory" assertions="1" time="0.018">
+		<testcase classname="getUserDirectory" name="getUserDirectory" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getWorkingDirectory" name="getWorkingDirectory" assertions="1" time="0.021">
+		<testcase classname="getWorkingDirectory" name="getWorkingDirectory" assertions="1" time="0.007">
 		</testcase>
-		<testcase classname="isFused" name="isFused" assertions="1" time="0.014">
+		<testcase classname="isFused" name="isFused" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="lines" name="lines" assertions="6" time="0.017">
+		<testcase classname="lines" name="lines" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="load" name="load" assertions="4" time="0.018">
+		<testcase classname="load" name="load" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="mount" name="mount" assertions="5" time="0.018">
+		<testcase classname="mount" name="mount" assertions="5" time="0.002">
 		</testcase>
-		<testcase classname="newFileData" name="newFileData" assertions="1" time="0.018">
+		<testcase classname="newFileData" name="newFileData" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="openFile" name="openFile" assertions="4" time="0.016">
+		<testcase classname="openFile" name="openFile" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="read" name="read" assertions="6" time="0.016">
+		<testcase classname="read" name="read" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="remove" name="remove" assertions="5" time="0.017">
+		<testcase classname="remove" name="remove" assertions="5" time="0.002">
 		</testcase>
-		<testcase classname="setCRequirePath" name="setCRequirePath" assertions="1" time="0.016">
+		<testcase classname="setCRequirePath" name="setCRequirePath" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="setIdentity" name="setIdentity" assertions="1" time="0.016">
+		<testcase classname="setIdentity" name="setIdentity" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="setRequirePath" name="setRequirePath" assertions="1" time="0.015">
+		<testcase classname="setRequirePath" name="setRequirePath" assertions="1" time="0.006">
 		</testcase>
-		<testcase classname="setSource" name="setSource" assertions="0" time="0.017">
+		<testcase classname="setSource" name="setSource" assertions="0" time="0.001">
 			<skipped message="used internally" />
 		</testcase>
-		<testcase classname="unmount" name="unmount" assertions="2" time="0.018">
+		<testcase classname="unmount" name="unmount" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="write" name="write" assertions="3" time="0.019">
+		<testcase classname="write" name="write" assertions="3" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.font" tests="6" failures="1" skipped="0" time="0.121">
-		<testcase classname="GlyphData" name="GlyphData" assertions="19" time="0.016">
+	<testsuite name="love.font" tests="6" failures="1" skipped="0" time="0.015">
+		<testcase classname="GlyphData" name="GlyphData" assertions="19" time="0.002">
 			<failure message="assert 8 [check glyph number] expected '97' got '0'">assert 8 [check glyph number] expected '97' got '0'</failure>
 		</testcase>
-		<testcase classname="Rasterizer" name="Rasterizer" assertions="13" time="0.016">
+		<testcase classname="Rasterizer" name="Rasterizer" assertions="13" time="0.002">
 		</testcase>
-		<testcase classname="newBMFontRasterizer" name="newBMFontRasterizer" assertions="3" time="0.017">
+		<testcase classname="newBMFontRasterizer" name="newBMFontRasterizer" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newGlyphData" name="newGlyphData" assertions="3" time="0.018">
+		<testcase classname="newGlyphData" name="newGlyphData" assertions="3" time="0.006">
 		</testcase>
-		<testcase classname="newImageRasterizer" name="newImageRasterizer" assertions="3" time="0.018">
+		<testcase classname="newImageRasterizer" name="newImageRasterizer" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newRasterizer" name="newRasterizer" assertions="3" time="0.018">
+		<testcase classname="newRasterizer" name="newRasterizer" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newTrueTypeRasterizer" name="newTrueTypeRasterizer" assertions="6" time="0.018">
+		<testcase classname="newTrueTypeRasterizer" name="newTrueTypeRasterizer" assertions="6" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.graphics" tests="98" failures="1" skipped="6" time="2.029">
-		<testcase classname="Canvas" name="Canvas" assertions="44" time="0.018">
-			<failure message="assert 44 [check depth sample mode set] expected 'equal' got 'nil'">assert 44 [check depth sample mode set] expected 'equal' got 'nil'</failure>
+	<testsuite name="love.graphics" tests="99" failures="0" skipped="6" time="0.294">
+		<testcase classname="Canvas" name="Canvas" assertions="44" time="0.003">
 		</testcase>
-		<testcase classname="Font" name="Font" assertions="90" time="0.023">
+		<testcase classname="Font" name="Font" assertions="90" time="0.004">
 		</testcase>
-		<testcase classname="Image" name="Image" assertions="40" time="0.020">
+		<testcase classname="Image" name="Image" assertions="40" time="0.006">
 		</testcase>
-		<testcase classname="Mesh" name="Mesh" assertions="0" time="0.018">
+		<testcase classname="Mesh" name="Mesh" assertions="0" time="0.001">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="ParticleSystem" name="ParticleSystem" assertions="0" time="0.017">
+		<testcase classname="ParticleSystem" name="ParticleSystem" assertions="0" time="0.001">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Quad" name="Quad" assertions="47" time="0.020">
+		<testcase classname="Quad" name="Quad" assertions="47" time="0.003">
 		</testcase>
-		<testcase classname="Shader" name="Shader" assertions="39" time="0.029">
+		<testcase classname="Shader" name="Shader" assertions="39" time="0.013">
 		</testcase>
-		<testcase classname="SpriteBatch" name="SpriteBatch" assertions="0" time="0.016">
+		<testcase classname="SpriteBatch" name="SpriteBatch" assertions="0" time="0.001">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Text" name="Text" assertions="90" time="0.014">
+		<testcase classname="Text" name="Text" assertions="90" time="0.003">
 		</testcase>
-		<testcase classname="Video" name="Video" assertions="0" time="0.015">
+		<testcase classname="Video" name="Video" assertions="0" time="0.001">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="applyTransform" name="applyTransform" assertions="4" time="0.018">
+		<testcase classname="applyTransform" name="applyTransform" assertions="4" time="0.004">
 		</testcase>
-		<testcase classname="arc" name="arc" assertions="264" time="0.026">
+		<testcase classname="arc" name="arc" assertions="264" time="0.003">
 		</testcase>
-		<testcase classname="captureScreenshot" name="captureScreenshot" assertions="1" time="0.183">
+		<testcase classname="captureScreenshot" name="captureScreenshot" assertions="1" time="0.020">
 		</testcase>
-		<testcase classname="circle" name="circle" assertions="192" time="0.023">
+		<testcase classname="circle" name="circle" assertions="192" time="0.005">
 		</testcase>
-		<testcase classname="clear" name="clear" assertions="20" time="0.018">
+		<testcase classname="clear" name="clear" assertions="20" time="0.002">
 		</testcase>
-		<testcase classname="discard" name="discard" assertions="0" time="0.017">
+		<testcase classname="discard" name="discard" assertions="0" time="0.001">
 			<skipped message="cant test this worked" />
 		</testcase>
-		<testcase classname="draw" name="draw" assertions="112" time="0.034">
+		<testcase classname="draw" name="draw" assertions="112" time="0.002">
 		</testcase>
-		<testcase classname="drawInstanced" name="drawInstanced" assertions="0" time="0.014">
+		<testcase classname="drawInstanced" name="drawInstanced" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="drawLayer" name="drawLayer" assertions="144" time="0.017">
+		<testcase classname="drawLayer" name="drawLayer" assertions="144" time="0.003">
 		</testcase>
-		<testcase classname="ellipse" name="ellipse" assertions="80" time="0.018">
+		<testcase classname="ellipse" name="ellipse" assertions="80" time="0.002">
 		</testcase>
-		<testcase classname="flushBatch" name="flushBatch" assertions="1" time="0.016">
+		<testcase classname="flushBatch" name="flushBatch" assertions="1" time="0.004">
 		</testcase>
-		<testcase classname="getBackgroundColor" name="getBackgroundColor" assertions="8" time="0.016">
+		<testcase classname="getBackgroundColor" name="getBackgroundColor" assertions="8" time="0.001">
 		</testcase>
-		<testcase classname="getBlendMode" name="getBlendMode" assertions="4" time="0.016">
+		<testcase classname="getBlendMode" name="getBlendMode" assertions="4" time="0.001">
 		</testcase>
-		<testcase classname="getCanvas" name="getCanvas" assertions="4" time="0.016">
+		<testcase classname="getCanvas" name="getCanvas" assertions="4" time="0.001">
 		</testcase>
-		<testcase classname="getColor" name="getColor" assertions="8" time="0.016">
+		<testcase classname="getColor" name="getColor" assertions="8" time="0.001">
 		</testcase>
-		<testcase classname="getColorMask" name="getColorMask" assertions="8" time="0.015">
+		<testcase classname="getColorMask" name="getColorMask" assertions="8" time="0.001">
 		</testcase>
-		<testcase classname="getDPIScale" name="getDPIScale" assertions="1" time="0.016">
+		<testcase classname="getDPIScale" name="getDPIScale" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getDefaultFilter" name="getDefaultFilter" assertions="3" time="0.016">
+		<testcase classname="getDefaultFilter" name="getDefaultFilter" assertions="3" time="0.001">
 		</testcase>
-		<testcase classname="getDepthMode" name="getDepthMode" assertions="2" time="0.016">
+		<testcase classname="getDepthMode" name="getDepthMode" assertions="2" time="0.004">
 		</testcase>
-		<testcase classname="getDimensions" name="getDimensions" assertions="2" time="0.016">
+		<testcase classname="getDimensions" name="getDimensions" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getFont" name="getFont" assertions="3" time="0.016">
+		<testcase classname="getFont" name="getFont" assertions="3" time="0.001">
 		</testcase>
-		<testcase classname="getFrontFaceWinding" name="getFrontFaceWinding" assertions="2" time="0.016">
+		<testcase classname="getFrontFaceWinding" name="getFrontFaceWinding" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getHeight" name="getHeight" assertions="1" time="0.015">
+		<testcase classname="getHeight" name="getHeight" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getLineJoin" name="getLineJoin" assertions="2" time="0.016">
+		<testcase classname="getLineJoin" name="getLineJoin" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getLineStyle" name="getLineStyle" assertions="2" time="0.025">
+		<testcase classname="getLineStyle" name="getLineStyle" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getLineWidth" name="getLineWidth" assertions="2" time="0.018">
+		<testcase classname="getLineWidth" name="getLineWidth" assertions="2" time="0.001">
 		</testcase>
-		<testcase classname="getMeshCullMode" name="getMeshCullMode" assertions="2" time="0.016">
+		<testcase classname="getMeshCullMode" name="getMeshCullMode" assertions="2" time="0.001">
 		</testcase>
-		<testcase classname="getPixelDimensions" name="getPixelDimensions" assertions="2" time="0.016">
+		<testcase classname="getPixelDimensions" name="getPixelDimensions" assertions="2" time="0.005">
 		</testcase>
-		<testcase classname="getPixelHeight" name="getPixelHeight" assertions="1" time="0.024">
+		<testcase classname="getPixelHeight" name="getPixelHeight" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getPixelWidth" name="getPixelWidth" assertions="1" time="0.013">
+		<testcase classname="getPixelWidth" name="getPixelWidth" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="getPointSize" name="getPointSize" assertions="2" time="0.016">
+		<testcase classname="getPointSize" name="getPointSize" assertions="2" time="0.001">
 		</testcase>
-		<testcase classname="getRendererInfo" name="getRendererInfo" assertions="4" time="0.016">
+		<testcase classname="getRendererInfo" name="getRendererInfo" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="getScissor" name="getScissor" assertions="8" time="0.016">
+		<testcase classname="getScissor" name="getScissor" assertions="8" time="0.002">
 		</testcase>
-		<testcase classname="getShader" name="getShader" assertions="1" time="0.017">
+		<testcase classname="getShader" name="getShader" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getStackDepth" name="getStackDepth" assertions="4" time="0.016">
+		<testcase classname="getStackDepth" name="getStackDepth" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="getStats" name="getStats" assertions="7" time="0.015">
+		<testcase classname="getStats" name="getStats" assertions="7" time="0.002">
 		</testcase>
-		<testcase classname="getStencilMode" name="getStencilMode" assertions="6" time="0.016">
+		<testcase classname="getStencilMode" name="getStencilMode" assertions="6" time="0.001">
 		</testcase>
-		<testcase classname="getSupported" name="getSupported" assertions="17" time="0.015">
+		<testcase classname="getSupported" name="getSupported" assertions="17" time="0.002">
 		</testcase>
-		<testcase classname="getSystemLimits" name="getSystemLimits" assertions="13" time="0.015">
+		<testcase classname="getSystemLimits" name="getSystemLimits" assertions="13" time="0.005">
 		</testcase>
-		<testcase classname="getTextureFormats" name="getTextureFormats" assertions="79" time="0.017">
+		<testcase classname="getTextureFormats" name="getTextureFormats" assertions="79" time="0.002">
 		</testcase>
-		<testcase classname="getTextureTypes" name="getTextureTypes" assertions="4" time="0.016">
+		<testcase classname="getTextureTypes" name="getTextureTypes" assertions="4" time="0.001">
 		</testcase>
-		<testcase classname="getWidth" name="getWidth" assertions="1" time="0.015">
+		<testcase classname="getWidth" name="getWidth" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="intersectScissor" name="intersectScissor" assertions="20" time="0.017">
+		<testcase classname="intersectScissor" name="intersectScissor" assertions="20" time="0.002">
 		</testcase>
-		<testcase classname="inverseTransformPoint" name="inverseTransformPoint" assertions="4" time="0.016">
+		<testcase classname="inverseTransformPoint" name="inverseTransformPoint" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="isActive" name="isActive" assertions="1" time="0.016">
+		<testcase classname="isActive" name="isActive" assertions="1" time="0.001">
 		</testcase>
-		<testcase classname="isGammaCorrect" name="isGammaCorrect" assertions="1" time="0.015">
+		<testcase classname="isGammaCorrect" name="isGammaCorrect" assertions="1" time="0.006">
 		</testcase>
-		<testcase classname="isWireframe" name="isWireframe" assertions="2" time="0.015">
+		<testcase classname="isWireframe" name="isWireframe" assertions="2" time="0.001">
 		</testcase>
-		<testcase classname="line" name="line" assertions="64" time="0.017">
+		<testcase classname="line" name="line" assertions="64" time="0.003">
 		</testcase>
-		<testcase classname="newArrayImage" name="newArrayImage" assertions="3" time="0.016">
+		<testcase classname="newArrayImage" name="newArrayImage" assertions="3" time="0.007">
 		</testcase>
-		<testcase classname="newCanvas" name="newCanvas" assertions="6" time="0.015">
+		<testcase classname="newCanvas" name="newCanvas" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="newCubeImage" name="newCubeImage" assertions="3" time="0.017">
+		<testcase classname="newCubeImage" name="newCubeImage" assertions="3" time="0.003">
 		</testcase>
-		<testcase classname="newFont" name="newFont" assertions="6" time="0.017">
+		<testcase classname="newFont" name="newFont" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="newImage" name="newImage" assertions="3" time="0.017">
+		<testcase classname="newImage" name="newImage" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newImageFont" name="newImageFont" assertions="3" time="0.016">
+		<testcase classname="newImageFont" name="newImageFont" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newMesh" name="newMesh" assertions="3" time="0.016">
+		<testcase classname="newMesh" name="newMesh" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newParticleSystem" name="newParticleSystem" assertions="3" time="0.017">
+		<testcase classname="newParticleSystem" name="newParticleSystem" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newQuad" name="newQuad" assertions="3" time="0.016">
+		<testcase classname="newQuad" name="newQuad" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newShader" name="newShader" assertions="3" time="0.022">
+		<testcase classname="newShader" name="newShader" assertions="3" time="0.009">
 		</testcase>
-		<testcase classname="newSpriteBatch" name="newSpriteBatch" assertions="3" time="0.017">
+		<testcase classname="newSpriteBatch" name="newSpriteBatch" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newTextBatch" name="newTextBatch" assertions="3" time="0.011">
+		<testcase classname="newTextBatch" name="newTextBatch" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newVideo" name="newVideo" assertions="3" time="0.019">
+		<testcase classname="newVideo" name="newVideo" assertions="3" time="0.004">
 		</testcase>
-		<testcase classname="newVolumeImage" name="newVolumeImage" assertions="3" time="0.018">
+		<testcase classname="newVolumeImage" name="newVolumeImage" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="origin" name="origin" assertions="4" time="0.018">
+		<testcase classname="origin" name="origin" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="points" name="points" assertions="48" time="0.020">
+		<testcase classname="points" name="points" assertions="48" time="0.003">
 		</testcase>
-		<testcase classname="polygon" name="polygon" assertions="56" time="0.021">
+		<testcase classname="polygon" name="polygon" assertions="56" time="0.002">
 		</testcase>
-		<testcase classname="pop" name="pop" assertions="4" time="0.018">
+		<testcase classname="pop" name="pop" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="print" name="print" assertions="148" time="0.020">
+		<testcase classname="print" name="print" assertions="148" time="0.002">
 		</testcase>
-		<testcase classname="printf" name="printf" assertions="180" time="0.020">
+		<testcase classname="printf" name="printf" assertions="180" time="0.002">
 		</testcase>
-		<testcase classname="push" name="push" assertions="4" time="0.018">
+		<testcase classname="push" name="push" assertions="4" time="0.007">
 		</testcase>
-		<testcase classname="rectangle" name="rectangle" assertions="116" time="0.020">
+		<testcase classname="rectangle" name="rectangle" assertions="116" time="0.002">
 		</testcase>
-		<testcase classname="replaceTransform" name="replaceTransform" assertions="4" time="0.018">
+		<testcase classname="replaceTransform" name="replaceTransform" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="reset" name="reset" assertions="3" time="0.018">
+		<testcase classname="reset" name="reset" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="rotate" name="rotate" assertions="16" time="0.018">
+		<testcase classname="rotate" name="rotate" assertions="16" time="0.002">
 		</testcase>
-		<testcase classname="scale" name="scale" assertions="16" time="0.017">
+		<testcase classname="scale" name="scale" assertions="16" time="0.002">
 		</testcase>
-		<testcase classname="setBackgroundColor" name="setBackgroundColor" assertions="4" time="0.017">
+		<testcase classname="setBackgroundColor" name="setBackgroundColor" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="setBlendMode" name="setBlendMode" assertions="16" time="0.019">
+		<testcase classname="setBlendMode" name="setBlendMode" assertions="16" time="0.003">
 		</testcase>
-		<testcase classname="setCanvas" name="setCanvas" assertions="19" time="0.018">
+		<testcase classname="setCanvas" name="setCanvas" assertions="19" time="0.002">
 		</testcase>
-		<testcase classname="setColor" name="setColor" assertions="68" time="0.018">
+		<testcase classname="setColor" name="setColor" assertions="68" time="0.002">
 		</testcase>
-		<testcase classname="setColorMask" name="setColorMask" assertions="20" time="0.019">
+		<testcase classname="setColorMask" name="setColorMask" assertions="20" time="0.002">
 		</testcase>
-		<testcase classname="setDefaultFilter" name="setDefaultFilter" assertions="3" time="0.017">
+		<testcase classname="setDefaultFilter" name="setDefaultFilter" assertions="3" time="0.001">
 		</testcase>
-		<testcase classname="setDepthMode" name="setDepthMode" assertions="8" time="0.017">
+		<testcase classname="setDepthMode" name="setDepthMode" assertions="8" time="0.002">
 		</testcase>
-		<testcase classname="setFont" name="setFont" assertions="40" time="0.019">
+		<testcase classname="setFont" name="setFont" assertions="40" time="0.003">
 		</testcase>
-		<testcase classname="setFrontFaceWinding" name="setFrontFaceWinding" assertions="2" time="0.017">
+		<testcase classname="setFrontFaceWinding" name="setFrontFaceWinding" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="setLineJoin" name="setLineJoin" assertions="16" time="0.018">
+		<testcase classname="setLineJoin" name="setLineJoin" assertions="16" time="0.003">
 		</testcase>
-		<testcase classname="setLineStyle" name="setLineStyle" assertions="24" time="0.018">
+		<testcase classname="setLineStyle" name="setLineStyle" assertions="24" time="0.002">
 		</testcase>
-		<testcase classname="setLineWidth" name="setLineWidth" assertions="72" time="0.019">
+		<testcase classname="setLineWidth" name="setLineWidth" assertions="72" time="0.002">
 		</testcase>
-		<testcase classname="setMeshCullMode" name="setMeshCullMode" assertions="3" time="0.018">
+		<testcase classname="setMeshCullMode" name="setMeshCullMode" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="setScissor" name="setScissor" assertions="32" time="0.020">
+		<testcase classname="setScissor" name="setScissor" assertions="32" time="0.002">
 		</testcase>
-		<testcase classname="setShader" name="setShader" assertions="16" time="0.023">
+		<testcase classname="setShader" name="setShader" assertions="16" time="0.010">
 		</testcase>
-		<testcase classname="setStencilTest" name="setStencilTest" assertions="32" time="0.019">
+		<testcase classname="setStencilTest" name="setStencilTest" assertions="32" time="0.003">
 		</testcase>
-		<testcase classname="setWireframe" name="setWireframe" assertions="28" time="0.018">
+		<testcase classname="setWireframe" name="setWireframe" assertions="28" time="0.002">
 		</testcase>
-		<testcase classname="shear" name="shear" assertions="32" time="0.019">
+		<testcase classname="shear" name="shear" assertions="32" time="0.003">
 		</testcase>
-		<testcase classname="transformPoint" name="transformPoint" assertions="4" time="0.018">
+		<testcase classname="transformPoint" name="transformPoint" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="translate" name="translate" assertions="16" time="0.025">
+		<testcase classname="translate" name="translate" assertions="16" time="0.007">
 		</testcase>
-		<testcase classname="validateShader" name="validateShader" assertions="2" time="0.016">
+		<testcase classname="validateShader" name="validateShader" assertions="2" time="0.005">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.image" tests="5" failures="0" skipped="0" time="0.087">
-		<testcase classname="CompressedImageData" name="CompressedImageData" assertions="11" time="0.018">
+	<testsuite name="love.image" tests="5" failures="0" skipped="0" time="0.011">
+		<testcase classname="CompressedImageData" name="CompressedImageData" assertions="11" time="0.002">
 		</testcase>
-		<testcase classname="ImageData" name="ImageData" assertions="14" time="0.017">
+		<testcase classname="ImageData" name="ImageData" assertions="14" time="0.003">
 		</testcase>
-		<testcase classname="isCompressed" name="isCompressed" assertions="1" time="0.017">
+		<testcase classname="isCompressed" name="isCompressed" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="newCompressedData" name="newCompressedData" assertions="3" time="0.019">
+		<testcase classname="newCompressedData" name="newCompressedData" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newImageData" name="newImageData" assertions="6" time="0.017">
+		<testcase classname="newImageData" name="newImageData" assertions="6" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.math" tests="20" failures="0" skipped="0" time="0.321">
-		<testcase classname="BezierCurve" name="BezierCurve" assertions="31" time="0.018">
+	<testsuite name="love.math" tests="20" failures="0" skipped="0" time="0.070">
+		<testcase classname="BezierCurve" name="BezierCurve" assertions="31" time="0.007">
 		</testcase>
-		<testcase classname="RandomGenerator" name="RandomGenerator" assertions="10" time="0.017">
+		<testcase classname="RandomGenerator" name="RandomGenerator" assertions="10" time="0.002">
 		</testcase>
-		<testcase classname="Transform" name="Transform" assertions="14" time="0.017">
+		<testcase classname="Transform" name="Transform" assertions="14" time="0.002">
 		</testcase>
-		<testcase classname="colorFromBytes" name="colorFromBytes" assertions="12" time="0.017">
+		<testcase classname="colorFromBytes" name="colorFromBytes" assertions="12" time="0.007">
 		</testcase>
-		<testcase classname="colorToBytes" name="colorToBytes" assertions="12" time="0.016">
+		<testcase classname="colorToBytes" name="colorToBytes" assertions="12" time="0.002">
 		</testcase>
-		<testcase classname="gammaToLinear" name="gammaToLinear" assertions="3" time="0.016">
+		<testcase classname="gammaToLinear" name="gammaToLinear" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="getRandomSeed" name="getRandomSeed" assertions="2" time="0.016">
+		<testcase classname="getRandomSeed" name="getRandomSeed" assertions="2" time="0.006">
 		</testcase>
-		<testcase classname="getRandomState" name="getRandomState" assertions="1" time="0.016">
+		<testcase classname="getRandomState" name="getRandomState" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="isConvex" name="isConvex" assertions="2" time="0.016">
+		<testcase classname="isConvex" name="isConvex" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="linearToGamma" name="linearToGamma" assertions="3" time="0.017">
+		<testcase classname="linearToGamma" name="linearToGamma" assertions="3" time="0.007">
 		</testcase>
-		<testcase classname="newBezierCurve" name="newBezierCurve" assertions="3" time="0.016">
+		<testcase classname="newBezierCurve" name="newBezierCurve" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newRandomGenerator" name="newRandomGenerator" assertions="3" time="0.016">
+		<testcase classname="newRandomGenerator" name="newRandomGenerator" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newTransform" name="newTransform" assertions="3" time="0.016">
+		<testcase classname="newTransform" name="newTransform" assertions="3" time="0.006">
 		</testcase>
-		<testcase classname="perlinNoise" name="perlinNoise" assertions="4" time="0.015">
+		<testcase classname="perlinNoise" name="perlinNoise" assertions="4" time="0.002">
 		</testcase>
-		<testcase classname="random" name="random" assertions="10" time="0.016">
+		<testcase classname="random" name="random" assertions="10" time="0.002">
 		</testcase>
-		<testcase classname="randomNormal" name="randomNormal" assertions="1" time="0.014">
+		<testcase classname="randomNormal" name="randomNormal" assertions="1" time="0.006">
 		</testcase>
-		<testcase classname="setRandomSeed" name="setRandomSeed" assertions="2" time="0.015">
+		<testcase classname="setRandomSeed" name="setRandomSeed" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="setRandomState" name="setRandomState" assertions="1" time="0.015">
+		<testcase classname="setRandomState" name="setRandomState" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="simplexNoise" name="simplexNoise" assertions="4" time="0.016">
+		<testcase classname="simplexNoise" name="simplexNoise" assertions="4" time="0.007">
 		</testcase>
-		<testcase classname="triangulate" name="triangulate" assertions="2" time="0.016">
+		<testcase classname="triangulate" name="triangulate" assertions="2" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.physics" tests="22" failures="0" skipped="6" time="0.468">
-		<testcase classname="Body" name="Body" assertions="0" time="0.018">
+	<testsuite name="love.physics" tests="22" failures="0" skipped="6" time="0.071">
+		<testcase classname="Body" name="Body" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Contact" name="Contact" assertions="0" time="0.017">
+		<testcase classname="Contact" name="Contact" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Fixture" name="Fixture" assertions="0" time="0.026">
+		<testcase classname="Fixture" name="Fixture" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Joint" name="Joint" assertions="0" time="0.017">
+		<testcase classname="Joint" name="Joint" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="Shape" name="Shape" assertions="0" time="0.017">
+		<testcase classname="Shape" name="Shape" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="World" name="World" assertions="0" time="0.017">
+		<testcase classname="World" name="World" assertions="0" time="0.002">
 			<skipped message="test class needs writing" />
 		</testcase>
-		<testcase classname="getDistance" name="getDistance" assertions="1" time="0.017">
+		<testcase classname="getDistance" name="getDistance" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getMeter" name="getMeter" assertions="1" time="0.015">
+		<testcase classname="getMeter" name="getMeter" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="newBody" name="newBody" assertions="3" time="0.016">
+		<testcase classname="newBody" name="newBody" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newChainShape" name="newChainShape" assertions="3" time="0.016">
+		<testcase classname="newChainShape" name="newChainShape" assertions="3" time="0.008">
 		</testcase>
-		<testcase classname="newCircleShape" name="newCircleShape" assertions="3" time="0.017">
+		<testcase classname="newCircleShape" name="newCircleShape" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newDistanceJoint" name="newDistanceJoint" assertions="3" time="0.016">
+		<testcase classname="newDistanceJoint" name="newDistanceJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newEdgeShape" name="newEdgeShape" assertions="3" time="0.017">
+		<testcase classname="newEdgeShape" name="newEdgeShape" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newFixture" name="newFixture" assertions="3" time="0.016">
+		<testcase classname="newFixture" name="newFixture" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newFrictionJoint" name="newFrictionJoint" assertions="3" time="0.016">
+		<testcase classname="newFrictionJoint" name="newFrictionJoint" assertions="3" time="0.008">
 		</testcase>
-		<testcase classname="newGearJoint" name="newGearJoint" assertions="3" time="0.016">
+		<testcase classname="newGearJoint" name="newGearJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newMotorJoint" name="newMotorJoint" assertions="3" time="0.016">
+		<testcase classname="newMotorJoint" name="newMotorJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newMouseJoint" name="newMouseJoint" assertions="3" time="0.018">
+		<testcase classname="newMouseJoint" name="newMouseJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newPolygonShape" name="newPolygonShape" assertions="3" time="0.016">
+		<testcase classname="newPolygonShape" name="newPolygonShape" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newPrismaticJoint" name="newPrismaticJoint" assertions="3" time="0.017">
+		<testcase classname="newPrismaticJoint" name="newPrismaticJoint" assertions="3" time="0.005">
 		</testcase>
-		<testcase classname="newPulleyJoint" name="newPulleyJoint" assertions="3" time="0.016">
+		<testcase classname="newPulleyJoint" name="newPulleyJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newRectangleShape" name="newRectangleShape" assertions="6" time="0.017">
+		<testcase classname="newRectangleShape" name="newRectangleShape" assertions="6" time="0.002">
 		</testcase>
-		<testcase classname="newRevoluteJoint" name="newRevoluteJoint" assertions="3" time="0.015">
+		<testcase classname="newRevoluteJoint" name="newRevoluteJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newRopeJoint" name="newRopeJoint" assertions="3" time="0.016">
+		<testcase classname="newRopeJoint" name="newRopeJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newWeldJoint" name="newWeldJoint" assertions="3" time="0.015">
+		<testcase classname="newWeldJoint" name="newWeldJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newWheelJoint" name="newWheelJoint" assertions="3" time="0.016">
+		<testcase classname="newWheelJoint" name="newWheelJoint" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newWorld" name="newWorld" assertions="3" time="0.014">
+		<testcase classname="newWorld" name="newWorld" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="setMeter" name="setMeter" assertions="2" time="0.015">
+		<testcase classname="setMeter" name="setMeter" assertions="2" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.sound" tests="4" failures="0" skipped="0" time="0.068">
-		<testcase classname="Decoder" name="Decoder" assertions="14" time="0.018">
+	<testsuite name="love.sound" tests="4" failures="0" skipped="0" time="0.015">
+		<testcase classname="Decoder" name="Decoder" assertions="14" time="0.006">
 		</testcase>
-		<testcase classname="SoundData" name="SoundData" assertions="20" time="0.017">
+		<testcase classname="SoundData" name="SoundData" assertions="20" time="0.003">
 		</testcase>
-		<testcase classname="newDecoder" name="newDecoder" assertions="3" time="0.016">
+		<testcase classname="newDecoder" name="newDecoder" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newSoundData" name="newSoundData" assertions="6" time="0.017">
+		<testcase classname="newSoundData" name="newSoundData" assertions="6" time="0.004">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.system" tests="6" failures="0" skipped="2" time="0.148">
-		<testcase classname="getClipboardText" name="getClipboardText" assertions="1" time="0.019">
+	<testsuite name="love.system" tests="6" failures="0" skipped="2" time="0.026">
+		<testcase classname="getClipboardText" name="getClipboardText" assertions="1" time="0.003">
 		</testcase>
-		<testcase classname="getOS" name="getOS" assertions="1" time="0.017">
+		<testcase classname="getOS" name="getOS" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getPowerInfo" name="getPowerInfo" assertions="1" time="0.017">
+		<testcase classname="getPowerInfo" name="getPowerInfo" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getProcessorCount" name="getProcessorCount" assertions="1" time="0.016">
+		<testcase classname="getProcessorCount" name="getProcessorCount" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="hasBackgroundMusic" name="hasBackgroundMusic" assertions="1" time="0.029">
+		<testcase classname="hasBackgroundMusic" name="hasBackgroundMusic" assertions="1" time="0.005">
 		</testcase>
-		<testcase classname="openURL" name="openURL" assertions="0" time="0.016">
+		<testcase classname="openURL" name="openURL" assertions="0" time="0.002">
 			<skipped message="cant test this worked" />
 		</testcase>
-		<testcase classname="setClipboardText" name="setClipboardText" assertions="1" time="0.017">
+		<testcase classname="setClipboardText" name="setClipboardText" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="vibrate" name="vibrate" assertions="0" time="0.016">
+		<testcase classname="vibrate" name="vibrate" assertions="0" time="0.007">
 			<skipped message="cant test this worked" />
 		</testcase>
 	</testsuite>
-	<testsuite name="love.thread" tests="5" failures="0" skipped="0" time="0.376">
-		<testcase classname="Channel" name="Channel" assertions="10" time="0.230">
+	<testsuite name="love.thread" tests="5" failures="0" skipped="0" time="0.317">
+		<testcase classname="Channel" name="Channel" assertions="10" time="0.215">
 		</testcase>
-		<testcase classname="Thread" name="Thread" assertions="7" time="0.093">
+		<testcase classname="Thread" name="Thread" assertions="7" time="0.092">
 		</testcase>
-		<testcase classname="getChannel" name="getChannel" assertions="3" time="0.018">
+		<testcase classname="getChannel" name="getChannel" assertions="3" time="0.002">
 		</testcase>
-		<testcase classname="newChannel" name="newChannel" assertions="3" time="0.017">
+		<testcase classname="newChannel" name="newChannel" assertions="3" time="0.006">
 		</testcase>
-		<testcase classname="newThread" name="newThread" assertions="3" time="0.018">
+		<testcase classname="newThread" name="newThread" assertions="3" time="0.002">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.timer" tests="6" failures="0" skipped="0" time="2.082">
-		<testcase classname="getAverageDelta" name="getAverageDelta" assertions="1" time="0.017">
+	<testsuite name="love.timer" tests="6" failures="0" skipped="0" time="2.021">
+		<testcase classname="getAverageDelta" name="getAverageDelta" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getDelta" name="getDelta" assertions="1" time="0.016">
+		<testcase classname="getDelta" name="getDelta" assertions="1" time="0.006">
 		</testcase>
-		<testcase classname="getFPS" name="getFPS" assertions="1" time="0.016">
+		<testcase classname="getFPS" name="getFPS" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getTime" name="getTime" assertions="1" time="1.017">
+		<testcase classname="getTime" name="getTime" assertions="1" time="1.003">
 		</testcase>
-		<testcase classname="sleep" name="sleep" assertions="1" time="1.009">
+		<testcase classname="sleep" name="sleep" assertions="1" time="1.003">
 		</testcase>
 		<testcase classname="step" name="step" assertions="1" time="0.005">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.video" tests="2" failures="0" skipped="0" time="0.039">
-		<testcase classname="VideoStream" name="VideoStream" assertions="9" time="0.020">
+	<testsuite name="love.video" tests="2" failures="0" skipped="0" time="0.012">
+		<testcase classname="VideoStream" name="VideoStream" assertions="9" time="0.007">
 		</testcase>
-		<testcase classname="newVideoStream" name="newVideoStream" assertions="3" time="0.020">
+		<testcase classname="newVideoStream" name="newVideoStream" assertions="3" time="0.005">
 		</testcase>
 	</testsuite>
-	<testsuite name="love.window" tests="34" failures="0" skipped="2" time="5.855">
-		<testcase classname="close" name="close" assertions="2" time="0.052">
+	<testsuite name="love.window" tests="34" failures="0" skipped="2" time="5.955">
+		<testcase classname="close" name="close" assertions="2" time="0.034">
 		</testcase>
 		<testcase classname="fromPixels" name="fromPixels" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getDPIScale" name="getDPIScale" assertions="1" time="0.017">
+		<testcase classname="getDPIScale" name="getDPIScale" assertions="1" time="0.003">
 		</testcase>
-		<testcase classname="getDesktopDimensions" name="getDesktopDimensions" assertions="2" time="0.018">
+		<testcase classname="getDesktopDimensions" name="getDesktopDimensions" assertions="2" time="0.002">
 		</testcase>
-		<testcase classname="getDisplayCount" name="getDisplayCount" assertions="1" time="0.017">
+		<testcase classname="getDisplayCount" name="getDisplayCount" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getDisplayName" name="getDisplayName" assertions="1" time="0.018">
+		<testcase classname="getDisplayName" name="getDisplayName" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="getDisplayOrientation" name="getDisplayOrientation" assertions="1" time="0.018">
+		<testcase classname="getDisplayOrientation" name="getDisplayOrientation" assertions="1" time="0.004">
 		</testcase>
-		<testcase classname="getFullscreen" name="getFullscreen" assertions="2" time="1.357">
+		<testcase classname="getFullscreen" name="getFullscreen" assertions="2" time="1.365">
 		</testcase>
-		<testcase classname="getFullscreenModes" name="getFullscreenModes" assertions="1" time="0.010">
+		<testcase classname="getFullscreenModes" name="getFullscreenModes" assertions="1" time="0.014">
 		</testcase>
 		<testcase classname="getIcon" name="getIcon" assertions="2" time="0.019">
 		</testcase>
-		<testcase classname="getMode" name="getMode" assertions="3" time="0.015">
+		<testcase classname="getMode" name="getMode" assertions="3" time="0.017">
 		</testcase>
 		<testcase classname="getPosition" name="getPosition" assertions="2" time="0.017">
 		</testcase>
-		<testcase classname="getSafeArea" name="getSafeArea" assertions="4" time="0.016">
+		<testcase classname="getSafeArea" name="getSafeArea" assertions="4" time="0.018">
 		</testcase>
-		<testcase classname="getTitle" name="getTitle" assertions="1" time="0.017">
+		<testcase classname="getTitle" name="getTitle" assertions="1" time="0.018">
 		</testcase>
-		<testcase classname="getVSync" name="getVSync" assertions="1" time="0.016">
+		<testcase classname="getVSync" name="getVSync" assertions="1" time="0.014">
 		</testcase>
-		<testcase classname="hasFocus" name="hasFocus" assertions="1" time="0.016">
+		<testcase classname="hasFocus" name="hasFocus" assertions="1" time="0.017">
 		</testcase>
-		<testcase classname="hasMouseFocus" name="hasMouseFocus" assertions="1" time="0.015">
+		<testcase classname="hasMouseFocus" name="hasMouseFocus" assertions="1" time="0.017">
 		</testcase>
 		<testcase classname="isDisplaySleepEnabled" name="isDisplaySleepEnabled" assertions="3" time="0.017">
 		</testcase>
-		<testcase classname="isMaximized" name="isMaximized" assertions="2" time="0.185">
+		<testcase classname="isMaximized" name="isMaximized" assertions="2" time="0.187">
 		</testcase>
-		<testcase classname="isMinimized" name="isMinimized" assertions="2" time="0.749">
+		<testcase classname="isMinimized" name="isMinimized" assertions="2" time="0.735">
 		</testcase>
-		<testcase classname="isOpen" name="isOpen" assertions="2" time="0.037">
+		<testcase classname="isOpen" name="isOpen" assertions="2" time="0.040">
 		</testcase>
-		<testcase classname="isVisible" name="isVisible" assertions="2" time="0.024">
+		<testcase classname="isVisible" name="isVisible" assertions="2" time="0.034">
 		</testcase>
-		<testcase classname="maximize" name="maximize" assertions="2" time="0.156">
+		<testcase classname="maximize" name="maximize" assertions="2" time="0.158">
 		</testcase>
-		<testcase classname="minimize" name="minimize" assertions="2" time="0.733">
+		<testcase classname="minimize" name="minimize" assertions="2" time="0.737">
 		</testcase>
 		<testcase classname="requestAttention" name="requestAttention" assertions="0" time="0.003">
 			<skipped message="cant test this worked" />
 		</testcase>
-		<testcase classname="restore" name="restore" assertions="1" time="0.880">
+		<testcase classname="restore" name="restore" assertions="1" time="0.882">
 		</testcase>
-		<testcase classname="setDisplaySleepEnabled" name="setDisplaySleepEnabled" assertions="2" time="0.020">
+		<testcase classname="setDisplaySleepEnabled" name="setDisplaySleepEnabled" assertions="2" time="0.018">
 		</testcase>
-		<testcase classname="setFullscreen" name="setFullscreen" assertions="2" time="1.151">
+		<testcase classname="setFullscreen" name="setFullscreen" assertions="2" time="1.313">
 		</testcase>
-		<testcase classname="setIcon" name="setIcon" assertions="1" time="0.007">
+		<testcase classname="setIcon" name="setIcon" assertions="1" time="0.017">
 		</testcase>
-		<testcase classname="setMode" name="setMode" assertions="4" time="0.023">
+		<testcase classname="setMode" name="setMode" assertions="4" time="0.022">
 		</testcase>
-		<testcase classname="setPosition" name="setPosition" assertions="2" time="0.181">
+		<testcase classname="setPosition" name="setPosition" assertions="2" time="0.179">
 		</testcase>
-		<testcase classname="setTitle" name="setTitle" assertions="1" time="0.018">
+		<testcase classname="setTitle" name="setTitle" assertions="1" time="0.021">
 		</testcase>
-		<testcase classname="setVSync" name="setVSync" assertions="1" time="0.015">
+		<testcase classname="setVSync" name="setVSync" assertions="1" time="0.017">
 		</testcase>
 		<testcase classname="showMessageBox" name="showMessageBox" assertions="0" time="0.003">
 			<skipped message="cant test this worked" />
 		</testcase>
 		<testcase classname="toPixels" name="toPixels" assertions="1" time="0.002">
 		</testcase>
-		<testcase classname="updateMode" name="updateMode" assertions="4" time="0.011">
+		<testcase classname="updateMode" name="updateMode" assertions="4" time="0.007">
 		</testcase>
 	</testsuite>
 </testsuites>

+ 19 - 8
testing/tests/graphics.lua

@@ -59,10 +59,13 @@ love.test.graphics.Canvas = function(test)
   local mode, sharpness = canvas:getMipmapFilter()
   test:assertEquals('linear', mode, 'check def minmap filter  mode')
   test:assertEquals(0, sharpness, 'check def minmap filter sharpness')
-  canvas:setMipmapFilter('nearest', 1)
-  mode, sharpness = canvas:getMipmapFilter()
-  test:assertEquals('nearest', mode, 'check changed minmap filter  mode')
-  test:assertEquals(1, sharpness, 'check changed minmap filter sharpness')
+  local name, version, vendor, device = love.graphics.getRendererInfo()
+  if string.match(name, 'OpenGL ES') == nil and string.match(name, 'Metal') == nil then
+    canvas:setMipmapFilter('nearest', 1)
+    mode, sharpness = canvas:getMipmapFilter()
+    test:assertEquals('nearest', mode, 'check changed minmap filter  mode')
+    test:assertEquals(1, sharpness, 'check changed minmap filter sharpness')
+  end
   test:assertGreaterEqual(2, canvas:getMipmapCount()) -- docs say no mipmaps should return 1
   test:assertEquals('auto', canvas:getMipmapMode())
   -- check rendering
@@ -204,10 +207,14 @@ love.test.graphics.Image = function(test)
   local mode, sharpness = image:getMipmapFilter()
   test:assertEquals('linear', mode, 'check def minmap filter  mode')
   test:assertEquals(0, sharpness, 'check def minmap filter sharpness')
-  image:setMipmapFilter('nearest', 1)
-  mode, sharpness = image:getMipmapFilter()
-  test:assertEquals('nearest', mode, 'check changed minmap filter  mode')
-  test:assertEquals(1, sharpness, 'check changed minmap filter sharpness')
+  
+  local name, version, vendor, device = love.graphics.getRendererInfo()
+  if string.match(name, 'OpenGL ES') == nil and string.match(name, 'Metal') == nil then
+    image:setMipmapFilter('nearest', 1)
+    mode, sharpness = image:getMipmapFilter()
+    test:assertEquals('nearest', mode, 'check changed minmap filter  mode')
+    test:assertEquals(1, sharpness, 'check changed minmap filter sharpness')
+  end
   test:assertGreaterEqual(2, image:getMipmapCount()) -- docs say no mipmaps should return 1
   -- check image properties
   test:assertEquals(false, image:isCompressed(), 'check not compressed')
@@ -1278,6 +1285,10 @@ love.test.graphics.reset = function(test)
   r, g, b, a = love.graphics.getColor()
   test:assertEquals(4, r+g+b+a, 'check color reset')
   test:assertEquals(nil, love.graphics.getCanvas(), 'check canvas reset')
+  love.graphics.setDefaultFilter("nearest", "nearest")
+  love.graphics.setLineStyle('rough')
+  love.graphics.setPointSize(1)
+  love.graphics.setLineWidth(1)
 end
 
 

Some files were not shown because too many files changed in this diff