delve/command/command_test.go

69 lines
1.3 KiB
Go
Raw Normal View History

2014-05-20 21:28:24 +00:00
package command
2014-05-20 23:09:34 +00:00
import (
"fmt"
"testing"
)
2014-05-20 21:28:24 +00:00
func TestCommandDefault(t *testing.T) {
var (
cmds = Commands{make(map[string]cmdfunc)}
cmd = cmds.Find("non-existant-command")
)
err := cmd()
if err == nil {
t.Fatal("cmd() did not default")
}
if err.Error() != "command not available" {
t.Fatal("wrong command output")
}
}
2014-05-20 23:09:34 +00:00
func TestCommandRegister(t *testing.T) {
cmds := Commands{make(map[string]cmdfunc)}
2014-05-27 15:44:29 +00:00
cmds.Register("foo", func(args ...string) error { return fmt.Errorf("registered command") })
2014-05-20 23:09:34 +00:00
cmd := cmds.Find("foo")
err := cmd()
if err == nil {
t.Fatal("cmd was not found")
}
if err.Error() != "registered command" {
t.Fatal("wrong command output")
}
}
func TestCommandReplay(t *testing.T) {
cmds := DebugCommands()
2014-05-27 15:44:29 +00:00
cmds.Register("foo", func(args ...string) error { return fmt.Errorf("registered command") })
cmd := cmds.Find("foo")
err := cmd()
if err.Error() != "registered command" {
t.Fatal("wrong command output")
}
cmd = cmds.Find("")
err = cmd()
if err.Error() != "registered command" {
t.Fatal("wrong command output")
}
}
func TestCommandReplayWithoutPreviousCommand(t *testing.T) {
var (
cmds = DebugCommands()
cmd = cmds.Find("")
err = cmd()
)
if err != nil {
t.Error("Null command not returned", err)
}
}