mirror of
https://github.com/sbrl/Minetest-WorldEditAdditions.git
synced 2024-12-23 12:05:01 +00:00
start with tests for the header parser, but they aren't finished yet
This commit is contained in:
parent
54ef125409
commit
270ec92fee
4 changed files with 49 additions and 3 deletions
15
.tests/parse/file/testfiles/header_invalid_name_type.json
Normal file
15
.tests/parse/file/testfiles/header_invalid_name_type.json
Normal file
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"name": 4,
|
||||
"size": {
|
||||
"x": 50,
|
||||
"y": 25,
|
||||
"z": 75
|
||||
},
|
||||
"offset": {
|
||||
"x": 3,
|
||||
"y": 0,
|
||||
"z": 5
|
||||
},
|
||||
"type": "full",
|
||||
"generator": "WorldEditAdditions v1.14"
|
||||
}
|
14
.tests/parse/file/testfiles/header_invalid_noname.json
Normal file
14
.tests/parse/file/testfiles/header_invalid_noname.json
Normal file
|
@ -0,0 +1,14 @@
|
|||
{
|
||||
"size": {
|
||||
"x": 50,
|
||||
"y": 25,
|
||||
"z": 75
|
||||
},
|
||||
"offset": {
|
||||
"x": 3,
|
||||
"y": 0,
|
||||
"z": 5
|
||||
},
|
||||
"type": "full",
|
||||
"generator": "WorldEditAdditions v1.14"
|
||||
}
|
|
@ -47,4 +47,21 @@ describe("parse.file.weaschem.parse_header", function()
|
|||
assert.are.same("SUCCESS", code)
|
||||
assert.are.same(parse_json(content), result)
|
||||
end)
|
||||
it("should complain for an invalid header with no name", function()
|
||||
local content = get_json_string("invalid_noname")
|
||||
assert.are_not.same(nil, content)
|
||||
local success, code, result = weaschem.parse_header(content)
|
||||
assert.are.same(false, success)
|
||||
assert.are.same("HEADER_NO_NAME", code)
|
||||
assert.are.same("string", type(result))
|
||||
end)
|
||||
it("should complain for an invalid header with name of wrong type", function()
|
||||
local content = get_json_string("invalid_name_type")
|
||||
assert.are_not.same(nil, content)
|
||||
local success, code, result = weaschem.parse_header(content)
|
||||
assert.are.same(false, success)
|
||||
assert.are.same("HEADER_NAME_INVALID", code)
|
||||
assert.are.same("string", type(result))
|
||||
end)
|
||||
end)
|
||||
|
||||
|
|
|
@ -55,14 +55,14 @@ function weaschem.parse_header(source)
|
|||
header["name"] = raw_obj["name"]
|
||||
if type(header["name"]) ~= "string" then
|
||||
return false, "HEADER_NAME_INVALID",
|
||||
"Invalid name in header: expected string, but found value of type '"..type(raw_obj["name"])"'."
|
||||
"Invalid name in header: expected string, but found value of type '"..type(raw_obj["name"]).."'."
|
||||
end
|
||||
end
|
||||
if raw_obj["description"] ~= nil then
|
||||
header["description"] = raw_obj["description"]
|
||||
if type(header["description"]) ~= "string" then
|
||||
return false, "HEADER_DESCRIPTION_INVALID",
|
||||
"Invalid description in header: expected string, but found value of type '" .. type(raw_obj["description"]) "'."
|
||||
"Invalid description in header: expected string, but found value of type '"..type(raw_obj["description"]).."'."
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -104,7 +104,7 @@ function weaschem.parse_header(source)
|
|||
header["generator"] = raw_obj["generator"]
|
||||
if type(header["generator"]) ~= "string" then
|
||||
return false, "HEADER_GENERATOR_INVALID",
|
||||
"Invalid generator in header: expected string, but found value of generator '" .. type(raw_obj["generator"]) "'."
|
||||
"Invalid generator in header: expected string, but found value of generator '"..type(raw_obj["generator"]).."'."
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in a new issue