public void ApplyCustomResolution_ShouldCreateRect(int?width, int?height) { // Prepare Rect?createdRect = default; var eventAggregatorMock = new Mock <IEventAggregator>(); var activeWindowsSelectionChangedEventMock = new Mock <ActiveWindowsSelectionChangedEvent>(); eventAggregatorMock.Setup(x => x.GetEvent <ActiveWindowsSelectionChangedEvent>()).Returns(activeWindowsSelectionChangedEventMock.Object); var windowServiceMock = new Mock <IWindowService>(); windowServiceMock.Setup(x => x.ResizeWindow(It.IsAny <Domain.Windows.Window>(), It.IsAny <Rect>())) .Callback <Domain.Windows.Window, Rect>((window, rect) => createdRect = rect); var viewModel = new ResizerViewModel(eventAggregatorMock.Object, windowServiceMock.Object) { NewWidth = width.ToString() ?? string.Empty, NewHeight = height.ToString() ?? string.Empty }; viewModel.SelectedWindows.Add(new Domain.Windows.Window()); // Act viewModel.ApplyCustomResolution(); // Assert windowServiceMock.Verify(x => x.ResizeWindow(It.IsAny <Domain.Windows.Window>(), It.IsAny <Rect>()), Times.AtLeastOnce()); Assert.Equal(width ?? 0, createdRect?.Right); Assert.Equal(height ?? 0, createdRect?.Bottom); }
public void ApplyPreset_ValidRect_ShouldPassRect() { // Prepare var rect = new Rect { Right = 10, Bottom = 20 }; Rect?sendRect = default; var eventAggregatorMock = new Mock <IEventAggregator>(); var activeWindowsSelectionChangedEventMock = new Mock <ActiveWindowsSelectionChangedEvent>(); eventAggregatorMock.Setup(x => x.GetEvent <ActiveWindowsSelectionChangedEvent>()).Returns(activeWindowsSelectionChangedEventMock.Object); var windowServiceMock = new Mock <IWindowService>(); windowServiceMock.Setup(x => x.ResizeWindow(It.IsAny <Domain.Windows.Window>(), It.IsAny <Rect>())) .Callback <Domain.Windows.Window, Rect>((window, rect) => sendRect = rect); var viewModel = new ResizerViewModel(eventAggregatorMock.Object, windowServiceMock.Object); viewModel.SelectedWindows.Add(new Domain.Windows.Window()); // Act viewModel.ApplyPreset(rect); // Assert windowServiceMock.Verify(x => x.ResizeWindow(It.IsAny <Domain.Windows.Window>(), It.IsAny <Rect>()), Times.Once()); Assert.Equal(rect, sendRect); }
public void Construct_ValidConstruction_ShouldCreateUtilitiesViewModel() { // Prepare var eventAggregatorMock = new Mock <IEventAggregator>(); var activeWindowsSelectionChangedEventMock = new Mock <ActiveWindowsSelectionChangedEvent>(); var windowServiceMock = new Mock <IWindowService>(); eventAggregatorMock.Setup(x => x.GetEvent <ActiveWindowsSelectionChangedEvent>()).Returns(activeWindowsSelectionChangedEventMock.Object); // Act var viewModel = new ResizerViewModel(eventAggregatorMock.Object, windowServiceMock.Object); // Assert Assert.NotNull(viewModel); }
public void ApplyCustomResolution_NoSelectedWindows_ShouldNotCallResizeWindow() { // Prepare var eventAggregatorMock = new Mock <IEventAggregator>(); var activeWindowsSelectionChangedEventMock = new Mock <ActiveWindowsSelectionChangedEvent>(); eventAggregatorMock.Setup(x => x.GetEvent <ActiveWindowsSelectionChangedEvent>()).Returns(activeWindowsSelectionChangedEventMock.Object); var windowServiceMock = new Mock <IWindowService>(); var viewModel = new ResizerViewModel(eventAggregatorMock.Object, windowServiceMock.Object); // Act viewModel.ApplyCustomResolution(); // Assert windowServiceMock.Verify(x => x.ResizeWindow(It.IsAny <Domain.Windows.Window>(), It.IsAny <Rect>()), Times.Never()); }