Skip to content

Commit 7a6af92

Browse files
committed
test: add test coverage for WriteReferrer functions
Co-Authored-By: Claude <[email protected]> Signed-off-by: arewm <[email protected]> rh-pre-commit.version: 2.3.2 rh-pre-commit.check-secrets: ENABLED
1 parent 980db77 commit 7a6af92

File tree

3 files changed

+356
-18
lines changed

3 files changed

+356
-18
lines changed

pkg/oci/remote/remote.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,13 @@ import (
3333

3434
// These enable mocking for unit testing without faking an entire registry.
3535
var (
36-
remoteImage = remote.Image
37-
remoteIndex = remote.Index
38-
remoteGet = remote.Get
39-
remoteWrite = remote.Write
36+
remoteImage = remote.Image
37+
remoteIndex = remote.Index
38+
remoteGet = remote.Get
39+
remoteWrite = remote.Write
40+
remoteHead = remote.Head
41+
remoteWriteLayer = remote.WriteLayer
42+
remotePut = remote.Put
4043
)
4144

4245
// EntityNotFoundError is the error that SignedEntity returns when the

pkg/oci/remote/write.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ func WriteSignaturesExperimentalOCI(d name.Digest, se oci.SignedEntity, opts ...
146146
if err != nil {
147147
return err
148148
}
149-
desc, err := remote.Head(ref, o.ROpt...)
149+
desc, err := remoteHead(ref, o.ROpt...)
150150
if err != nil {
151151
return err
152152
}
@@ -161,7 +161,7 @@ func WriteSignaturesExperimentalOCI(d name.Digest, se oci.SignedEntity, opts ...
161161
return err
162162
}
163163
for _, v := range s {
164-
if err := remote.WriteLayer(d.Repository, v, o.ROpt...); err != nil {
164+
if err := remoteWriteLayer(d.Repository, v, o.ROpt...); err != nil {
165165
return err
166166
}
167167
}
@@ -176,7 +176,7 @@ func WriteSignaturesExperimentalOCI(d name.Digest, se oci.SignedEntity, opts ...
176176
return err
177177
}
178178
configLayer := static.NewLayer(configBytes, configDesc.MediaType)
179-
if err := remote.WriteLayer(d.Repository, configLayer, o.ROpt...); err != nil {
179+
if err := remoteWriteLayer(d.Repository, configLayer, o.ROpt...); err != nil {
180180
return err
181181
}
182182

@@ -208,7 +208,7 @@ func WriteSignaturesExperimentalOCI(d name.Digest, se oci.SignedEntity, opts ...
208208
// TODO: use ui.Infof
209209
fmt.Fprintf(os.Stderr, "Uploading signature for [%s] to [%s] with config.mediaType [%s] layers[0].mediaType [%s].\n",
210210
d.String(), targetRef.String(), artifactType, ctypes.SimpleSigningMediaType)
211-
return remote.Put(targetRef, &taggableManifest{raw: b, mediaType: m.MediaType}, o.ROpt...)
211+
return remotePut(targetRef, &taggableManifest{raw: b, mediaType: m.MediaType}, o.ROpt...)
212212
}
213213

214214
type taggableManifest struct {
@@ -234,7 +234,7 @@ func WriteReferrer(d name.Digest, artifactType string, layers []v1.Layer, annota
234234
if err != nil {
235235
return err
236236
}
237-
desc, err := remote.Head(ref, o.ROpt...)
237+
desc, err := remoteHead(ref, o.ROpt...)
238238
if err != nil {
239239
return err
240240
}
@@ -249,7 +249,7 @@ func WriteReferrer(d name.Digest, artifactType string, layers []v1.Layer, annota
249249
if err != nil {
250250
return fmt.Errorf("failed to calculate size: %w", err)
251251
}
252-
err = remote.WriteLayer(d.Repository, configLayer, o.ROpt...)
252+
err = remoteWriteLayer(d.Repository, configLayer, o.ROpt...)
253253
if err != nil {
254254
return fmt.Errorf("failed to upload layer: %w", err)
255255
}
@@ -269,7 +269,7 @@ func WriteReferrer(d name.Digest, artifactType string, layers []v1.Layer, annota
269269
return fmt.Errorf("failed to calculate size: %w", err)
270270
}
271271

272-
err = remote.WriteLayer(d.Repository, layer, o.ROpt...)
272+
err = remoteWriteLayer(d.Repository, layer, o.ROpt...)
273273
if err != nil {
274274
return fmt.Errorf("failed to upload layer: %w", err)
275275
}
@@ -304,7 +304,7 @@ func WriteReferrer(d name.Digest, artifactType string, layers []v1.Layer, annota
304304
return fmt.Errorf("failed to create target reference: %w", err)
305305
}
306306

307-
if err := remote.Put(targetRef, manifest, o.ROpt...); err != nil {
307+
if err := remotePut(targetRef, manifest, o.ROpt...); err != nil {
308308
return fmt.Errorf("failed to upload manifest: %w", err)
309309
}
310310

@@ -355,7 +355,7 @@ func WriteAttestationsReferrer(d name.Digest, se oci.SignedEntity, opts ...Optio
355355
return WriteReferrer(d, ctypes.IntotoPayloadType, layers, annotations, opts...)
356356
}
357357

358-
// referrerManifest implements Taggable for use in remote.Put.
358+
// referrerManifest implements Taggable for use in remotePut.
359359
// This type also augments the built-in v1.Manifest with an ArtifactType field
360360
// which is part of the OCI 1.1 Image Manifest spec but is unsupported by
361361
// go-containerregistry at this time.

0 commit comments

Comments
 (0)