Skip to content

Commit

Permalink
renaming; ut; idiomatic code
Browse files Browse the repository at this point in the history
Signed-off-by: Wei Meng <wemeng@microsoft.com>
  • Loading branch information
m5i-work committed Jun 29, 2022
1 parent 2fc82f2 commit 894a8f0
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 15 deletions.
14 changes: 7 additions & 7 deletions registry/remote/repository.go
Original file line number Diff line number Diff line change
Expand Up @@ -425,16 +425,16 @@ func filterReferrers(refs []artifactspec.Descriptor, artifactType string) []arti
if artifactType == "" {
return refs
}
var o int
for i := 0; i < len(refs); i++ {
if refs[i].ArtifactType == artifactType {
if i != o {
refs[o] = refs[i]
var j int
for i, ref := range refs {
if ref.ArtifactType == artifactType {
if i != j {
refs[j] = ref
}
o++
j++
}
}
return refs[:o]
return refs[:j]
}

// delete removes the content identified by the descriptor in the entity "blobs"
Expand Down
22 changes: 14 additions & 8 deletions registry/remote/repository_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1217,18 +1217,18 @@ func TestRepository_Referrers_ServerFiltering(t *testing.T) {
case "bar":
referrers = referrerSet[2]
default:
if q.Get("digest") == "" {
t.Errorf("digest not provided: %s %q", r.Method, r.URL)
if q.Get("digest") != manifestDesc.Digest.String() {
t.Errorf("digest not provided or mismatch: %s %q", r.Method, r.URL)
w.WriteHeader(http.StatusBadRequest)
return
}
referrers = referrerSet[0]
w.Header().Set("Link", fmt.Sprintf(`<%s?n=2&test=foo>; rel="next"`, path))
}
result := struct {
References []artifactspec.Descriptor `json:"references"`
Referrers []artifactspec.Descriptor `json:"referrers"`
}{
References: referrers,
Referrers: referrers,
}
if err := json.NewEncoder(w).Encode(result); err != nil {
t.Errorf("failed to write response: %v", err)
Expand Down Expand Up @@ -1262,6 +1262,9 @@ func TestRepository_Referrers_ServerFiltering(t *testing.T) {
}); err != nil {
t.Errorf("Repository.Referrers() error = %v", err)
}
if index != len(referrerSet) {
t.Errorf("fn invoked %d time(s), want %d", index, len(referrerSet))
}
}

func TestRepository_Referrers_ClientFiltering(t *testing.T) {
Expand Down Expand Up @@ -1350,18 +1353,18 @@ func TestRepository_Referrers_ClientFiltering(t *testing.T) {
case "bar":
referrers = referrerSet[2]
default:
if q.Get("digest") == "" {
t.Errorf("digest not provided: %s %q", r.Method, r.URL)
if q.Get("digest") != manifestDesc.Digest.String() {
t.Errorf("digest not provided or mismatch: %s %q", r.Method, r.URL)
w.WriteHeader(http.StatusBadRequest)
return
}
referrers = referrerSet[0]
w.Header().Set("Link", fmt.Sprintf(`<%s?n=2&test=foo>; rel="next"`, path))
}
result := struct {
References []artifactspec.Descriptor `json:"references"`
Referrers []artifactspec.Descriptor `json:"referrers"`
}{
References: referrers,
Referrers: referrers,
}
if err := json.NewEncoder(w).Encode(result); err != nil {
t.Errorf("failed to write response: %v", err)
Expand Down Expand Up @@ -1395,6 +1398,9 @@ func TestRepository_Referrers_ClientFiltering(t *testing.T) {
}); err != nil {
t.Errorf("Repository.Referrers() error = %v", err)
}
if index != len(filteredReferrerSet) {
t.Errorf("fn invoked %d time(s), want %d", index, len(referrerSet))
}
}

func Test_filterReferrers(t *testing.T) {
Expand Down

0 comments on commit 894a8f0

Please sign in to comment.