From a2daa5118f796aad503ede1f83177046ebd2c3dd Mon Sep 17 00:00:00 2001 From: ben_singer Date: Mon, 18 Nov 2024 12:28:24 +0000 Subject: [PATCH] Fixed build error --- NetAF.Tests/Logic/Game_Tests.cs | 3 ++- NetAF.Tests/Logic/Modes/ReactionMode_Tests.cs | 3 ++- .../ConsoleReactionFrameBuilder_Tests.cs | 17 +++++++++++++++-- NetAF/Logic/Game.cs | 2 +- NetAF/Logic/Modes/ReactionMode.cs | 10 +++++----- 5 files changed, 25 insertions(+), 10 deletions(-) diff --git a/NetAF.Tests/Logic/Game_Tests.cs b/NetAF.Tests/Logic/Game_Tests.cs index ca7bb3ab..68043118 100644 --- a/NetAF.Tests/Logic/Game_Tests.cs +++ b/NetAF.Tests/Logic/Game_Tests.cs @@ -8,6 +8,7 @@ using Microsoft.VisualStudio.TestTools.UnitTesting; using NetAF.Logic.Modes; using NetAF.Logic.Configuration; +using NetAF.Commands; namespace NetAF.Tests.Logic { @@ -145,7 +146,7 @@ public void GivenSimpleGame_WhenChangeModeToTransition_ThenNoExceptionThrown() OverworldMaker overworldMaker = new(string.Empty, string.Empty, regionMaker); var game = Game.Create(new(string.Empty, string.Empty, string.Empty), string.Empty, AssetGenerator.Retained(overworldMaker.Make(), new PlayableCharacter(string.Empty, string.Empty)), GameEndConditions.NoEnd, TestGameConfiguration.Default).Invoke(); - game.ChangeMode(new ReactionMode("Test", "Test")); + game.ChangeMode(new ReactionMode("Test", Reaction.Inform)); }); } diff --git a/NetAF.Tests/Logic/Modes/ReactionMode_Tests.cs b/NetAF.Tests/Logic/Modes/ReactionMode_Tests.cs index 7bc97fbb..5266f289 100644 --- a/NetAF.Tests/Logic/Modes/ReactionMode_Tests.cs +++ b/NetAF.Tests/Logic/Modes/ReactionMode_Tests.cs @@ -4,6 +4,7 @@ using NetAF.Assets.Locations; using NetAF.Utilities; using NetAF.Logic.Modes; +using NetAF.Commands; namespace NetAF.Tests.Logic.Modes { @@ -20,7 +21,7 @@ public void GivenNew_WhenRenderWithNonEmptyString_ThenNoExceptionThrown() regionMaker[0, 0, 0] = room; OverworldMaker overworldMaker = new(string.Empty, string.Empty, regionMaker); var game = Game.Create(new(string.Empty, string.Empty, string.Empty), string.Empty, AssetGenerator.Retained(overworldMaker.Make(), new PlayableCharacter(string.Empty, string.Empty)), GameEndConditions.NoEnd, TestGameConfiguration.Default).Invoke(); - var mode = new ReactionMode(string.Empty, "a"); + var mode = new ReactionMode(string.Empty, new Reaction(ReactionResult.Inform, "a")); mode.Render(game); }); diff --git a/NetAF.Tests/Rendering/FrameBuilders/Console/ConsoleReactionFrameBuilder_Tests.cs b/NetAF.Tests/Rendering/FrameBuilders/Console/ConsoleReactionFrameBuilder_Tests.cs index dd035d14..a14b6ec1 100644 --- a/NetAF.Tests/Rendering/FrameBuilders/Console/ConsoleReactionFrameBuilder_Tests.cs +++ b/NetAF.Tests/Rendering/FrameBuilders/Console/ConsoleReactionFrameBuilder_Tests.cs @@ -9,15 +9,28 @@ namespace NetAF.Tests.Rendering.FrameBuilders.Console public class ConsoleReactionFrameBuilder_Tests { [TestMethod] - public void GivenDefaults_WhenBuild_ThenNoException() + public void GivenDefaultsAndRenderErrorMessage_WhenBuild_ThenNoException() { Assertions.NoExceptionThrown(() => { var gridStringBuilder = new GridStringBuilder(); var builder = new ConsoleReactionFrameBuilder(gridStringBuilder); - builder.Build(string.Empty, string.Empty, new Size(80, 50)); + builder.Build(string.Empty, string.Empty, true, new Size(80, 50)); }); } + + [TestMethod] + public void GivenDefaultsAndRenderNonMessage_WhenBuild_ThenNoException() + { + Assertions.NoExceptionThrown(() => + { + var gridStringBuilder = new GridStringBuilder(); + var builder = new ConsoleReactionFrameBuilder(gridStringBuilder); + + builder.Build(string.Empty, string.Empty, false, new Size(80, 50)); + }); + } + } } diff --git a/NetAF/Logic/Game.cs b/NetAF/Logic/Game.cs index f1a08598..f36d35d9 100644 --- a/NetAF/Logic/Game.cs +++ b/NetAF/Logic/Game.cs @@ -193,7 +193,7 @@ private void HandleReaction(Reaction reaction) if (reaction.Result == ReactionResult.Error || reaction.Result == ReactionResult.Inform) { // display the reaction - ChangeMode(new ReactionMode(Overworld.CurrentRegion.CurrentRoom.Identifier.Name, reaction.Description)); + ChangeMode(new ReactionMode(Overworld.CurrentRegion.CurrentRoom.Identifier.Name, reaction)); } else if (reaction.Result != ReactionResult.GameModeChanged && Mode.Type == GameModeType.Information) { diff --git a/NetAF/Logic/Modes/ReactionMode.cs b/NetAF/Logic/Modes/ReactionMode.cs index db07f5c4..33877654 100644 --- a/NetAF/Logic/Modes/ReactionMode.cs +++ b/NetAF/Logic/Modes/ReactionMode.cs @@ -1,4 +1,5 @@ -using NetAF.Interpretation; +using NetAF.Commands; +using NetAF.Interpretation; namespace NetAF.Logic.Modes { @@ -6,9 +7,8 @@ namespace NetAF.Logic.Modes /// Provides a display mode for reaction. /// /// The title. - /// The message. - /// If the message is an error.. - public sealed class ReactionMode(string title, string message, bool isError) : IGameMode + /// The reaction. + public sealed class ReactionMode(string title, Reaction reaction) : IGameMode { #region Implementation of IGameMode @@ -28,7 +28,7 @@ public sealed class ReactionMode(string title, string message, bool isError) : I /// The game. public void Render(Game game) { - var frame = game.Configuration.FrameBuilders.ReactionModeFrameBuilder.Build(title, message, isError, game.Configuration.DisplaySize); + var frame = game.Configuration.FrameBuilders.ReactionModeFrameBuilder.Build(title, reaction.Description, reaction.Result == ReactionResult.Error, game.Configuration.DisplaySize); game.Configuration.Adapter.RenderFrame(frame); }