public void TestRemoveFirstObjectTrait500Rooms() { StateData stateData = default; TraitBasedObject traitBasedObject = default; Measure.Method(() => { stateData.RemoveTraitOnObject <Colored>(ref traitBasedObject); }).SetUp(() => { stateData = m_StateManager.CopyStateData(m_LargeStateData); for (int i = 0; i < stateData.TraitBasedObjects.Length; i++) { traitBasedObject = stateData.TraitBasedObjects[i]; var coloredIndex = traitBasedObject.ColoredIndex; if (coloredIndex != TraitBasedObject.Unset) { break; } } }).WarmupCount(1).MeasurementCount(30).IterationsPerMeasurement(1).Run(); PerformanceUtility.AssertRange(0.05, 0.075); }
public void TestRemoveLastObjectTrait500Rooms() { StateData stateData = default; TraitBasedObject traitBasedObject = default; Measure.Method(() => { stateData.RemoveTraitOnObject <Colored>(ref traitBasedObject); }).SetUp(() => { stateData = m_StateManager.CopyStateData(m_LargeStateData); traitBasedObject = stateData.TraitBasedObjects[stateData.TraitBasedObjects.Length - 1]; }).WarmupCount(1).MeasurementCount(30).IterationsPerMeasurement(1).Run(); PerformanceUtility.AssertRange(0.16, 0.19); }