public void BS_ReverseWrapRequiresDECAWM() { //esccmd.DECRESET (esccmd.DECAWM) //esccmd.DECSET (esccmd.ReverseWraparound) //esccmd.CUP (Point (1, 3)) //escio.Write (esc.BS) //AssertEQ (GetCursorPosition (), Point (1, 3)) //esccmd.DECSET (esccmd.DECAWM) //esccmd.DECRESET (esccmd.ReverseWraparound) //esccmd.CUP (Point (1, 3)) //escio.Write (esc.BS) //AssertEQ (GetCursorPosition (), Point (1, 3)) // TODO: DECSET wrappers Terminal.Wraparound = false; Terminal.csiDECSET(CsiCommandCodes.ReverseWraparound); Terminal.csiCUP((1, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(1, 3); Terminal.Wraparound = true; Terminal.ReverseWraparound = false; Terminal.csiCUP((1, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(1, 3); }
public void BS_NoWrapByDefault() { //esccmd.CUP(Point(1, 3)) //escio.Write(esc.BS) //AssertEQ(GetCursorPosition(), Point(1, 3)) Terminal.csiCUP((1, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(1, 3); }
public void BS_StopsAtOrigin() { //esccmd.CUP(Point(1, 1)) //escio.Write(esc.BS) //AssertEQ(GetCursorPosition(), Point(1, 1)) Terminal.csiCUP((1, 1)); Terminal.Backspace(); Terminal.AssertCursorPosition(1, 1); }
public void BS_Basic() { //esccmd.CUP(Point(3, 3)) //escio.Write(esc.BS) //AssertEQ (GetCursorPosition(), Point(2, 3)) Terminal.csiCUP((3, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(2, 3); }
public void BS_MovesLeftWhenLeftOfLeftMargin() { //esccmd.DECSET(esccmd.DECLRMM) //esccmd.DECSLRM(5, 10) //esccmd.CUP(Point(4, 1)) //escio.Write(esc.BS) //esccmd.DECRESET(esccmd.DECLRMM) //AssertEQ(GetCursorPosition(), Point(3, 1)) Terminal.csiDECSET(CsiCommandCodes.DECLRMM); Terminal.csiDECSLRM(5, 10); Terminal.csiCUP((4, 1)); Terminal.Backspace(); Terminal.MarginMode = false; Terminal.AssertCursorPosition(3, 1); }
public void BS_WrapsInWraparoundMode() { //esccmd.DECSET (esccmd.DECAWM) //esccmd.DECSET (esccmd.ReverseWraparound) //esccmd.CUP (Point (1, 3)) //escio.Write (esc.BS) //size = GetScreenSize () //AssertEQ (GetCursorPosition (), Point (size.width (), 2)) Terminal.csiDECSET(CsiCommandCodes.DECAWM); Terminal.csiDECSET(CsiCommandCodes.ReverseWraparound); Terminal.csiCUP((1, 3)); Terminal.Backspace(); var sz = Terminal.GetScreenSize(); Terminal.AssertCursorPosition(sz.cols, 2); }
public void BS_ReverseWrapWithLeftRight() { //esccmd.DECSET(esccmd.DECAWM) //esccmd.DECSET(esccmd.ReverseWraparound) //esccmd.DECSET(esccmd.DECLRMM) //esccmd.DECSLRM(5, 10) //esccmd.CUP(Point(5, 3)) //escio.Write(esc.BS) //AssertEQ(GetCursorPosition(), Point(10, 2)) Terminal.csiDECSET(CsiCommandCodes.DECAWM); Terminal.csiDECSET(CsiCommandCodes.ReverseWraparound); Terminal.csiDECSET(CsiCommandCodes.DECLRMM); Terminal.csiDECSLRM(5, 10); Terminal.csiCUP((5, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(10, 2); }
public void BS_CursorStartsInDoWrapPosition() { //"""Cursor is right of right edge of screen.""" //size = GetScreenSize() //esccmd.CUP(Point(size.width() - 1, 1)) //escio.Write("ab") //escio.Write(esc.BS) //escio.Write("X") //AssertScreenCharsInRectEqual(Rect(size.width() - 1, 1, size.width(), 1), ["Xb"]) var size = Terminal.GetScreenSize(); Terminal.csiCUP((size.cols - 1, 1)); Terminal.Feed("ab"); Terminal.Backspace(); Terminal.Feed("X"); AssertScreenCharsInRectEqual((size.cols - 1, 1, size.cols, 1), "Xb"); }
public void BS_ReversewrapFromLeftEdgeToRightMargin() { //"""If cursor starts at left edge of screen, left of left margin, backspace //takes it to the right margin.""" //esccmd.DECSET(esccmd.DECAWM) //esccmd.DECSET(esccmd.ReverseWraparound) //esccmd.DECSET(esccmd.DECLRMM) //esccmd.DECSLRM(5, 10) //esccmd.CUP(Point(1, 3)) //escio.Write(esc.BS) //AssertEQ(GetCursorPosition(), Point(10, 2)) Terminal.csiDECSET(CsiCommandCodes.DECAWM); Terminal.csiDECSET(CsiCommandCodes.ReverseWraparound); Terminal.csiDECSET(CsiCommandCodes.DECLRMM); Terminal.csiDECSLRM(5, 10); Terminal.csiCUP((1, 3)); Terminal.Backspace(); Terminal.AssertCursorPosition(10, 2); }