public TabButtonViewModel(Action clickedAction, string buttonText) { _clickedAction = clickedAction; ButtonTextLiveData = new LiveData <string>(); ButtonTextLiveData.PostValue(buttonText); }
public CurrentHoveredTileCoordinateViewModel(ICurrentHoveredTileHolderGetRepository repository) { CoordinateLiveData = new LiveData <Coordinate?>(); _disposable = repository.GetObservableStream() .SubscribeOn(Scheduler.ThreadPool) .ObserveOn(Scheduler.MainThread) .Subscribe( holder => CoordinateLiveData.PostValue(holder != null ? holder.Value.Coordinate : (Coordinate?)null) ); }
public DebugLogMessageViewModel(IInGameMessageService messageService) { _messageService = messageService; MessageLiveData = new LiveData <string>(); _disposable = messageService.InGameEditorUiMessageStream .SubscribeOn(Scheduler.ThreadPool) .ObserveOn(Scheduler.MainThread) .Subscribe( message => MessageLiveData.PostValue(message.Value) ); }
public void LiveDataValueTypeDefaultSettingsIntegrationTest() { var randomGen = new Random(); var val0 = randomGen.Next(); var val1 = randomGen.Next(); var val2 = randomGen.Next(); var testSequence = new List <int>(new[] { val1, val2, val2, val1, val2, val1, val1 }); _liveDataValueType = new LiveData <int>(val0, _testRxSchedulerFacade.Object); _liveDataValueType.Observe(_lifecycleManager, i => _emittedVerificationListValue.Add(i), e => Assert.Fail("onError called")); Assert.AreEqual(0, _emittedVerificationListValue.Count); _lifecycleManager.OnResume(); Assert.AreEqual(1, _emittedVerificationListValue.Count); Assert.AreEqual(val0, _emittedVerificationListValue[0]); testSequence.ForEach(i => _liveDataValueType.PostValue(i)); Assert.AreEqual(6, _emittedVerificationListValue.Count); Assert.AreEqual(val0, _emittedVerificationListValue[0]); Assert.AreEqual(val1, _emittedVerificationListValue[1]); Assert.AreEqual(val2, _emittedVerificationListValue[2]); Assert.AreEqual(val1, _emittedVerificationListValue[3]); Assert.AreEqual(val2, _emittedVerificationListValue[4]); Assert.AreEqual(val1, _emittedVerificationListValue[5]); _lifecycleManager.OnPause(); testSequence.ForEach(i => _liveDataValueType.PostValue(i)); Assert.AreEqual(6, _emittedVerificationListValue.Count); _lifecycleManager.OnResume(); Assert.AreEqual(6, _emittedVerificationListValue.Count); _lifecycleManager.OnPause(); testSequence.ForEach(i => _liveDataValueType.PostValue(i)); _liveDataValueType.PostValue(val0); _liveDataValueType.PostValue(val1); _liveDataValueType.PostValue(val2); _lifecycleManager.OnResume(); Assert.AreEqual(7, _emittedVerificationListValue.Count); Assert.AreEqual(val2, _emittedVerificationListValue[6]); _lifecycleManager.OnDestroyView(); Assert.AreEqual(7, _emittedVerificationListValue.Count); _liveDataValueType.Observe(_lifecycleManager, i => _emittedVerificationListValue.Add(i), e => Assert.Fail("onError called")); Assert.AreEqual(7, _emittedVerificationListValue.Count); _lifecycleManager.OnResume(); Assert.AreEqual(8, _emittedVerificationListValue.Count); Assert.AreEqual(val2, _emittedVerificationListValue[7]); _lifecycleManager.OnPause(); Assert.AreEqual(8, _emittedVerificationListValue.Count); _lifecycleManager.OnDestroyView(); testSequence.ForEach(i => _liveDataValueType.PostValue(i)); _liveDataValueType.PostValue(val0); _liveDataValueType.PostValue(val1); _liveDataValueType.Observe(_lifecycleManager, i => _emittedVerificationListValue.Add(i), e => Assert.Fail("onError called")); Assert.AreEqual(8, _emittedVerificationListValue.Count); _lifecycleManager.OnResume(); Assert.AreEqual(9, _emittedVerificationListValue.Count); Assert.AreEqual(val1, _emittedVerificationListValue[8]); }
public void LiveDataReferenceTypeAllowDuplicatesIntegrationTest() { var val0 = TestUtils.RandomString(32); var val1 = TestUtils.RandomString(32); var val2 = TestUtils.RandomString(32); var testSequence = new List <string>(new[] { val1, val2, val2, val1, val2, val1, val1 }); _liveDataReferenceType = new LiveData <string>(val0, _testRxSchedulerFacade.Object, true); _liveDataReferenceType.Observe(_lifecycleManager, s => _emittedVerificationListReference.Add(s), e => Assert.Fail("onError called")); Assert.AreEqual(0, _emittedVerificationListReference.Count); _lifecycleManager.OnResume(); Assert.AreEqual(1, _emittedVerificationListReference.Count); Assert.AreEqual(val0, _emittedVerificationListReference[0]); testSequence.ForEach(i => _liveDataReferenceType.PostValue(i)); Assert.AreEqual(8, _emittedVerificationListReference.Count); for (var i = 1; i < _emittedVerificationListReference.Count; ++i) { Assert.AreEqual(testSequence[i - 1], _emittedVerificationListReference[i]); } _lifecycleManager.OnPause(); testSequence.ForEach(s => _liveDataReferenceType.PostValue(s)); Assert.AreEqual(8, _emittedVerificationListReference.Count); _lifecycleManager.OnResume(); Assert.AreEqual(9, _emittedVerificationListReference.Count); Assert.AreEqual(val1, _emittedVerificationListReference[8]); _lifecycleManager.OnPause(); testSequence.ForEach(s => _liveDataReferenceType.PostValue(s)); _liveDataReferenceType.PostValue(val0); _liveDataReferenceType.PostValue(val1); _liveDataReferenceType.PostValue(val2); _lifecycleManager.OnResume(); Assert.AreEqual(10, _emittedVerificationListReference.Count); Assert.AreEqual(val2, _emittedVerificationListReference[9]); _lifecycleManager.OnDestroyView(); Assert.AreEqual(10, _emittedVerificationListReference.Count); _liveDataReferenceType.Observe(_lifecycleManager, s => _emittedVerificationListReference.Add(s), e => Assert.Fail("onError called")); Assert.AreEqual(10, _emittedVerificationListReference.Count); _lifecycleManager.OnResume(); Assert.AreEqual(11, _emittedVerificationListReference.Count); Assert.AreEqual(val2, _emittedVerificationListReference[10]); _lifecycleManager.OnPause(); Assert.AreEqual(11, _emittedVerificationListReference.Count); _lifecycleManager.OnDestroyView(); testSequence.ForEach(i => _liveDataReferenceType.PostValue(i)); _liveDataReferenceType.PostValue(val0); _liveDataReferenceType.PostValue(val1); _liveDataReferenceType.Observe(_lifecycleManager, s => _emittedVerificationListReference.Add(s), e => Assert.Fail("onError called")); Assert.AreEqual(11, _emittedVerificationListReference.Count); _lifecycleManager.OnResume(); Assert.AreEqual(12, _emittedVerificationListReference.Count); Assert.AreEqual(val1, _emittedVerificationListReference[11]); }