public void PlayerCanDeleteAnEventThatTheySubmitted() { SubmitGameEventResponse eventResponse = client.SubmitGameEvent(new SubmitGameEventRequest() { EventData = new GameEventRequest() { EventData = ByteString.CopyFromUtf8("MyEventData"), OccursAtTick = 42, }, RoomId = gameId, }); Assert.AreEqual(eventResponse.Status.IsSuccess, true); Assert.IsTrue(eventResponse.EventId != null); GetGameRoomEventsResponse gameEventsBeforeDelete = client.GetGameRoomEvents(new GetGameRoomEventsRequest() { RoomId = gameId }); Assert.AreEqual(gameEventsBeforeDelete.Status.IsSuccess, true); Assert.AreEqual(1, gameEventsBeforeDelete.GameEvents.Count); Assert.IsTrue(gameEventsBeforeDelete.GameEvents.Any(it => it.Id == eventResponse.EventId)); DeleteGameEventResponse deleteResponse = client.DeleteGameEvent(new DeleteGameEventRequest() { EventId = eventResponse.EventId, RoomId = gameId, }); Assert.AreEqual(deleteResponse.Status.IsSuccess, true); GetGameRoomEventsResponse gameEventsAfterDelete = client.GetGameRoomEvents(new GetGameRoomEventsRequest() { RoomId = gameId }); Assert.AreEqual(gameEventsAfterDelete.Status.IsSuccess, true); Assert.AreEqual(0, gameEventsAfterDelete.GameEvents.Count); }