More test coverage
Some checks failed
timw4mail/gilo/pipeline/head There was a failure building this commit
Some checks failed
timw4mail/gilo/pipeline/head There was a failure building this commit
This commit is contained in:
parent
1c424fad74
commit
5cb2047762
@ -75,6 +75,10 @@ func (e *editor) ProcessKeypress() bool {
|
|||||||
|
|
||||||
return false
|
return false
|
||||||
|
|
||||||
|
case key.Enter:
|
||||||
|
|
||||||
|
case key.Backspace, key.Ctrl('h'):
|
||||||
|
|
||||||
case key.Esc:
|
case key.Esc:
|
||||||
// Modifier keys that return ANSI escape sequences
|
// Modifier keys that return ANSI escape sequences
|
||||||
str := parseEscapeSequence()
|
str := parseEscapeSequence()
|
||||||
|
@ -10,24 +10,52 @@ func TestNew(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//type moveCursor struct {
|
type moveCursor struct {
|
||||||
// key string
|
keys []string
|
||||||
// editor *editor
|
withFile bool
|
||||||
//}
|
cursor *point
|
||||||
//
|
}
|
||||||
//var cursorTests = []moveCursor{
|
|
||||||
// {"\x1b", New()},
|
var cursorTests = []moveCursor{
|
||||||
//}
|
{[]string{"\x1b"}, false, &point{0,0}},
|
||||||
//
|
{[]string{keyRight}, true, &point{1,0}},
|
||||||
//func TestMoveCursor(t *testing.T) {
|
{[]string{keyEnd}, true, &point{14, 0}},
|
||||||
// for _, test := range cursorTests {
|
{[]string{keyEnd, keyHome}, true, &point{0, 0}},
|
||||||
// e := New()
|
{[]string{keyRight, keyLeft}, true, &point{0, 0}},
|
||||||
// e.moveCursor(test.key)
|
{[]string{keyDown, keyUp}, true, &point{0, 0}},
|
||||||
// want := test.editor
|
{[]string{keyPageUp}, true, &point{0, 0}},
|
||||||
// got := e
|
}
|
||||||
//
|
|
||||||
// if got != want {
|
func TestMoveCursor(t *testing.T) {
|
||||||
// t.Errorf("Output %v not equal to expected %v for input %q", got, want, test.key)
|
for _, test := range cursorTests {
|
||||||
// }
|
e := New()
|
||||||
// }
|
|
||||||
//}
|
if test.withFile {
|
||||||
|
e.Open("editor.go")
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, key := range test.keys {
|
||||||
|
e.moveCursor(key)
|
||||||
|
}
|
||||||
|
want := test.cursor
|
||||||
|
got := e.cursor
|
||||||
|
|
||||||
|
if got.x != want.x || got.y != want.y {
|
||||||
|
t.Errorf("Output %v not equal to expected %v for input %q", got, want, test.keys)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestInsertChar(t *testing.T) {
|
||||||
|
e := New()
|
||||||
|
e.insertChar('q')
|
||||||
|
|
||||||
|
if e.document.rowCount() != 1 {
|
||||||
|
t.Errorf("A row was not created when the character was inserted")
|
||||||
|
}
|
||||||
|
|
||||||
|
row := e.document.rows[0]
|
||||||
|
if row.size() != 1 {
|
||||||
|
t.Errorf("Failed to add character to row. Row: %v", row)
|
||||||
|
}
|
||||||
|
}
|
@ -5,7 +5,9 @@ package key
|
|||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
const (
|
const (
|
||||||
Esc = '\x1b'
|
Backspace = 0x7f
|
||||||
|
Esc = 0x1b
|
||||||
|
Enter = '\r'
|
||||||
)
|
)
|
||||||
|
|
||||||
// Is this an ASCII character?
|
// Is this an ASCII character?
|
||||||
|
Loading…
Reference in New Issue
Block a user