123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- using System.Windows;
- using System.Windows.Input;
- using System.Windows.Media;
- using PixiEditor;
- using PixiEditor.Models.Controllers;
- using PixiEditor.Models.DataHolders;
- using PixiEditor.Models.Position;
- using PixiEditor.Models.Tools;
- using PixiEditor.ViewModels;
- using Xunit;
- namespace PixiEditorTests.ViewModelsTests
- {
- public class ViewModelMainTests
- {
- public ViewModelMainTests()
- {
- if (Application.Current == null)
- {
- var app = new App();
- app.InitializeComponent();
- }
- }
- [StaFact]
- public void TestThatConstructorSetsUpControllersCorrectly()
- {
- ViewModelMain viewModel = new ViewModelMain();
- Assert.Equal(viewModel, UndoManager.MainRoot);
- Assert.NotNull(viewModel.ChangesController);
- Assert.NotNull(viewModel.ShortcutController);
- Assert.NotEmpty(viewModel.ShortcutController.Shortcuts);
- Assert.NotNull(viewModel.BitmapManager);
- Assert.Equal(viewModel, ViewModelMain.Current);
- }
- [StaFact]
- public void TestThatSwapColorsCommandSwapsColors()
- {
- ViewModelMain viewModel = new ViewModelMain();
- viewModel.PrimaryColor = Colors.Black;
- viewModel.SecondaryColor = Colors.White;
- viewModel.SwapColorsCommand.Execute(null);
- Assert.Equal(Colors.White, viewModel.PrimaryColor);
- Assert.Equal(Colors.Black, viewModel.SecondaryColor);
- }
- [StaFact]
- public void TestThatNewDocumentCreatesNewDocumentWithBaseLayer()
- {
- ViewModelMain viewModel = new ViewModelMain();
- viewModel.NewDocument(5,5);
- Assert.NotNull(viewModel.BitmapManager.ActiveDocument);
- Assert.Single(viewModel.BitmapManager.ActiveDocument.Layers);
- }
- [StaFact]
- public void TestThatMouseMoveCommandUpdatesCurrentCoordinates()
- {
- ViewModelMain viewModel = new ViewModelMain();
- Assert.Equal(new Coordinates(0, 0), MousePositionConverter.CurrentCoordinates);
- viewModel.MouseXOnCanvas = 5;
- viewModel.MouseYOnCanvas = 5;
- viewModel.MouseMoveCommand.Execute(null);
- Assert.Equal(new Coordinates(5,5), MousePositionConverter.CurrentCoordinates);
- }
- [StaFact]
- public void TestThatSelectToolCommandSelectsNewTool()
- {
- ViewModelMain viewModel = new ViewModelMain();
- Assert.Equal(ToolType.Move,viewModel.BitmapManager.SelectedTool.ToolType);
- viewModel.SelectToolCommand.Execute(ToolType.Line);
- Assert.Equal(ToolType.Line, viewModel.BitmapManager.SelectedTool.ToolType);
- }
- [StaFact]
- public void TestThatMouseUpCommandStopsRecordingMouseMovements()
- {
- ViewModelMain viewModel = new ViewModelMain();
- viewModel.BitmapManager.MouseController.StartRecordingMouseMovementChanges(true);
- Assert.True(viewModel.BitmapManager.MouseController.IsRecordingChanges);
- viewModel.MouseUpCommand.Execute(null);
- Assert.False(viewModel.BitmapManager.MouseController.IsRecordingChanges);
- }
- [StaFact]
- public void TestThatNewLayerCommandCreatesNewLayer()
- {
- ViewModelMain viewModel = new ViewModelMain();
- viewModel.BitmapManager.ActiveDocument = new Document(1,1);
- Assert.Empty(viewModel.BitmapManager.ActiveDocument.Layers);
- viewModel.NewLayerCommand.Execute(null);
- Assert.Single(viewModel.BitmapManager.ActiveDocument.Layers);
- }
- }
- }
|