public void RemoveTest() { var position = GetRandomVector3(); var entity = new Entity(1, position, 0, 10000); grid3.Add(entity); grid3.Remove(entity); using (var enumerator = grid3.Find(position, 0).GetEnumerator()) { Assert.False(enumerator.MoveNext()); } Assert.AreEqual(0, grid3.GetEntityCount()); grid3.Add(entity); Assert.LessOrEqual(grid3.GetEntityCount(), 40804); }
public void UpdatePositionTest() { var readAsyncCreate = mockNetworkLayer.CreateEventChannel.Reader.ReadAsync(); var entity = new Entity(1, Vector3.Zero, 0, 2); AltEntitySync.AddEntity(entity); var createTask = readAsyncCreate.AsTask(); createTask.Wait(); var createResult = createTask.Result; Assert.AreSame(createResult.Entity, entity); var readAsyncPositionUpdate = mockNetworkLayer.PositionUpdateEventChannel.Reader.ReadAsync(); var newPosition = new Vector3(1, 1, 1); entity.Position = newPosition; var positionUpdateTask = readAsyncPositionUpdate.AsTask(); positionUpdateTask.Wait(); var positionUpdateResult = positionUpdateTask.Result; Assert.AreSame(positionUpdateResult.Entity, entity); Assert.AreEqual(newPosition, positionUpdateResult.Position); var readAsyncRemove = mockNetworkLayer.RemoveEventChannel.Reader.ReadAsync(); AltEntitySync.RemoveEntity(entity); var removeTask = readAsyncRemove.AsTask(); removeTask.Wait(); var removeResult = removeTask.Result; Assert.AreSame(removeResult.Entity, entity); Assert.AreEqual(0, grid.GetEntityCount()); }