Skip to content

Commit

Permalink
allow for more flexible list parsing, includes comments and other hum…
Browse files Browse the repository at this point in the history
…an-text
  • Loading branch information
jondot committed Jun 8, 2021
1 parent 85d62f0 commit 7823fe5
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 0 deletions.
2 changes: 2 additions & 0 deletions pkg/core.go
Original file line number Diff line number Diff line change
Expand Up @@ -148,6 +148,8 @@ func createDigest(s string) Digest {
}

func createSignature(sig string) Signature {
sig = strings.Trim(sig, " ") // remove any space-y artifacts
sig = strings.Split(sig, " ")[0] // start up to first space is important, throw away the rest
parts := strings.Split(sig, "=")
signature := Signature{content: sig, digest: "sha256"}
if len(parts) > 1 {
Expand Down
18 changes: 18 additions & 0 deletions pkg/core_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -166,3 +166,21 @@ func ExampleFileLookup() {
// ✅ Preflight verified
// hello
}

func TestCreateSignature(t *testing.T) {
s := createSignature("sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33 # foobaz")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature("46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33 # foobar")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature("46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33 # foobar v2")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature("46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33 foobar v2")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature("46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature(" 46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")
s = createSignature(" sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33 ")
assert.Equal(t, s.String(), "sha256=46c2cf18d822cc3f310b320240259d6735d4a3ae06d82cb705a3e0e8d520f33")

}

0 comments on commit 7823fe5

Please sign in to comment.