github.com/nextlinux/gosbom@v0.81.1-0.20230627115839-1ff50c281391/gosbom/pkg/cataloger/rpm/cataloger_test.go (about)

     1  package rpm
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/nextlinux/gosbom/gosbom/pkg/cataloger/internal/pkgtest"
     7  )
     8  
     9  func Test_DBCataloger_Globs(t *testing.T) {
    10  	tests := []struct {
    11  		name     string
    12  		fixture  string
    13  		expected []string
    14  	}{
    15  		{
    16  			name:    "obtain DB files",
    17  			fixture: "test-fixtures/glob-paths",
    18  			expected: []string{
    19  				"usr/share/rpm/Packages",
    20  				"usr/share/rpm/Packages.db",
    21  				"usr/share/rpm/rpmdb.sqlite",
    22  				"var/lib/rpm/Packages",
    23  				"var/lib/rpm/Packages.db",
    24  				"var/lib/rpm/rpmdb.sqlite",
    25  				"var/lib/rpmmanifest/container-manifest-2",
    26  			},
    27  		},
    28  	}
    29  
    30  	for _, test := range tests {
    31  		t.Run(test.name, func(t *testing.T) {
    32  			pkgtest.NewCatalogTester().
    33  				FromDirectory(t, test.fixture).
    34  				ExpectsResolverContentQueries(test.expected).
    35  				TestCataloger(t, NewRpmDBCataloger())
    36  		})
    37  	}
    38  }
    39  
    40  func Test_RPMFileCataloger_Globs(t *testing.T) {
    41  	tests := []struct {
    42  		name     string
    43  		fixture  string
    44  		expected []string
    45  	}{
    46  		{
    47  			name:    "obtain rpm files",
    48  			fixture: "test-fixtures/glob-paths",
    49  			expected: []string{
    50  				"dive-0.10.0.rpm",
    51  			},
    52  		},
    53  	}
    54  
    55  	for _, test := range tests {
    56  		t.Run(test.name, func(t *testing.T) {
    57  			pkgtest.NewCatalogTester().
    58  				FromDirectory(t, test.fixture).
    59  				ExpectsResolverContentQueries(test.expected).
    60  				TestCataloger(t, NewFileCataloger())
    61  		})
    62  	}
    63  }