Refactor application structure and add unit tests
Added: - New `ProgressService` class for managing progress indicators. - New `AssetDatabase`, `AssetOpenHandlerAttribute`, and `AsyncAssetOpenHandlerAttribute` classes for asset handling. - `Ghost.UnitTest` project for unit testing with associated files and configurations. Changed: - `ActivationHandler` class to ensure correct handling of `LaunchActivatedEventArgs`. - `App.xaml.cs` to register `INotificationService` and `IProgressService`, replacing `StackedNotificationService`. - `OnLaunched` method in `App.xaml.cs` to correctly call `ActivationHandler.Handle(args)` and start the host. - `INavigationAware` interface from internal to public for broader access. - `EditorState.cs` to activate `EditorApplication` with the current service provider. - Property names in `AssetItem` and `ExplorerItem` structs to `Name` and `FullName`. - `NotificationService` class to implement `INotificationService` and refactor notification handling. - `AssetPathToGlyphConverter` to handle file extensions consistently. - Bindings in `ProjectPage.xaml` and `ProjectPage.xaml.cs` to use `FullName` instead of `Path`. - `EngineEditorWindow` and `LandingWindow` classes to utilize new notification and progress services. - `Logger` class to include a new method for logging errors with exceptions. Updated: - Manifest files and project files to reflect new structure and dependencies. - Solution file `GhostEngine.sln` to include the new unit test project. - Added several new test classes and methods in `UnitTests.cs`.
This commit is contained in:
@@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.14.35906.104
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.App", "Ghost.InternalEditor\Ghost.App.csproj", "{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.App", "Ghost.App\Ghost.App.csproj", "{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Engine", "Ghost.Engine\Ghost.Engine.csproj", "{1ED62E09-8F36-4671-896B-16C1C1530202}"
|
||||
EndProject
|
||||
@@ -11,13 +11,13 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Data", "Ghost.Data\Gh
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Entities", "Ghost.Entities\Ghost.Entities.csproj", "{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Test", "Ghost.Test\Ghost.Test.csproj", "{276D09BD-7C8B-4D59-803D-96CCD83D41B0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Graphics", "Ghost.Graphics\Ghost.Graphics.csproj", "{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Generator", "Ghost.Generator\Ghost.Generator.csproj", "{996ABECC-1C5A-4F07-B8AC-D063F91962CB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Editor", "Ghost.Editor\Ghost.Editor.csproj", "{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Editor", "Ghost.Editor\Ghost.Editor.csproj", "{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.UnitTest", "Ghost.UnitTest\Ghost.UnitTest.csproj", "{4179873E-8174-4D17-9584-8C223BA71366}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@@ -83,18 +83,6 @@ Global
|
||||
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x64.Build.0 = Release|Any CPU
|
||||
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x86.Build.0 = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|ARM64.ActiveCfg = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|ARM64.Build.0 = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|ARM64.ActiveCfg = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|ARM64.Build.0 = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|x64.Build.0 = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{276D09BD-7C8B-4D59-803D-96CCD83D41B0}.Release|x86.Build.0 = Release|Any CPU
|
||||
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|ARM64.ActiveCfg = Debug|Any CPU
|
||||
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|ARM64.Build.0 = Debug|Any CPU
|
||||
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
@@ -119,18 +107,36 @@ Global
|
||||
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x64.Build.0 = Release|Any CPU
|
||||
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x86.Build.0 = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|ARM64.ActiveCfg = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|ARM64.Build.0 = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|ARM64.ActiveCfg = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|ARM64.Build.0 = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|x64.Build.0 = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{E0BD59AD-0DB3-45CA-A906-0BDC0A26DD63}.Release|x86.Build.0 = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|ARM64.ActiveCfg = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|ARM64.Build.0 = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|ARM64.ActiveCfg = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|ARM64.Build.0 = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x64.Build.0 = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x86.Build.0 = Release|Any CPU
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.Deploy.0 = Debug|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.Build.0 = Debug|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.Deploy.0 = Debug|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.Build.0 = Debug|x86
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.Deploy.0 = Debug|x86
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.Deploy.0 = Release|ARM64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.ActiveCfg = Release|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.Build.0 = Release|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.Deploy.0 = Release|x64
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.ActiveCfg = Release|x86
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.Build.0 = Release|x86
|
||||
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.Deploy.0 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
Reference in New Issue
Block a user