validate schema on module tests
This commit is contained in:
parent
d0fba27097
commit
2d2a68b1c3
3 changed files with 42 additions and 33 deletions
|
@ -2,44 +2,21 @@ TestSchemaValidator = {}
|
|||
|
||||
local config = require('config')
|
||||
|
||||
local function len(t)
|
||||
local count = 0
|
||||
for _ in pairs(t) do count = count + 1 end
|
||||
return count
|
||||
end
|
||||
|
||||
function pprint(t, ident)
|
||||
local ident = ident or 0
|
||||
if type(t) == 'table' then
|
||||
local count = 0
|
||||
for k, v in pairs(t) do
|
||||
print(string.rep('\t', ident) .. k)
|
||||
pprint(v, ident + 1)
|
||||
count = count + 1
|
||||
end
|
||||
if count == 0 then
|
||||
print('<empty table>')
|
||||
end
|
||||
else
|
||||
print(string.rep('\t', ident) .. tostring(t))
|
||||
end
|
||||
end
|
||||
|
||||
function TestSchemaValidator:testBasicFields()
|
||||
local errors = config.validateSchema({a={type='string'}}, {a='test'})
|
||||
lu.assertIs(len(errors), 0)
|
||||
lu.assertIs(table.len(errors), 0)
|
||||
local errors = config.validateSchema({a={type='number'}}, {a=123})
|
||||
lu.assertIs(len(errors), 0)
|
||||
lu.assertIs(table.len(errors), 0)
|
||||
local errors = config.validateSchema({a={type='string'}}, {a=123})
|
||||
lu.assertIs(len(errors), 1)
|
||||
lu.assertIs(table.len(errors), 1)
|
||||
end
|
||||
|
||||
function TestSchemaValidator:testList()
|
||||
local errors = config.validateSchema({a={type='list', schema={type='number'}}}, {a={1,2,3}})
|
||||
lu.assertIs(len(errors), 0)
|
||||
lu.assertIs(table.len(errors), 0)
|
||||
|
||||
local errors = config.validateSchema({a={type='list', schema={type='number'}}}, {a={1,2,3,'asd'}})
|
||||
lu.assertIs(len(errors), 1)
|
||||
lu.assertIs(table.len(errors), 1)
|
||||
end
|
||||
|
||||
function TestSchemaValidator:testTable()
|
||||
|
@ -60,7 +37,7 @@ function TestSchemaValidator:testTable()
|
|||
{b=2}
|
||||
}
|
||||
)
|
||||
lu.assertIs(len(errors), 0)
|
||||
lu.assertIs(table.len(errors), 0)
|
||||
|
||||
local errors = config.validateSchema(
|
||||
TEST_SCHEMA,
|
||||
|
@ -68,5 +45,5 @@ function TestSchemaValidator:testTable()
|
|||
{b='sex'}
|
||||
}
|
||||
)
|
||||
lu.assertIs(len(errors), 1)
|
||||
lu.assertIs(table.len(errors), 1)
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue