Esempio n. 1
1
		public void Subscribe_ShouldCallOnNextWhenSettingProperty(
			string value,
			Mock<IObserver<string>> observer,
			ISchedulers schedulers
			)
		{
			//arrange
			var sut = new ObservableProperty<string>(schedulers);
			sut.Subscribe(observer.Object);

			//act
			sut.Value = value;

			//assert
			observer.Verify(o => o.OnNext(value));
		}
 public UPaletteEditorGUIState()
 {
     _activePaletteType.Value = (PaletteType)_activePaletteTypePrefs.Value;
     _activePaletteType
     .Subscribe(x => _activePaletteTypePrefs.Value = (int)x)
     .DisposeWith(_disposables);
 }
Esempio n. 3
0
        public void Subscribe_WithDefaultValue_ShouldNotCallOnNext(
            string value,
            Mock <IObserver <string> > observer,
            ISchedulers schedulers)
        {
            //arrange
            var sut = new ObservableProperty <string>(schedulers);

            sut.Subscribe(observer.Object);

            //assert
            observer.Verify(o => o.OnNext(It.IsAny <string>()), Times.Never());
        }
Esempio n. 4
0
        public async Task OnNext_WhenSubscribingThenPushingFirstValue_AndFirstValueIsDefaultValue_ShouldReturnCorrectValue(
            TestSchedulers schedulers)
        {
            //arrange
            var observer = schedulers.CreateObserver <int>();
            var sut      = new ObservableProperty <int>(schedulers);
            var expected = sut.Value;

            sut.Subscribe(observer);

            //act
            sut.OnNext(expected);

            //assert
            observer.Values().Last().Should().Be(expected);
        }
Esempio n. 5
0
        public void Subscribe_ShouldCallOnNextWhenSettingProperty(
            string value,
            Mock <IObserver <string> > observer,
            ISchedulers schedulers
            )
        {
            //arrange
            var sut = new ObservableProperty <string>(schedulers);

            sut.Subscribe(observer.Object);

            //act
            sut.Value = value;

            //assert
            observer.Verify(o => o.OnNext(value));
        }
Esempio n. 6
0
    /// <summary>
    /// Searches all attached UIElements for the first instance of type UIElement.
    /// </summary>
    /// <param name="UIElement">The type of UIElement to search for. Element must have IObserver interface.</param>
    public void Bind <T>(ObservableProperty <T> property, Type UIElement)
    {
        Component element = null;

        foreach (RectTransform rt in m_UIElements)
        {
            element = rt.GetComponent(UIElement);
            if ((element != null) && (element is IObserver <T>))
            {
                property.Subscribe((IObserver <T>)element);
                break;
            }
        }
        if (element == null)
        {
            throw new DataMisalignedException($"UIElement is missing IOberserver<{typeof(T)}> interface");
        }
    }
Esempio n. 7
0
 void Start()
 {
     Property.Subscribe(UpdateText);
     // Property.Value = 0;
 }
Esempio n. 8
0
		public async Task OnNext_WhenSubscribingThenPushingFirstValue_AndFirstValueIsDefaultValue_ShouldReturnCorrectValue(
			TestSchedulers schedulers)
		{
			//arrange
			var observer = schedulers.CreateObserver<int>();
			var sut = new ObservableProperty<int>(schedulers);
			var expected = sut.Value;
			sut.Subscribe(observer);
			
			//act
			sut.OnNext(expected);

			//assert
			observer.Values().Last().Should().Be(expected);
		}
Esempio n. 9
-1
		public void Subscribe_WithDefaultValue_ShouldNotCallOnNext(
			string value,
			Mock<IObserver<string>> observer,
			ISchedulers schedulers)
		{
			//arrange
			var sut = new ObservableProperty<string>(schedulers);
			sut.Subscribe(observer.Object);

			//assert
			observer.Verify(o => o.OnNext(It.IsAny<string>()), Times.Never());
		}