aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2017-07-16 23:33:19 +0200
committerDimitri Sokolyuk <demon@dim13.org>2017-07-16 23:33:19 +0200
commit8317dc165124fe8894858a33e8621016240dc7ca (patch)
treea58dde68dea5627ff713ab55c36ba3bd19fe2378
parentef34636aee6cda6c002dd5b871ecfa0fb54e7ed0 (diff)
fix test
-rw-r--r--zhead/header.go8
-rw-r--r--zhead/header_test.go32
2 files changed, 33 insertions, 7 deletions
diff --git a/zhead/header.go b/zhead/header.go
index 90678a2..bb4f1cb 100644
--- a/zhead/header.go
+++ b/zhead/header.go
@@ -16,7 +16,7 @@ const header = `{{define "header" -}}
date={{.Date.Format "2006-01-02T15:04:05Z07:00"}}
key={{.KeyFile}}
algorithm={{.Alg}}
-bocksize={{.BlockSize}}
+blocksize={{.BlockSize}}
{{range .Sums}}{{printf "%x" .}}
{{end}}{{end}}`
@@ -62,7 +62,7 @@ func Parse(r io.Reader) (Header, error) {
case strings.HasPrefix(line, "algorithm="):
h.Alg = line[10:]
case strings.HasPrefix(line, "blocksize="):
- i, err := strconv.Atoi(line[9:])
+ i, err := strconv.Atoi(line[10:])
if err != nil {
return Header{}, err
}
@@ -78,7 +78,9 @@ func Parse(r io.Reader) (Header, error) {
if err != nil {
return Header{}, err
}
- h.Sums = append(h.Sums, sum)
+ if len(sum) > 0 {
+ h.Sums = append(h.Sums, sum)
+ }
}
}
return h, scanner.Err()
diff --git a/zhead/header_test.go b/zhead/header_test.go
index bd3d0fa..a6af80f 100644
--- a/zhead/header_test.go
+++ b/zhead/header_test.go
@@ -2,14 +2,17 @@ package zhead
import (
"bytes"
- "reflect"
"testing"
"time"
)
func TestHeader(t *testing.T) {
+ date, err := time.Parse(time.UnixDate, "Mon Jan 2 15:04:05 UTC 2006")
+ if err != nil {
+ t.Fatal(err)
+ }
h := Header{
- Date: time.Now().UTC(),
+ Date: date,
KeyFile: "some.key",
Alg: DefaultAlg,
BlockSize: DefaultBlockSize,
@@ -26,7 +29,28 @@ func TestHeader(t *testing.T) {
if err != nil {
t.Fatal(err)
}
- if !reflect.DeepEqual(head, h) {
- t.Errorf("got %v; want %v", head, h)
+ cmp(t, head, h)
+}
+
+func cmp(t *testing.T, got, want Header) {
+ if !got.Date.Equal(want.Date) {
+ t.Errorf("got %v; want %v", got.Date, want.Date)
+ }
+ if got.KeyFile != want.KeyFile {
+ t.Errorf("got %v; want %v", got.KeyFile, want.KeyFile)
+ }
+ if got.Alg != want.Alg {
+ t.Errorf("got %v; want %v", got.Alg, want.Alg)
+ }
+ if got.BlockSize != want.BlockSize {
+ t.Errorf("got %v; want %v", got.BlockSize, want.BlockSize)
+ }
+ if len(got.Sums) != len(want.Sums) {
+ t.Fatalf("got %v; want %v", len(got.Sums), len(want.Sums))
+ }
+ for i := 0; i < len(got.Sums); i++ {
+ if !bytes.Equal(got.Sums[i], want.Sums[i]) {
+ t.Errorf("got %v; want %v", got.Sums[i], want.Sums[i])
+ }
}
}