shithub: furgit

ref: d314d1f7e933ca83081eec289aa0cb6e75a7eeac
dir: /protocol/pktline/parse_length_header_test.go/

View raw version
package pktline_test

import (
	"errors"
	"testing"

	"codeberg.org/lindenii/furgit/protocol/pktline"
)

func TestParseLengthHeader(t *testing.T) {
	t.Parallel()

	n, err := pktline.ParseLengthHeader([4]byte{'0', '0', '0', '4'})
	if err != nil {
		t.Fatalf("unexpected error: %v", err)
	}

	if n != 4 {
		t.Fatalf("got %d, want 4", n)
	}

	_, err = pktline.ParseLengthHeader([4]byte{'0', '0', '0', 'x'})
	if !errors.Is(err, pktline.ErrInvalidLength) {
		t.Fatalf("got err %v, want ErrInvalidLength", err)
	}
}