Browse Source

Fixed tests

flabbet 4 years ago
parent
commit
c374330e49

+ 2 - 2
PixiEditor/Models/DataHolders/Document.cs

@@ -332,7 +332,7 @@ namespace PixiEditor.Models.DataHolders
             }
         }
 
-        public void RemoveLayer(int layerIndex)
+        public void RemoveLayer(int layerIndex, bool addToUndo = true)
         {
             if (Layers.Count == 0)
             {
@@ -342,9 +342,9 @@ namespace PixiEditor.Models.DataHolders
             bool wasActive = Layers[layerIndex].IsActive;
 
             StorageBasedChange change = new StorageBasedChange(this, new[] { Layers[layerIndex] });
-
             UndoManager.AddUndoChange(
                 change.ToChange(RestoreLayersProcess, RemoveLayerProcess, new object[] { Layers[layerIndex].LayerGuid }, "Remove layer"));
+
             Layers.RemoveAt(layerIndex);
             if (wasActive)
             {

+ 5 - 1
PixiEditor/Models/Undo/StorageBasedChange.cs

@@ -54,7 +54,11 @@ namespace PixiEditor.Models.Undo
             foreach (var layer in layersToStore)
             {
                 UndoLayer storedLayer = StoredLayers[i];
-                Exporter.SaveAsPng(storedLayer.StoredPngLayerName, storedLayer.Width, storedLayer.Height, layer.LayerBitmap);
+                if (Directory.Exists(Path.GetDirectoryName(storedLayer.StoredPngLayerName)))
+                {
+                    Exporter.SaveAsPng(storedLayer.StoredPngLayerName, storedLayer.Width, storedLayer.Height, layer.LayerBitmap);
+                }
+
                 i++;
             }
 

+ 1 - 0
PixiEditorTests/ModelsTests/ControllersTests/BitmapManagerTests.cs

@@ -3,6 +3,7 @@ using PixiEditor.Models.Controllers;
 using PixiEditor.Models.DataHolders;
 using PixiEditor.Models.Position;
 using PixiEditor.Models.Tools;
+using PixiEditor.Models.Undo;
 using Xunit;
 
 namespace PixiEditorTests.ModelsTests.ControllersTests