5 "github.com/stretchr/testify/assert"
9 func TestReadUser(t *testing.T) {
20 name: "returns expected User struct",
45 for _, tt := range tests {
46 t.Run(tt.name, func(t *testing.T) {
47 got, err := ReadUser(tt.args.b)
48 if (err != nil) != tt.wantErr {
49 t.Errorf("ReadUser() error = %v, wantErr %v", err, tt.wantErr)
52 if !assert.Equal(t, tt.want, got) {
53 t.Errorf("ReadUser() got = %v, want %v", got, tt.want)
59 func TestDecodeUserString(t *testing.T) {
66 wantDecodedString string
69 name: "decodes bytes to guest",
71 encodedString: []byte{
72 0x98, 0x8a, 0x9a, 0x8c, 0x8b,
75 wantDecodedString: "guest",
78 for _, tt := range tests {
79 t.Run(tt.name, func(t *testing.T) {
80 if gotDecodedString := DecodeUserString(tt.args.encodedString); gotDecodedString != tt.wantDecodedString {
81 t.Errorf("DecodeUserString() = %v, want %v", gotDecodedString, tt.wantDecodedString)
87 func TestNegatedUserString(t *testing.T) {
97 name: "encodes bytes to expected string",
99 encodedString: []byte("guest"),
101 want: []byte{0x98, 0x8a, 0x9a, 0x8c, 0x8b},
104 name: "encodes bytes with numerals to expected string",
106 encodedString: []byte("foo1"),
108 want: []byte{0x99, 0x90, 0x90, 0xce},
111 for _, tt := range tests {
112 t.Run(tt.name, func(t *testing.T) {
113 if got := negateString(tt.args.encodedString); !bytes.Equal(got, tt.want) {
114 t.Errorf("NegatedUserString() = %x, want %x", got, tt.want)