mirror of
https://github.com/Ukendio/jecs.git
synced 2025-04-24 17:10:03 +00:00
Add tests
This commit is contained in:
parent
ba74d6b471
commit
a0aac721a9
1 changed files with 17 additions and 34 deletions
|
@ -62,6 +62,10 @@ local function debug_world_inspect(world: World)
|
|||
}
|
||||
end
|
||||
|
||||
local function name(world, e)
|
||||
return world:get(e, jecs.Name)
|
||||
end
|
||||
|
||||
TEST("archetype", function()
|
||||
local archetype_append_to_records = jecs.archetype_append_to_records
|
||||
local id_record_ensure = jecs.id_record_ensure
|
||||
|
@ -353,6 +357,19 @@ TEST("world:add()", function()
|
|||
end)
|
||||
|
||||
TEST("world:query()", function()
|
||||
do CASE "cached"
|
||||
local world = world_new()
|
||||
local Foo = world:component()
|
||||
local Bar = world:component()
|
||||
local e = world:entity()
|
||||
world:set(e, Foo, true)
|
||||
local q = world:query(Foo):cached()
|
||||
world:set(e, Bar, false)
|
||||
for _, e in q do
|
||||
CHECK(true)
|
||||
end
|
||||
CHECK(#q.compatible_archetypes == 2)
|
||||
end
|
||||
do CASE("multiple iter")
|
||||
local world = jecs.World.new()
|
||||
local A = world:component()
|
||||
|
@ -808,40 +825,6 @@ TEST("world:query()", function()
|
|||
CHECK(withoutCount == 0)
|
||||
end
|
||||
|
||||
do
|
||||
CASE("Empty Query")
|
||||
do
|
||||
local world = jecs.World.new()
|
||||
local A = world:component()
|
||||
local B = world:component()
|
||||
|
||||
local e1 = world:entity()
|
||||
world:add(e1, A)
|
||||
|
||||
local query = world:query(B)
|
||||
CHECK(query:without() == query)
|
||||
CHECK(query:with() == query)
|
||||
-- They always return the same EMPTY_LIST
|
||||
CHECK(query:archetypes() == world:query(B):archetypes())
|
||||
end
|
||||
|
||||
do
|
||||
local world = jecs.World.new()
|
||||
local A = world:component()
|
||||
local B = world:component()
|
||||
|
||||
local e1 = world:entity()
|
||||
world:add(e1, A)
|
||||
|
||||
local count = 0
|
||||
for id in world:query(B) do
|
||||
count += 1
|
||||
end
|
||||
|
||||
CHECK(count == 0)
|
||||
end
|
||||
end
|
||||
|
||||
do
|
||||
CASE("without")
|
||||
do
|
||||
|
|
Loading…
Reference in a new issue