public static Mocks Init() { ContainerBuilder builder = new ContainerBuilder(); Mocks mocks = new Mocks(); builder.RegisterInstance(mocks.Animation().Object); builder.RegisterInstance(mocks.AnimationState().Object); builder.RegisterInstance(mocks.GameState().Object); builder.RegisterInstance(mocks.Game().Object); builder.RegisterInstance(mocks.Player().Object); builder.RegisterInstance(mocks.Character().Object); builder.RegisterInstance(mocks.Room().Object); builder.RegisterInstance(mocks.Object().Object); builder.RegisterInstance(mocks.Viewport().Object); builder.RegisterInstance(mocks.Sprite().Object); builder.RegisterInstance(mocks.Image().Object); builder.RegisterInstance(mocks.Input().Object); builder.RegisterInstance(mocks.Cutscene().Object); builder.RegisterInstance(mocks.RoomTransitions().Object); builder.RegisterInstance(mocks.AudioSystem().Object); builder.RegisterInstance(new Mock <IRenderMessagePump> ().Object); builder.RegisterInstance(new Mock <IUpdateMessagePump>().Object); builder.RegisterInstance(new Mock <IGameEvents>().Object); builder.RegisterInstance(new Mock <IDisplayList>().Object); builder.RegisterSource(new AnyConcreteTypeNotAlreadyRegisteredSource()); mocks.container = builder.Build(); return(mocks); }
public async Task PlayerInNoPlayerRoom_CounterNotDecreasedTest() { _mocks.Room().Setup(r => r.Background).Returns((IObject)null); _mocks.Room().Setup(r => r.Objects).Returns(new AGSConcurrentHashSet <IObject> { _mocks.Character().Object }); _mocks.Room().Setup(r => r.ShowPlayer).Returns(false); var animationState = _mocks.AnimationState(); animationState.Setup(a => a.TimeToNextFrame).Returns(5); var animation = _mocks.Animation(); var loop = getGameLoop(); await loop.UpdateAsync(); animationState.VerifySet(a => a.TimeToNextFrame = 4, Times.Never()); animationState.VerifySet(a => a.TimeToNextFrame = It.IsAny <int>(), Times.Never()); animation.Verify(a => a.NextFrame(), Times.Never()); }
public bool EdgeCrossTest(string edgeName, float previous, float current) { IEdge edge = getEdge(edgeName); bool edgeCrossed = false; edge.OnEdgeCrossed.Subscribe((sender, e) => edgeCrossed = true); Mock <ICharacter> character = _mocks.Character(); setPosition(character, previous, edgeName); _edges.OnRepeatedlyExecute(character.Object); Assert.IsFalse(edgeCrossed); setPosition(character, current, edgeName); _edges.OnRepeatedlyExecute(character.Object); return(edgeCrossed); }