mirror of
https://github.com/anchore/syft.git
synced 2025-11-19 01:13:18 +01:00
* remove power-user document shape Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * add power-user specific fields to syft-json format Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * port remaining spdx-json relationships to sbom model Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * add coordinate set Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * add SBOM file path helper Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * use internal mimetype helper in go binary cataloger Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * add new package-of relationship Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * update json schema to v2 Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * replace power-user presenter with syft-json format Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * fix tests and linting Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * remove "package-of" relationship (in favor of "contains") Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * add tests for spdx22json format encoding enhancements Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * update TODO and log entries Signed-off-by: Alex Goodman <alex.goodman@anchore.com> * introduce sbom.Descriptor Signed-off-by: Alex Goodman <alex.goodman@anchore.com>
52 lines
804 B
Go
52 lines
804 B
Go
package source
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestCoordinateSet(t *testing.T) {
|
|
|
|
binA := Coordinates{
|
|
RealPath: "/bin",
|
|
FileSystemID: "a",
|
|
}
|
|
|
|
binB := Coordinates{
|
|
RealPath: "/bin",
|
|
FileSystemID: "b",
|
|
}
|
|
|
|
tests := []struct {
|
|
name string
|
|
input []Coordinates
|
|
expected []Coordinates
|
|
}{
|
|
{
|
|
name: "de-dup same location",
|
|
input: []Coordinates{
|
|
binA, binA, binA,
|
|
},
|
|
expected: []Coordinates{
|
|
binA,
|
|
},
|
|
},
|
|
{
|
|
name: "dont de-dup different filesystem",
|
|
input: []Coordinates{
|
|
binB, binA,
|
|
},
|
|
expected: []Coordinates{
|
|
binA, binB,
|
|
},
|
|
},
|
|
}
|
|
|
|
for _, test := range tests {
|
|
t.Run(test.name, func(t *testing.T) {
|
|
assert.Equal(t, test.expected, NewCoordinateSet(test.input...).ToSlice())
|
|
})
|
|
}
|
|
}
|