Codebase list golang-github-moby-term / 920cc645-4af3-45e5-909f-1ab453f827ab/main ascii_test.go
920cc645-4af3-45e5-909f-1ab453f827ab/main

Tree @920cc645-4af3-45e5-909f-1ab453f827ab/main (Download .tar.gz)

ascii_test.go @920cc645-4af3-45e5-909f-1ab453f827ab/mainraw · history · blame

package term

import (
	"testing"

	"gotest.tools/v3/assert"
	is "gotest.tools/v3/assert/cmp"
)

func TestToBytes(t *testing.T) {
	codes, err := ToBytes("ctrl-a,a")
	assert.NilError(t, err)
	assert.Check(t, is.DeepEqual([]byte{1, 97}, codes))

	_, err = ToBytes("shift-z")
	assert.Check(t, is.ErrorContains(err, ""))

	codes, err = ToBytes("ctrl-@,ctrl-[,~,ctrl-o")
	assert.NilError(t, err)
	assert.Check(t, is.DeepEqual([]byte{0, 27, 126, 15}, codes))

	codes, err = ToBytes("DEL,+")
	assert.NilError(t, err)
	assert.Check(t, is.DeepEqual([]byte{127, 43}, codes))
}