|
@@ -1,354 +0,0 @@
|
|
|
-using PixiEditor.Models.Controllers;
|
|
|
-using PixiEditor.Models.DataHolders;
|
|
|
-using PixiEditor.Models.Enums;
|
|
|
-using PixiEditor.Models.Layers;
|
|
|
-using PixiEditor.Models.Position;
|
|
|
-using PixiEditor.ViewModels;
|
|
|
-using PixiEditorTests.HelpersTests;
|
|
|
-using SkiaSharp;
|
|
|
-using System;
|
|
|
-using Xunit;
|
|
|
-
|
|
|
-namespace PixiEditorTests.ModelsTests.DataHoldersTests;
|
|
|
-
|
|
|
-[Collection("Application collection")]
|
|
|
-public class DocumentTests
|
|
|
-{
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10, 20, 20)]
|
|
|
- //[InlineData(1, 2, 5, 8)]
|
|
|
- //[InlineData(20, 20, 10, 10)] // TODO Anchor
|
|
|
- //public void TestResizeCanvasResizesProperly(int oldWidth, int oldHeight, int newWidth, int newHeight)
|
|
|
- //{
|
|
|
- // Document document = new Document(oldWidth, oldHeight);
|
|
|
-
|
|
|
- // document.ResizeCanvas(newWidth, newHeight, AnchorPoint.Top | AnchorPoint.Left);
|
|
|
- // Assert.Equal(newHeight, document.Height);
|
|
|
- // Assert.Equal(newWidth, document.Width);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10, 20, 20)]
|
|
|
- //[InlineData(5, 8, 10, 16)]
|
|
|
- //public void TestResizeWorks(int oldWidth, int oldHeight, int newWidth, int newHeight)
|
|
|
- //{
|
|
|
- // Document document = new Document(oldWidth, oldHeight);
|
|
|
-
|
|
|
- // document.Resize(newWidth, newHeight);
|
|
|
-
|
|
|
- // Assert.Equal(newHeight, document.Height);
|
|
|
- // Assert.Equal(newWidth, document.Width);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10, 0, 0)]
|
|
|
- //[InlineData(50, 50, 10, 49)]
|
|
|
- //public void TestThatClipCanvasWorksForSingleLayer(int initialWidth, int initialHeight, int additionalPixelX, int additionalPixelY)
|
|
|
- //{
|
|
|
- // Document document = new Document(initialWidth, initialHeight);
|
|
|
- // BitmapManager manager = new BitmapManager
|
|
|
- // {
|
|
|
- // ActiveDocument = document
|
|
|
- // };
|
|
|
- // manager.ActiveDocument.AddNewLayer("test");
|
|
|
- // manager.ActiveLayer.SetPixel(
|
|
|
- // new Coordinates(
|
|
|
- // (int)Math.Ceiling(initialWidth / 2f),
|
|
|
- // (int)Math.Ceiling(initialHeight / 2f)), SKColors.Black);
|
|
|
-
|
|
|
- // manager.ActiveLayer.SetPixel(new Coordinates(additionalPixelX, additionalPixelY), SKColors.Black);
|
|
|
-
|
|
|
- // document.ClipCanvas();
|
|
|
-
|
|
|
- // Assert.Equal(manager.ActiveLayer.Width, document.Width);
|
|
|
- // Assert.Equal(manager.ActiveLayer.Height, document.Height);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10, 0, 0)]
|
|
|
- //[InlineData(50, 50, 15, 23)]
|
|
|
- //[InlineData(3, 3, 1, 1)]
|
|
|
- //[InlineData(1, 1, 0, 0)]
|
|
|
- //public void TestThatClipCanvasWorksForMultipleLayers(int initialWidth, int initialHeight, int secondLayerPixelX, int secondLayerPixelY)
|
|
|
- //{
|
|
|
- // Document document = new Document(initialWidth, initialHeight);
|
|
|
- // BitmapManager manager = new BitmapManager
|
|
|
- // {
|
|
|
- // ActiveDocument = document
|
|
|
- // };
|
|
|
- // manager.ActiveDocument.AddNewLayer("test");
|
|
|
- // manager.ActiveLayer.SetPixel(
|
|
|
- // new Coordinates(
|
|
|
- // (int)Math.Ceiling(initialWidth / 2f),
|
|
|
- // (int)Math.Ceiling(initialHeight / 2f)), SKColors.Black); // Set pixel in center
|
|
|
-
|
|
|
- // manager.ActiveDocument.AddNewLayer("test2");
|
|
|
-
|
|
|
- // manager.ActiveLayer.SetPixel(new Coordinates(secondLayerPixelX, secondLayerPixelY), SKColors.Black);
|
|
|
-
|
|
|
- // document.ClipCanvas();
|
|
|
-
|
|
|
- // int totalWidth = Math.Abs(manager.ActiveDocument.Layers[1].OffsetX +
|
|
|
- // manager.ActiveDocument.Layers[1].Width - (manager.ActiveDocument.Layers[0].OffsetX +
|
|
|
- // manager.ActiveDocument.Layers[0].Width)) + 1;
|
|
|
-
|
|
|
- // int totalHeight = Math.Abs(manager.ActiveDocument.Layers[1].OffsetY +
|
|
|
- // manager.ActiveDocument.Layers[1].Height - (manager.ActiveDocument.Layers[0].OffsetY +
|
|
|
- // manager.ActiveDocument.Layers[0].Height)) + 1;
|
|
|
-
|
|
|
- // Assert.Equal(totalWidth, document.Width);
|
|
|
- // Assert.Equal(totalHeight, document.Height);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10)]
|
|
|
- //[InlineData(11, 11)]
|
|
|
- //[InlineData(25, 17)]
|
|
|
- //public void TestThatCenterContentCentersContentForSingleLayer(int docWidth, int docHeight)
|
|
|
- //{
|
|
|
- // Document doc = new Document(docWidth, docHeight);
|
|
|
- // BitmapManager manager = new BitmapManager
|
|
|
- // {
|
|
|
- // ActiveDocument = doc
|
|
|
- // };
|
|
|
- // manager.ActiveDocument.AddNewLayer("test");
|
|
|
-
|
|
|
- // manager.ActiveLayer.SetPixel(new Coordinates(0, 0), SKColors.Lime);
|
|
|
-
|
|
|
- // doc.CenterContent();
|
|
|
-
|
|
|
- // Assert.Equal(Math.Floor(docWidth / 2f), manager.ActiveLayer.OffsetX);
|
|
|
- // Assert.Equal(Math.Floor(docHeight / 2f), manager.ActiveLayer.OffsetY);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(10, 10)]
|
|
|
- //[InlineData(11, 11)]
|
|
|
- //[InlineData(25, 17)]
|
|
|
- //public void TestThatCenterContentCentersContentForMultipleLayers(int docWidth, int docHeight)
|
|
|
- //{
|
|
|
- // Document doc = new Document(docWidth, docHeight);
|
|
|
- // BitmapManager manager = new BitmapManager
|
|
|
- // {
|
|
|
- // ActiveDocument = doc
|
|
|
- // };
|
|
|
- // manager.ActiveDocument.AddNewLayer("test");
|
|
|
- // manager.ActiveLayer.SetPixel(new Coordinates(0, 0), SKColors.Lime);
|
|
|
-
|
|
|
- // manager.ActiveDocument.AddNewLayer("test2");
|
|
|
- // manager.ActiveLayer.SetPixel(new Coordinates(1, 1), SKColors.Lime);
|
|
|
-
|
|
|
- // foreach (var layer in manager.ActiveDocument.Layers)
|
|
|
- // {
|
|
|
- // layer.IsActive = true;
|
|
|
- // }
|
|
|
-
|
|
|
- // doc.CenterContent();
|
|
|
-
|
|
|
- // int midWidth = (int)Math.Floor(docWidth / 2f);
|
|
|
- // int midHeight = (int)Math.Floor(docHeight / 2f);
|
|
|
-
|
|
|
- // Assert.Equal(midWidth - 1, manager.ActiveDocument.Layers[0].OffsetX);
|
|
|
- // Assert.Equal(midHeight - 1, manager.ActiveDocument.Layers[0].OffsetY);
|
|
|
-
|
|
|
- // Assert.Equal(midWidth, manager.ActiveDocument.Layers[1].OffsetX);
|
|
|
- // Assert.Equal(midHeight, manager.ActiveDocument.Layers[1].OffsetY);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatSetNextActiveLayerSetsLayerBelow()
|
|
|
- //{
|
|
|
- // Document doc = new Document(10, 10);
|
|
|
- // doc.Layers.Add(new PixiEditor.Models.Layers.Layer("Test"));
|
|
|
- // doc.Layers.Add(new PixiEditor.Models.Layers.Layer("Test 2"));
|
|
|
-
|
|
|
- // doc.SetMainActiveLayer(1);
|
|
|
-
|
|
|
- // doc.SetNextLayerAsActive(1);
|
|
|
-
|
|
|
- // Assert.False(doc.Layers[1].IsActive);
|
|
|
- // Assert.True(doc.Layers[0].IsActive);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatAddNewLayerAddsUndoChange()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // Assert.Single(document.UndoManager.UndoStack);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatAddNewLayerUndoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
-
|
|
|
- // Assert.Single(document.Layers);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatAddNewLayerRedoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
- // document.UndoManager.Redo();
|
|
|
-
|
|
|
- // Assert.Equal(2, document.Layers.Count);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatRemoveLayerUndoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // document.RemoveLayer(1);
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
-
|
|
|
- // Assert.Equal(2, document.Layers.Count);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatRemoveLayerRedoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // document.RemoveLayer(1);
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
- // document.UndoManager.Redo();
|
|
|
-
|
|
|
- // Assert.Single(document.Layers);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Theory]
|
|
|
- //[InlineData(2, 0, 1)]
|
|
|
- //[InlineData(2, 1, -1)]
|
|
|
- //[InlineData(3, 1, 1)]
|
|
|
- //[InlineData(3, 2, -2)]
|
|
|
- //[InlineData(10, 9, -5)]
|
|
|
- //public void TestThatMoveLayerInStructureWorks(int layersAmount, int index, int amount)
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
- // for (int i = 0; i < layersAmount; i++)
|
|
|
- // {
|
|
|
- // document.AddNewLayer("Layer " + i);
|
|
|
- // }
|
|
|
-
|
|
|
- // Guid oldGuid = document.Layers[index].LayerGuid;
|
|
|
- // Guid referenceGuid = document.Layers[index + amount].LayerGuid;
|
|
|
- // document.MoveLayerInStructure(oldGuid, referenceGuid, amount > 0);
|
|
|
-
|
|
|
- // Assert.Equal(oldGuid, document.Layers[index + amount].LayerGuid);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatMoveLayerInStructureUndoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // Guid oldGuid = document.Layers[0].LayerGuid;
|
|
|
- // Guid referenceGuid = document.Layers[1].LayerGuid;
|
|
|
-
|
|
|
- // document.MoveLayerInStructure(oldGuid, referenceGuid);
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
-
|
|
|
- // Assert.Equal("Test2", document.Layers[1].Name);
|
|
|
- // Assert.Equal("Test", document.Layers[0].Name);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatMoveLayerInStructureRedoProcessWorks()
|
|
|
- //{
|
|
|
- // Document document = new Document(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer("Test");
|
|
|
- // document.AddNewLayer("Test2");
|
|
|
-
|
|
|
- // Guid oldGuid = document.Layers[0].LayerGuid;
|
|
|
- // Guid referenceGuid = document.Layers[1].LayerGuid;
|
|
|
-
|
|
|
- // document.MoveLayerInStructure(oldGuid, referenceGuid, true);
|
|
|
-
|
|
|
- // document.UndoManager.Undo();
|
|
|
- // document.UndoManager.Redo();
|
|
|
-
|
|
|
- // Assert.Equal("Test", document.Layers[1].Name);
|
|
|
- // Assert.Equal("Test2", document.Layers[0].Name);
|
|
|
- //}
|
|
|
-
|
|
|
- //[StaFact]
|
|
|
- //public void TestThatDocumentGetsAddedToRecentlyOpenedList()
|
|
|
- //{
|
|
|
- // ViewModelMain viewModel = ViewModelHelper.MockedViewModelMain();
|
|
|
-
|
|
|
- // Document document = new Document(1, 1)
|
|
|
- // {
|
|
|
- // XamlAccesibleViewModel = viewModel
|
|
|
- // };
|
|
|
-
|
|
|
- // string testFilePath = @"C:\idk\somewhere\homework";
|
|
|
-
|
|
|
- // document.DocumentFilePath = testFilePath;
|
|
|
-
|
|
|
- // Assert.Contains(viewModel.FileSubViewModel.RecentlyOpened, x => x.FilePath == testFilePath);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatDupliacteLayerWorks()
|
|
|
- //{
|
|
|
- // const string layerName = "New Layer";
|
|
|
-
|
|
|
- // Document document = new(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer(layerName);
|
|
|
- // Layer duplicate = document.DuplicateLayer(0);
|
|
|
-
|
|
|
- // Assert.Equal(document.Layers[1], duplicate);
|
|
|
- // Assert.Equal(layerName + " (1)", duplicate.Name);
|
|
|
- // Assert.True(duplicate.IsActive);
|
|
|
- //}
|
|
|
-
|
|
|
- //[Fact]
|
|
|
- //public void TestThatCorrectLayerSuffixIsSet()
|
|
|
- //{
|
|
|
- // const string layerName = "New Layer";
|
|
|
-
|
|
|
- // Document document = new(10, 10);
|
|
|
-
|
|
|
- // document.AddNewLayer(layerName);
|
|
|
- // document.AddNewLayer(layerName);
|
|
|
- // document.AddNewLayer(layerName);
|
|
|
-
|
|
|
- // Assert.Equal(layerName, document.Layers[0].Name);
|
|
|
- // Assert.Equal(layerName + " (1)", document.Layers[1].Name);
|
|
|
- // Assert.Equal(layerName + " (2)", document.Layers[2].Name);
|
|
|
-
|
|
|
- // document.Layers.Add(new Layer(layerName + " (15)"));
|
|
|
- // document.AddNewLayer(layerName);
|
|
|
-
|
|
|
- // Assert.Equal(layerName + " (16)", document.Layers[4].Name);
|
|
|
- //}
|
|
|
-}
|