Dreamine.FullKit.Wpf.Tests
1.0.0.0
Dreamine.FullKit.Wpf.Tests 기능을 검증하는 자동화 테스트 프로젝트입니다.
Toggle main menu visibility
로딩중...
검색중...
일치하는것 없음
ViewSwitcherTests.cs
이 파일의 문서화 페이지로 가기
1
using
Dreamine.MVVM.Interfaces;
2
using
Dreamine.UI.Wpf.Controls.ViewRegion;
3
4
namespace
Dreamine.FullKit.Wpf.Tests.UI
;
5
14
public
sealed
class
ViewSwitcherTests
15
{
24
[Fact]
25
public
void
RegisterAndNotifyShown_CallsActivateAndOnShown
()
26
{
27
var vm =
new
TrackingViewModel
();
28
ViewSwitcher.RegisterViewModel(
"TestView"
, vm);
29
30
ViewSwitcher.NotifyShown(
"TestView"
);
31
32
Assert.True(vm.Activated);
33
Assert.True(vm.Shown);
34
}
35
44
[Fact]
45
public
void
NotifyHidden_CallsOnHiddenAndDeactivate
()
46
{
47
var vm =
new
TrackingViewModel
();
48
ViewSwitcher.RegisterViewModel(
"TestView2"
, vm);
49
50
ViewSwitcher.NotifyShown(
"TestView2"
);
51
ViewSwitcher.NotifyHidden(
"TestView2"
);
52
53
Assert.True(vm.Hidden);
54
Assert.True(vm.Deactivated);
55
}
56
65
[Fact]
66
public
void
NotifyShown_UnregisteredKey_DoesNotThrow
()
67
{
68
var ex = Record.Exception(() => ViewSwitcher.NotifyShown(
"NonExistentView_xyz"
));
69
Assert.Null(ex);
70
}
71
80
[Fact]
81
public
void
RegisterViewModel_OverwritesPreviousEntry
()
82
{
83
var vm1 =
new
TrackingViewModel
();
84
var vm2 =
new
TrackingViewModel
();
85
ViewSwitcher.RegisterViewModel(
"OverwriteView"
, vm1);
86
ViewSwitcher.RegisterViewModel(
"OverwriteView"
, vm2);
87
88
ViewSwitcher.NotifyShown(
"OverwriteView"
);
89
90
Assert.False(vm1.Activated);
91
Assert.True(vm2.Activated);
92
}
93
102
private
sealed
class
TrackingViewModel
: IActivatable, IVisibilityAware
103
{
112
public
bool
Activated
{
get
;
private
set
; }
121
public
bool
Deactivated
{
get
;
private
set
; }
130
public
bool
Shown
{
get
;
private
set
; }
139
public
bool
Hidden
{
get
;
private
set
; }
140
149
public
void
Activate
() =>
Activated
=
true
;
158
public
void
Deactivate
() =>
Deactivated
=
true
;
167
public
void
OnShown
() =>
Shown
=
true
;
176
public
void
OnHidden
() =>
Hidden
=
true
;
177
}
178
}
Dreamine.FullKit.Wpf.Tests.UI
Definition
ConverterTests.cs:5
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests
Definition
ViewSwitcherTests.cs:15
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.NotifyHidden_CallsOnHiddenAndDeactivate
void NotifyHidden_CallsOnHiddenAndDeactivate()
Definition
ViewSwitcherTests.cs:45
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.RegisterViewModel_OverwritesPreviousEntry
void RegisterViewModel_OverwritesPreviousEntry()
Definition
ViewSwitcherTests.cs:81
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.NotifyShown_UnregisteredKey_DoesNotThrow
void NotifyShown_UnregisteredKey_DoesNotThrow()
Definition
ViewSwitcherTests.cs:66
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.RegisterAndNotifyShown_CallsActivateAndOnShown
void RegisterAndNotifyShown_CallsActivateAndOnShown()
Definition
ViewSwitcherTests.cs:25
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel
Definition
ViewSwitcherTests.cs:103
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Deactivate
void Deactivate()
Definition
ViewSwitcherTests.cs:158
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Activate
void Activate()
Definition
ViewSwitcherTests.cs:149
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.OnShown
void OnShown()
Definition
ViewSwitcherTests.cs:167
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Activated
bool Activated
Definition
ViewSwitcherTests.cs:112
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Deactivated
bool Deactivated
Definition
ViewSwitcherTests.cs:121
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.OnHidden
void OnHidden()
Definition
ViewSwitcherTests.cs:176
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Shown
bool Shown
Definition
ViewSwitcherTests.cs:130
Dreamine.FullKit.Wpf.Tests.UI.ViewSwitcherTests.TrackingViewModel.Hidden
bool Hidden
Definition
ViewSwitcherTests.cs:139
UI
ViewSwitcherTests.cs
다음에 의해 생성됨 :
1.17.0