ViewModelMainTests.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. using PixiEditor.Models.DataHolders;
  2. using PixiEditor.Models.Position;
  3. using PixiEditor.Models.Tools.Tools;
  4. using PixiEditor.ViewModels;
  5. using PixiEditorTests.HelpersTests;
  6. using SkiaSharp;
  7. using System.IO;
  8. using System.Windows.Input;
  9. using Xunit;
  10. namespace PixiEditorTests.ViewModelsTests
  11. {
  12. [Collection("Application collection")]
  13. public class ViewModelMainTests
  14. {
  15. //[StaFact]
  16. //public void TestThatConstructorSetsUpControllersCorrectly()
  17. //{
  18. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  19. // Assert.NotNull(viewModel.ChangesController);
  20. // Assert.NotNull(viewModel.ShortcutController);
  21. // Assert.NotEmpty(viewModel.ShortcutController.ShortcutGroups);
  22. // Assert.NotNull(viewModel.BitmapManager);
  23. // Assert.Equal(viewModel, ViewModelMain.Current);
  24. //}
  25. //[StaFact]
  26. //public void TestThatSwapColorsCommandSwapsColors()
  27. //{
  28. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  29. // viewModel.ColorsSubViewModel.PrimaryColor = SKColors.Black;
  30. // viewModel.ColorsSubViewModel.SecondaryColor = SKColors.White;
  31. // viewModel.ColorsSubViewModel.SwapColorsCommand.Execute(null);
  32. // Assert.Equal(SKColors.White, viewModel.ColorsSubViewModel.PrimaryColor);
  33. // Assert.Equal(SKColors.Black, viewModel.ColorsSubViewModel.SecondaryColor);
  34. //}
  35. //[StaFact]
  36. //public void TestThatNewDocumentCreatesNewDocumentWithBaseLayer()
  37. //{
  38. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  39. // viewModel.FileSubViewModel.NewDocument(5, 5);
  40. // Assert.NotNull(viewModel.BitmapManager.ActiveDocument);
  41. // Assert.Single(viewModel.BitmapManager.ActiveDocument.Layers);
  42. //}
  43. //[StaFact]
  44. //public void TestThatMouseMoveCommandUpdatesCurrentCoordinates()
  45. //{
  46. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  47. // viewModel.BitmapManager.ActiveDocument = new Document(10, 10);
  48. // Assert.Equal(new Coordinates(0, 0), MousePositionConverter.CurrentCoordinates);
  49. // viewModel.BitmapManager.ActiveDocument.MouseXOnCanvas = 5;
  50. // viewModel.BitmapManager.ActiveDocument.MouseYOnCanvas = 5;
  51. // viewModel.IoSubViewModel.MouseMoveCommand.Execute(null);
  52. // Assert.Equal(new Coordinates(5, 5), MousePositionConverter.CurrentCoordinates);
  53. //}
  54. //[StaFact]
  55. //public void TestThatSelectToolCommandSelectsNewTool()
  56. //{
  57. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  58. // Assert.Equal(typeof(MoveViewportTool), viewModel.BitmapManager.SelectedTool.GetType());
  59. // viewModel.ToolsSubViewModel.SelectToolCommand.Execute(new LineTool());
  60. // Assert.Equal(typeof(LineTool), viewModel.BitmapManager.SelectedTool.GetType());
  61. //}
  62. //[StaFact]
  63. //public void TestThatMouseUpCommandStopsRecordingMouseMovements()
  64. //{
  65. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  66. // viewModel.BitmapManager.MouseController.StartRecordingMouseMovementChanges(true);
  67. // Assert.True(viewModel.BitmapManager.MouseController.IsRecordingChanges);
  68. // viewModel.IoSubViewModel.MouseHook_OnMouseUp(default, default, MouseButton.Left);
  69. // Assert.False(viewModel.BitmapManager.MouseController.IsRecordingChanges);
  70. //}
  71. //[StaFact]
  72. //public void TestThatNewLayerCommandCreatesNewLayer()
  73. //{
  74. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  75. // viewModel.BitmapManager.ActiveDocument = new Document(1, 1);
  76. // Assert.Empty(viewModel.BitmapManager.ActiveDocument.Layers);
  77. // viewModel.LayersSubViewModel.NewLayerCommand.Execute(null);
  78. // Assert.Single(viewModel.BitmapManager.ActiveDocument.Layers);
  79. //}
  80. //[StaFact]
  81. //public void TestThatSaveDocumentCommandSavesFile()
  82. //{
  83. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  84. // string fileName = "testFile.pixi";
  85. // viewModel.BitmapManager.ActiveDocument = new Document(1, 1)
  86. // {
  87. // DocumentFilePath = fileName
  88. // };
  89. // viewModel.FileSubViewModel.SaveDocumentCommand.Execute(null);
  90. // Assert.True(File.Exists(fileName));
  91. // File.Delete(fileName);
  92. //}
  93. //[StaFact]
  94. //public void TestThatAddSwatchAddsNonDuplicateSwatch()
  95. //{
  96. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  97. // viewModel.BitmapManager.ActiveDocument = new Document(1, 1);
  98. // viewModel.ColorsSubViewModel.AddSwatch(SKColors.Lime);
  99. // viewModel.ColorsSubViewModel.AddSwatch(SKColors.Lime);
  100. // Assert.Single(viewModel.BitmapManager.ActiveDocument.Swatches);
  101. // Assert.Equal(SKColors.Lime, viewModel.BitmapManager.ActiveDocument.Swatches[0]);
  102. //}
  103. //[StaTheory]
  104. //[InlineData(5, 7)]
  105. //[InlineData(1, 1)]
  106. //[InlineData(1, 2)]
  107. //[InlineData(2, 1)]
  108. //[InlineData(16, 16)]
  109. //[InlineData(50, 28)]
  110. //[InlineData(120, 150)]
  111. //public void TestThatSelectAllCommandSelectsWholeDocument(int docWidth, int docHeight)
  112. //{
  113. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  114. // viewModel.BitmapManager.ActiveDocument = new Document(docWidth, docHeight);
  115. // viewModel.BitmapManager.ActiveDocument.AddNewLayer("layer");
  116. // viewModel.SelectionSubViewModel.SelectAllCommand.Execute(null);
  117. // Assert.Equal(
  118. // viewModel.BitmapManager.ActiveDocument.Width * viewModel.BitmapManager.ActiveDocument.Height,
  119. // viewModel.BitmapManager.ActiveDocument.ActiveSelection.SelectedPoints.Count);
  120. //}
  121. //[StaFact]
  122. //public void TestThatDocumentIsNotNullReturnsTrue()
  123. //{
  124. // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
  125. // viewModel.BitmapManager.ActiveDocument = new Document(1, 1);
  126. // Assert.True(viewModel.DocumentIsNotNull(null));
  127. //}
  128. }
  129. }