public void EscapeCommandShouldTeleportActor() { // Arrange var pos = Player.Pos; var command = new EscapeCommand(); // Act GameService.HandleCommand(command, pos); // Assert Player.Pos.ShouldNotBe(pos); }
public void AcceptEscapeEscape(EscapeCommand escapeCommand, PrintContext parameter) { parameter.WriteLine("Escape: {0} ({1}) '{2}'", escapeCommand.Identifier, escapeCommand.Name, escapeCommand.DataRecord); }
public virtual void AcceptEscapeEscape(EscapeCommand escapeCommand, T parameter) { // intentionally left blank }
private EscapeSequenceDefinition(EscapeCommand command, string pattern, params string[] defaultValues) { Pattern = pattern; Command = command; DefaultValues = defaultValues; }
public void OnEscapeSequence(EscapeCommand command, ReadOnlySpan <byte> intermediates, IgnoredData ignored = default) { int index; switch (command) { case EscapeCommand.ConfigureAsciiCharSet: if (intermediates.Length > 0 && TryParseCharSetIndex(intermediates[0], out index)) { _activeCharSets[index] = CharSet.Ascii; } break; case EscapeCommand.ConfigureSpecialCharSet: if (intermediates.Length > 0 && TryParseCharSetIndex(intermediates[0], out index)) { _activeCharSets[index] = CharSet.SpecialCharacterAndLineDrawing; } break; case EscapeCommand.LineFeed: _events.LineFeed?.Invoke(); break; case EscapeCommand.NextLine: _events.LineFeed?.Invoke(); _events.CarriageReturn?.Invoke(); break; case EscapeCommand.ReverseIndex: _events.ReverseIndex?.Invoke(); break; case EscapeCommand.IdentifyTerminal: _events.IdentifyTerminal?.Invoke(); break; case EscapeCommand.ResetState: _events.ResetState?.Invoke(); break; case EscapeCommand.SaveCursorPosition: _events.SaveCursorPosition?.Invoke(); break; case EscapeCommand.DecTest when(intermediates.Length != 0 && intermediates[0] == '#'): _events.DecTest?.Invoke(); break; case EscapeCommand.RestoreCursorPosition when(intermediates.Length == 0 || intermediates[0] != '#'): _events.RestoreCursorPosition?.Invoke(); break; case EscapeCommand.SetKeypadApplicationMode: _events.SetKeypadApplicationMode?.Invoke(); break; case EscapeCommand.UnsetKeypadApplicationMode: _events.UnsetKeypadApplicationMode?.Invoke(); break; } }