github.com/markusbkk/elvish@v0.0.0-20231204143114-91dc52438621/pkg/edit/command_api_test.go (about)

     1  package edit
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/markusbkk/elvish/pkg/cli/term"
     7  	"github.com/markusbkk/elvish/pkg/ui"
     8  )
     9  
    10  func TestCommandMode(t *testing.T) {
    11  	f := setup(t)
    12  
    13  	evals(f.Evaler, `set edit:insert:binding[Ctrl-'['] = $edit:command:start~`)
    14  	feedInput(f.TTYCtrl, "echo")
    15  	f.TTYCtrl.Inject(term.K('[', ui.Ctrl))
    16  	f.TestTTY(t,
    17  		"~> echo", Styles,
    18  		"   vvvv", term.DotHere, "\n",
    19  		" COMMAND ", Styles,
    20  		"*********",
    21  	)
    22  
    23  	f.TTYCtrl.Inject(term.K('b'))
    24  	f.TestTTY(t,
    25  		"~> ", term.DotHere,
    26  		"echo\n", Styles,
    27  		"vvvv",
    28  		" COMMAND ", Styles,
    29  		"*********",
    30  	)
    31  }