dummies_test.go 939 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package hercules
  2. import (
  3. "io"
  4. "testing"
  5. "github.com/stretchr/testify/assert"
  6. "gopkg.in/src-d/go-git.v4/plumbing"
  7. )
  8. func TestCreateDummyBlob(t *testing.T) {
  9. dummy, err := createDummyBlob(plumbing.NewHash("334cde09da4afcb74f8d2b3e6fd6cce61228b485"))
  10. assert.Nil(t, err)
  11. assert.Equal(t, dummy.Hash.String(), "334cde09da4afcb74f8d2b3e6fd6cce61228b485")
  12. assert.Equal(t, dummy.Size, int64(0))
  13. reader, err := dummy.Reader()
  14. assert.Nil(t, err)
  15. buffer := make([]byte, 1)
  16. buffer[0] = 0xff
  17. n, err := reader.Read(buffer)
  18. assert.Equal(t, err, io.EOF)
  19. assert.Equal(t, n, 0)
  20. assert.Equal(t, buffer[0], byte(0xff))
  21. reader.Close()
  22. }
  23. func TestNotUsedDummyStuff(t *testing.T) {
  24. dio := dummyIO{}
  25. n, err := dio.Write([]byte{})
  26. assert.Nil(t, err)
  27. assert.Equal(t, n, 0)
  28. obj := dummyEncodedObject{}
  29. obj.SetSize(int64(100))
  30. obj.SetType(plumbing.CommitObject)
  31. writer, err := obj.Writer()
  32. assert.Nil(t, err)
  33. assert.NotNil(t, writer)
  34. }