Replacing errors with warns in non-critical areas

This commit is contained in:
Michael Freno
2025-11-17 01:56:02 -05:00
parent f4d514bf2e
commit e5e7b55709
25 changed files with 3596 additions and 313 deletions

View File

@@ -89,20 +89,33 @@ function TestUnitsParse:testParseZero()
end
function TestUnitsParse:testParseInvalidType()
luaunit.assertErrorMsgContains("Invalid unit value type", Units.parse, nil)
-- Now returns fallback value (0, "px") with warning instead of error
local value, unit = Units.parse(nil)
luaunit.assertEquals(value, 0)
luaunit.assertEquals(unit, "px")
end
function TestUnitsParse:testParseInvalidString()
luaunit.assertErrorMsgContains("Invalid unit format", Units.parse, "abc")
-- Now returns fallback value (0, "px") with warning instead of error
local value, unit = Units.parse("abc")
luaunit.assertEquals(value, 0)
luaunit.assertEquals(unit, "px")
end
function TestUnitsParse:testParseInvalidUnit()
luaunit.assertErrorMsgContains("Unknown unit", Units.parse, "100xyz")
-- Now extracts the number and treats as pixels with warning instead of error
-- "100xyz" -> extracts 100, ignores invalid unit "xyz", treats as "100px"
local value, unit = Units.parse("100xyz")
luaunit.assertEquals(value, 100)
luaunit.assertEquals(unit, "px")
end
function TestUnitsParse:testParseWithSpace()
-- Spaces between number and unit should be invalid
luaunit.assertErrorMsgContains("contains space", Units.parse, "100 px")
-- Now returns fallback value (0, "px") with warning instead of error
local value, unit = Units.parse("100 px")
luaunit.assertEquals(value, 0)
luaunit.assertEquals(unit, "px")
end
-- Test suite for Units.resolve()
@@ -369,11 +382,17 @@ function TestUnitsEdgeCases:testResolveZeroParentSize()
end
function TestUnitsEdgeCases:testParseEmptyString()
luaunit.assertErrorMsgContains("Invalid unit format", Units.parse, "")
-- Now returns fallback value (0, "px") with warning instead of error
local value, unit = Units.parse("")
luaunit.assertEquals(value, 0)
luaunit.assertEquals(unit, "px")
end
function TestUnitsEdgeCases:testParseOnlyUnit()
luaunit.assertErrorMsgContains("Missing numeric value before unit", Units.parse, "px")
-- Now returns fallback value (0, "px") with warning instead of error
local value, unit = Units.parse("px")
luaunit.assertEquals(value, 0)
luaunit.assertEquals(unit, "px")
end
function TestUnitsEdgeCases:testResolveNegativePercentage()