diff options
author | Máximo Cuadros Ortiz <mcuadros@gmail.com> | 2015-04-05 23:34:43 +0200 |
---|---|---|
committer | Máximo Cuadros Ortiz <mcuadros@gmail.com> | 2015-04-06 04:12:04 +0200 |
commit | 5d7303c49ac984a9fec60523f2d5297682e16646 (patch) | |
tree | 53ac3a7eae7e271e58cc37ab1b7d2c27f3f2a9e5 /packfile/objects_test.go | |
download | go-git-5d7303c49ac984a9fec60523f2d5297682e16646.tar.gz |
some refactor in folders and crawler
Diffstat (limited to 'packfile/objects_test.go')
-rw-r--r-- | packfile/objects_test.go | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/packfile/objects_test.go b/packfile/objects_test.go new file mode 100644 index 0000000..07609e3 --- /dev/null +++ b/packfile/objects_test.go @@ -0,0 +1,55 @@ +package packfile + +import ( + "testing" + "time" + + "github.com/stretchr/testify/assert" +) + +func TestCalculateHash(t *testing.T) { + assert.Equal(t, "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", calculateHash("blob", []byte(""))) + assert.Equal(t, "8ab686eafeb1f44702738c8b0f24f2567c36da6d", calculateHash("blob", []byte("Hello, World!\n"))) +} + +func TestSignature(t *testing.T) { + cases := map[string]Signature{ + `Foo Bar <foo@bar.com> 1257894000 +0100`: { + Name: "Foo Bar", + Email: "foo@bar.com", + When: time.Unix(1257894000, 0), + }, + `Foo Bar <> 1257894000 +0100`: { + Name: "Foo Bar", + Email: "", + When: time.Unix(1257894000, 0), + }, + ` <> 1257894000`: { + Name: "", + Email: "", + When: time.Unix(1257894000, 0), + }, + `Foo Bar <foo@bar.com>`: { + Name: "Foo Bar", + Email: "foo@bar.com", + When: time.Time{}, + }, + ``: { + Name: "", + Email: "", + When: time.Time{}, + }, + `<`: { + Name: "", + Email: "", + When: time.Time{}, + }, + } + + for raw, exp := range cases { + got := NewSignature([]byte(raw)) + assert.Equal(t, exp.Name, got.Name) + assert.Equal(t, exp.Email, got.Email) + assert.Equal(t, exp.When.Unix(), got.When.Unix()) + } +} |