Browse Source

Add tests for ReactiveUI 9.0.1

pull/1951/head
artyom 7 years ago
parent
commit
ebcbe99c4e
  1. 1
      build.cake
  2. 1
      samples/VirtualizationDemo/ViewModels/MainWindowViewModel.cs
  3. 3
      tests/Avalonia.ReactiveUI.UnitTests/Avalonia.ReactiveUI.UnitTests.csproj
  4. 22
      tests/Avalonia.ReactiveUI.UnitTests/AvaloniaActivationForViewFetcherTest.cs

1
build.cake

@ -170,6 +170,7 @@ Task("Run-Unit-Tests-Impl")
RunCoreTest("./tests/Avalonia.Styling.UnitTests", data.Parameters, false);
RunCoreTest("./tests/Avalonia.Visuals.UnitTests", data.Parameters, false);
RunCoreTest("./tests/Avalonia.Skia.UnitTests", data.Parameters, false);
RunCoreTest("./tests/Avalonia.ReactiveUI.UnitTests", data.Parameters, false);
if (data.Parameters.IsRunningOnWindows)
{
RunCoreTest("./tests/Avalonia.Direct2D1.UnitTests", data.Parameters, false);

1
samples/VirtualizationDemo/ViewModels/MainWindowViewModel.cs

@ -7,6 +7,7 @@ using System.Linq;
using Avalonia.Collections;
using Avalonia.Controls;
using Avalonia.Controls.Primitives;
using ReactiveUI.Legacy;
using ReactiveUI;
namespace VirtualizationDemo.ViewModels

3
tests/Avalonia.ReactiveUI.UnitTests/Avalonia.ReactiveUI.UnitTests.csproj

@ -8,6 +8,7 @@
<Import Project="..\..\build\Rx.props" />
<Import Project="..\..\build\Microsoft.Reactive.Testing.props" />
<ItemGroup>
<ProjectReference Include="../../src/Avalonia.ReactiveUI/Avalonia.ReactiveUI.csproj"/>
<ProjectReference Include="..\Avalonia.UnitTests\Avalonia.UnitTests.csproj" />
<ProjectReference Include="..\..\src\Avalonia.ReactiveUI\Avalonia.ReactiveUI.csproj"/>
</ItemGroup>
</Project>

22
tests/Avalonia.ReactiveUI.UnitTests/AvaloniaActivationForViewFetcherTest.cs

@ -4,6 +4,7 @@ using System.Reactive.Disposables;
using Avalonia.Controls;
using Avalonia.Rendering;
using Avalonia.Platform;
using Avalonia.UnitTests;
using Avalonia;
using ReactiveUI;
using DynamicData;
@ -16,23 +17,6 @@ namespace Avalonia
{
public class TestUserControl : UserControl, IActivatable { }
public class FakeRenderDecorator : Decorator, IRenderRoot
{
public Size ClientSize => new Size(100, 100);
public IRenderer Renderer { get; }
public double RenderScaling => 1;
public IRenderTarget CreateRenderTarget() => null;
public void Invalidate(Rect rect) { }
public Point PointToClient(Point point) => point;
public Point PointToScreen(Point point) => point;
}
public class TestUserControlWithWhenActivated : UserControl, IActivatable
{
public bool Active { get; private set; }
@ -60,7 +44,7 @@ namespace Avalonia
.Bind(out var activated)
.Subscribe();
var fakeRenderedDecorator = new FakeRenderDecorator();
var fakeRenderedDecorator = new TestRoot();
fakeRenderedDecorator.Child = userControl;
Assert.True(activated[0]);
Assert.Equal(1, activated.Count);
@ -94,7 +78,7 @@ namespace Avalonia
var userControl = new TestUserControlWithWhenActivated();
Assert.False(userControl.Active);
var fakeRenderedDecorator = new FakeRenderDecorator();
var fakeRenderedDecorator = new TestRoot();
fakeRenderedDecorator.Child = userControl;
Assert.True(userControl.Active);

Loading…
Cancel
Save