public void CanObserveConsistentGameStateChanges() { var gameStateService = GameStateService.Get(); gameStateService.Init(10, 0); var stateObserverCalled = false; void StateValidator() { CanObserveConsistentGameStateChanges stateChanges = new CanObserveConsistentGameStateChanges(); stateObserverCalled = true; ObserverController.Get().observableProperity.Register(stateChanges); ObserverController.Get().observableProperity.Propriety = new List <int> { 1, 9 }; } gameStateService.State.CoinsChanged += StateValidator; gameStateService.State.StarsChanged += StateValidator; var shopService = ShopService.Get(); shopService.BuyStars(1, 1); ObserverController.Get().observableProperity.Notify(); Assert.That(stateObserverCalled, "Obsever not called"); }
public JembiControllerTest() { _observationService = new Mock <IObservationService>(); _observerManager = new Mock <IObservationManager>(); _config = new Mock <IConfiguration>(); controller = new ObserverController(_observationService.Object); }
public void Start() { spriteRenderer = GetComponent <SpriteRenderer>(); animator = GetComponent <Animator>(); observerController = GetComponent <ObserverController>(); movementController = GetComponent <CharacterMovementController>(); currentState = idleState; currentDirectionX = -1; // Enemies always initially face left if (!waypointLeft.Equals(Vector3.negativeInfinity) && !waypointRight.Equals(Vector3.negativeInfinity)) { globalWaypointLeft = waypointLeft + transform.position; globalWaypointRight = waypointRight + transform.position; waypointController = new WaypointController(globalWaypointLeft, globalWaypointRight); } }
public void CanObserveGameStateChanges() { var gameStateService = GameStateService.Get(); gameStateService.Init(10, 0); var gameState = gameStateService.State; var stateObserverCalled = false; gameState.CoinsChanged += () => { stateObserverCalled = true; ObserveGameStateChanges gameStateChanges = new ObserveGameStateChanges(); ObserverController.Get().observableInt.Register(gameStateChanges); ObserverController.Get().observableInt.Propriety = 8; }; ShopService.Get().UseCoins(2); //Note:-Assume That game state is in a consistent state. ObserverController.Get().observableInt.Notify(); Assert.That(stateObserverCalled, "Obsever not called"); }
public void CreateObserverController <T>() where T : ObserverController { ObserverController = (ObserverController)Activator.CreateInstance(typeof(T), RobotAgents.Cast <Agent>().Concat(CartAgents), Tasks); }