* add static container image scan * server has many staticContainers * use go module * for staticContainer * fix typo * fix setErrs error * change name : StaticContainer -> Image * add scan -images-only flag * fix makefile * fix makefile for go module * use rpmcmd instead of rpm * add scrutinizer.yml * change scrutinizer.yml * fix scrutinizer.yml * fix scrutinizer.yml * fix scrutinizer.yml * fix scrutinizer.yml * delete scrutinizer * add report test * add sourcePackages and Arch * fix for sider * fix staticContainer -> image * init scan library * add library scan for servers * fix tui bug * fix lint error * divide WpPackageFixStats and LibraryPackageFixedIns * fix error * Delete libManager_test.go * stop use alpine os if err occurred in container * merge upstream/master * Delete libManager.go * update goval-dictionary * fix go.mod * update Readme * add feature : auto detect lockfiles
		
			
				
	
	
		
			53 lines
		
	
	
		
			909 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			909 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package models
 | 
						|
 | 
						|
import (
 | 
						|
	"testing"
 | 
						|
 | 
						|
	godeptypes "github.com/knqyf263/go-dep-parser/pkg/types"
 | 
						|
	"github.com/knqyf263/trivy/pkg/db"
 | 
						|
	"github.com/knqyf263/trivy/pkg/log"
 | 
						|
)
 | 
						|
 | 
						|
func TestScan(t *testing.T) {
 | 
						|
	var tests = []struct {
 | 
						|
		path string
 | 
						|
		pkgs []godeptypes.Library
 | 
						|
	}{
 | 
						|
		{
 | 
						|
			path: "app/package-lock.json",
 | 
						|
			pkgs: []godeptypes.Library{
 | 
						|
				{
 | 
						|
					Name:    "jquery",
 | 
						|
					Version: "2.2.4",
 | 
						|
				},
 | 
						|
				{
 | 
						|
					Name:    "@babel/traverse",
 | 
						|
					Version: "7.4.4",
 | 
						|
				},
 | 
						|
			},
 | 
						|
		},
 | 
						|
	}
 | 
						|
 | 
						|
	if err := log.InitLogger(false); err != nil {
 | 
						|
		t.Errorf("trivy logger failed")
 | 
						|
	}
 | 
						|
 | 
						|
	if err := db.Init(); err != nil {
 | 
						|
		t.Errorf("trivy db.Init failed")
 | 
						|
	}
 | 
						|
	for _, v := range tests {
 | 
						|
		lib := LibraryScanner{
 | 
						|
			Path: v.path,
 | 
						|
			Libs: v.pkgs,
 | 
						|
		}
 | 
						|
		actual, err := lib.Scan()
 | 
						|
		if err != nil {
 | 
						|
			t.Errorf("error occurred")
 | 
						|
		}
 | 
						|
		if len(actual) == 0 {
 | 
						|
			t.Errorf("no vuln found : actual: %v\n", actual)
 | 
						|
		}
 | 
						|
	}
 | 
						|
	db.Close()
 | 
						|
}
 |