()
| 39 | ) |
| 40 | |
| 41 | func (s *testSuite) TestUpload() { |
| 42 | s.T().Run("invalid repo", func(t *testing.T) { |
| 43 | b, err := NewBackend("bogus-registry", &RegistryOptions{}) |
| 44 | require.NoError(s.T(), err) |
| 45 | err = b.Upload(context.TODO(), bytes.NewBuffer(s.uploadedContent), s.casResource) |
| 46 | assert.Error(s.T(), err) |
| 47 | }) |
| 48 | |
| 49 | s.T().Run("empty content", func(t *testing.T) { |
| 50 | err := s.validBackend.Upload(context.TODO(), bytes.NewBuffer(nil), s.casResource) |
| 51 | assert.Error(s.T(), err) |
| 52 | assert.ErrorContains(s.T(), err, "content is empty") |
| 53 | }) |
| 54 | |
| 55 | s.T().Run("digest mistmatch", func(t *testing.T) { |
| 56 | r := &pb.CASResource{Digest: "sha256:deadbeef", FileName: "test.txt"} |
| 57 | err := s.validBackend.Upload(context.TODO(), bytes.NewBuffer(s.uploadedContent), r) |
| 58 | assert.ErrorContains(s.T(), err, "layer digest does not match") |
| 59 | }) |
| 60 | |
| 61 | s.T().Run("success", func(t *testing.T) { |
| 62 | err := s.validBackend.Upload(context.TODO(), bytes.NewBuffer(s.uploadedContent), s.casResource) |
| 63 | assert.NoError(s.T(), err) |
| 64 | }) |
| 65 | } |
| 66 | |
| 67 | func (s *testSuite) TestNewBackend() { |
| 68 | testCases := []struct { |
nothing calls this directly
no test coverage detected