src.elv.sh@v0.21.0-dev.0.20240515223629-06979efb9a2a/pkg/edit/command_api_test.go (about)

     1  package edit
     2  
     3  import (
     4  	"testing"
     5  
     6  	"src.elv.sh/pkg/cli/term"
     7  	"src.elv.sh/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  }