public unsafe void LookupInCache_DoesNotAlloc() { // insert into cache int index; { var builder = new EntityQueryBuilder().WithAll <EcsTestTag>(); var delegateTypes = stackalloc int[] { TypeManager.GetTypeIndex <EcsTestData>() }; index = TestSystem.GetOrCreateEntityQueryCache().CreateCachedQuery(0, new EntityQuery(null, null, null, null), ref builder, delegateTypes, 1); Assert.Zero(index); // sanity } ValidateNoGCAllocs(() => { var testBuilder = new EntityQueryBuilder().WithAll <EcsTestTag>(); var testDelegateTypes = stackalloc int[] { TypeManager.GetTypeIndex <EcsTestData>() }; TestSystem.EntityQueryCache.ValidateMatchesCache(index, ref testBuilder, testDelegateTypes, 1); }); }