public void CanGetRoomState(AccountType accountType) { _fakeNowProvider = new FakeNowProvider { Now = new DateTime(2000, 12, 12, 12, 12, 0) }; var usersCache = new MockUserStateRepository(); var calc = FakeTimeCalculatorFactory.GetTimeWarpStateCalculator(); _userStateManager = new UserStateManager(calc, usersCache); _testRoom = new Room(2, "testRoom2", new DateTime(2001, 12, 12)); _roomRepository = new MockRoomRepository(); _roomRepository.Add(_testRoom); _roomStateController = new RoomStateController(_userStateManager, _roomRepository, new RoomRemovalPolicy(), _fakeNowProvider); var newAccount = new Account(0, TestHelper.NameMock, TestHelper.EmailAddressMock + 1, accountType); _testRoom.Add(newAccount); usersCache.Add(new TimeWarpUserState(0, newAccount, TimeWarpState.Resting, _fakeNowProvider.Now, TimeSpan.FromSeconds(1), 0, 1)); var oldAccount = new Account(1, TestHelper.NameMock, TestHelper.EmailAddressMock + 2, accountType); _testRoom.Add(oldAccount); usersCache.Add(new TimeWarpUserState(1, oldAccount, TimeWarpState.Resting, _fakeNowProvider.Now.Subtract(TimeSpan.FromDays(100)), TimeSpan.FromSeconds(1), 0, 1)); var state = _roomStateController.Get(2); Assert.AreEqual(1, state.Count()); Assert.AreEqual(0, state.Single().AccountId); }
private void Start() { CorrSystem = GameObject.Find("CorridorSystem").GetComponent <CorridorSystemV2>(); roomStateController = GameObject.Find("CorridorSystem").GetComponent <RoomStateController>(); }