diff --git a/src/TextForge.Desktop/Views/Components/TopCommandBarView.axaml b/src/TextForge.Desktop/Views/Components/TopCommandBarView.axaml
index 726987c..ac2db83 100644
--- a/src/TextForge.Desktop/Views/Components/TopCommandBarView.axaml
+++ b/src/TextForge.Desktop/Views/Components/TopCommandBarView.axaml
@@ -10,8 +10,10 @@
-
-
+
+
diff --git a/src/TextForge.Desktop/Views/MainWindow.axaml b/src/TextForge.Desktop/Views/MainWindow.axaml
index 65ea884..1406cd8 100644
--- a/src/TextForge.Desktop/Views/MainWindow.axaml
+++ b/src/TextForge.Desktop/Views/MainWindow.axaml
@@ -15,6 +15,10 @@
+
+
diff --git a/tests/TextForge.Desktop.Tests/TopCommandBarViewModelTests.cs b/tests/TextForge.Desktop.Tests/TopCommandBarViewModelTests.cs
index 4facd26..26f58bc 100644
--- a/tests/TextForge.Desktop.Tests/TopCommandBarViewModelTests.cs
+++ b/tests/TextForge.Desktop.Tests/TopCommandBarViewModelTests.cs
@@ -1,3 +1,4 @@
+using System.Windows.Input;
using TextForge.Core.Presentation;
using TextForge.Desktop.ViewModels;
using Xunit;
@@ -13,10 +14,40 @@ public void NewDocumentCommand_ResetsDocumentStateInMainViewModel()
var mainVM = new MainWindowViewModel(mockPaletteProvider);
var commandBarVM = new TopCommandBarViewModel(mainVM);
+ Assert.IsAssignableFrom(commandBarVM.NewDocumentCommand);
commandBarVM.NewDocumentCommand.Execute(null);
Assert.Equal("Untitled.txt", mainVM.CurrentDocumentTitle);
Assert.False(mainVM.IsModified);
Assert.Equal("Created new document: Untitled.txt", mainVM.StatusMessage);
}
+
+ [Fact]
+ public void OpenDocumentCommand_UpdatesStatusMessageInMainViewModel()
+ {
+ var mockPaletteProvider = new TestModulePaletteProvider();
+ var mainVM = new MainWindowViewModel(mockPaletteProvider);
+ var commandBarVM = new TopCommandBarViewModel(mainVM);
+
+ Assert.IsAssignableFrom(commandBarVM.OpenDocumentCommand);
+ commandBarVM.OpenDocumentCommand.Execute(null);
+
+ Assert.Equal("Opening document...", mainVM.StatusMessage);
+ }
+
+ [Fact]
+ public void SaveDocumentCommand_ResetsModifiedAndUpdatesStatusMessageInMainViewModel()
+ {
+ var mockPaletteProvider = new TestModulePaletteProvider();
+ var mainVM = new MainWindowViewModel(mockPaletteProvider);
+ mainVM.CurrentDocumentTitle = "Report.txt";
+ mainVM.IsModified = true;
+ var commandBarVM = new TopCommandBarViewModel(mainVM);
+
+ Assert.IsAssignableFrom(commandBarVM.SaveDocumentCommand);
+ commandBarVM.SaveDocumentCommand.Execute(null);
+
+ Assert.False(mainVM.IsModified);
+ Assert.Equal("Saved Report.txt", mainVM.StatusMessage);
+ }
}