-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathperformer_execute_test.go
45 lines (37 loc) · 1.25 KB
/
performer_execute_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package ansicode
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestPerformer_Execute(t *testing.T) {
type args struct {
r byte
}
type want struct {
mock *handlerMock
}
tests := []struct {
name string
args args
want want
}{
{name: "HT", args: args{r: byte(c0HT)}, want: want{mock: m("Tab", 1)}},
{name: "BS", args: args{r: byte(c0BS)}, want: want{mock: m("Backspace")}},
{name: "CR", args: args{r: byte(c0CR)}, want: want{mock: m("CarriageReturn")}},
{name: "LF", args: args{r: byte(c0LF)}, want: want{mock: m("LineFeed")}},
{name: "VT", args: args{r: byte(c0VT)}, want: want{mock: m("LineFeed")}},
{name: "FF", args: args{r: byte(c0FF)}, want: want{mock: m("LineFeed")}},
{name: "BEL", args: args{r: byte(c0BEL)}, want: want{mock: m("Bell")}},
{name: "SUB", args: args{r: byte(c0SUB)}, want: want{mock: m("Substitute")}},
{name: "SO", args: args{r: byte(c0SO)}, want: want{mock: m("SetActiveCharset", 1)}},
{name: "SI", args: args{r: byte(c0SI)}, want: want{mock: m("SetActiveCharset", 0)}},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
handler := &handlerMock{}
performer := NewPerformer(handler)
performer.Execute(tt.args.r)
assert.Equal(t, tt.want.mock, handler)
})
}
}