mirror of
https://github.com/taigrr/wtf
synced 2025-01-18 04:03:14 -08:00
add tests for keyboard_widget
This commit is contained in:
parent
d7b0669796
commit
b934096832
@ -5,6 +5,8 @@ import (
|
||||
|
||||
"github.com/gdamore/tcell"
|
||||
"github.com/rivo/tview"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/wtfutil/wtf/cfg"
|
||||
)
|
||||
|
||||
func test() {}
|
||||
@ -13,7 +15,12 @@ func testKeyboardWidget() KeyboardWidget {
|
||||
keyWid := NewKeyboardWidget(
|
||||
tview.NewApplication(),
|
||||
tview.NewPages(),
|
||||
nil,
|
||||
&cfg.Common{
|
||||
Module: cfg.Module{
|
||||
Name: "testWidget",
|
||||
Type: "testType",
|
||||
},
|
||||
},
|
||||
)
|
||||
return keyWid
|
||||
}
|
||||
@ -128,7 +135,7 @@ func Test_InputCapture(t *testing.T) {
|
||||
expected: tcell.NewEventKey(tcell.KeyRune, 'a', tcell.ModNone),
|
||||
},
|
||||
{
|
||||
name: "with defined event",
|
||||
name: "with defined event and char handler",
|
||||
before: func(keyWid KeyboardWidget) KeyboardWidget {
|
||||
keyWid.SetKeyboardChar("a", test, "help")
|
||||
return keyWid
|
||||
@ -136,6 +143,15 @@ func Test_InputCapture(t *testing.T) {
|
||||
event: tcell.NewEventKey(tcell.KeyRune, 'a', tcell.ModNone),
|
||||
expected: nil,
|
||||
},
|
||||
{
|
||||
name: "with defined event and key handler",
|
||||
before: func(keyWid KeyboardWidget) KeyboardWidget {
|
||||
keyWid.SetKeyboardKey(tcell.KeyRune, test, "help")
|
||||
return keyWid
|
||||
},
|
||||
event: tcell.NewEventKey(tcell.KeyRune, 'a', tcell.ModNone),
|
||||
expected: nil,
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
@ -157,3 +173,43 @@ func Test_InputCapture(t *testing.T) {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func Test_InitializeCommonControls(t *testing.T) {
|
||||
t.Run("nil refreshFunc", func(t *testing.T) {
|
||||
keyWid := testKeyboardWidget()
|
||||
keyWid.InitializeCommonControls(nil)
|
||||
|
||||
assert.NotNil(t, keyWid.charMap["/"])
|
||||
assert.Nil(t, keyWid.charMap["r"])
|
||||
})
|
||||
|
||||
t.Run("non-nil refreshFunc", func(t *testing.T) {
|
||||
keyWid := testKeyboardWidget()
|
||||
keyWid.InitializeCommonControls(func() {})
|
||||
|
||||
assert.NotNil(t, keyWid.charMap["r"])
|
||||
})
|
||||
}
|
||||
|
||||
func Test_HelpText(t *testing.T) {
|
||||
keyWid := testKeyboardWidget()
|
||||
keyWid.SetKeyboardChar("a", test, "a help")
|
||||
keyWid.SetKeyboardKey(tcell.KeyCtrlO, test, "keyCtrlO help")
|
||||
|
||||
assert.NotNil(t, keyWid.HelpText())
|
||||
}
|
||||
|
||||
func Test_SetView(t *testing.T) {
|
||||
keyWid := testKeyboardWidget()
|
||||
assert.Nil(t, keyWid.view)
|
||||
|
||||
view := &tview.TextView{}
|
||||
keyWid.SetView(view)
|
||||
assert.Equal(t, view, keyWid.view)
|
||||
}
|
||||
|
||||
func Test_ShowHelp(t *testing.T) {
|
||||
keyWid := testKeyboardWidget()
|
||||
|
||||
assert.NotPanics(t, func() { keyWid.ShowHelp() })
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user