public void FilterPreviousChained() { var list = new NativeList <int>(3, Allocator.TempJob); var jobHandle = new FilterAllJob().ScheduleAppend(list, 14, 3); jobHandle = new FilterMod7Job().ScheduleFilter(list, 3, jobHandle); jobHandle.Complete(); Assert.AreEqual(2, list.Length); Assert.AreEqual(0, list[0]); Assert.AreEqual(7, list[1]); list.Dispose(); }
public void FilterProduceChained() { var list = new NativeList <int>(3, Allocator.TempJob); var jobHandle = new FilterMod7Job().ScheduleAppend(list, 14, 4); jobHandle = new FilterAllJob().ScheduleAppend(list, 2, 19, jobHandle); jobHandle.Complete(); Assert.AreEqual(0, list[0]); Assert.AreEqual(7, list[1]); Assert.AreEqual(0, list[2]); Assert.AreEqual(1, list[3]); Assert.AreEqual(4, list.Length); list.Dispose(); }
public void AddElementForEach([Values] bool userFilterJob) { var list = new NativeList <int>(0, Allocator.TempJob); list.Add(-1); list.Add(-2); if (userFilterJob) { var job = new FilterMod7Job(); job.ScheduleAppend(list, 1000, 41).Complete(); } else { var job = new NativeListAddMod7Job(list, 1000); job.Schedule().Complete(); } int counter = 2; for (int i = 0; i != 1000; i++) { if (i % 7 == 0) { Assert.AreEqual(i, list[counter]); counter++; } } Assert.AreEqual(-1, list[0]); Assert.AreEqual(-2, list[1]); Assert.AreEqual(counter, list.Length); list.Dispose(); }