leafo / tableshape

Test the shape or structure of a Lua table, inspired by React.PropTypes & LPeg
111 stars 9 forks source link

false negative with array_of #18

Open kmarkus opened 8 months ago

kmarkus commented 8 months ago

It seems that the array_of type doesn't detect invalid keys in the top-level table.

Example:

local types = require("tableshape").types

local oneof_shape = types.array_of(
   types.shape { foo = types.number}
)

print(oneof_shape({xyz=2})) -- -> true, should be false

I would have expected an error about an unexpected key-value pair.