github.com/castai/kvisor@v1.7.1-0.20240516114728-b3572a2607b5/cmd/agent/daemon/process/process_test.go (about) 1 package process 2 3 import ( 4 "fmt" 5 "log/slog" 6 "testing" 7 8 "github.com/castai/kvisor/pkg/logging" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestFindContainerID(t *testing.T) { 13 log := logging.New(&logging.Config{ 14 Level: slog.LevelDebug, 15 }) 16 client := NewClient(log, "./testdata") 17 18 tests := []struct { 19 procID int 20 expectedContainerID string 21 expectedError error 22 }{ 23 {procID: 1, expectedContainerID: "3010305da5e9ea6603f01878e99baf14c0a9af276b7b2002ae19e58027e74ab7", expectedError: nil}, 24 {procID: 2, expectedContainerID: "2c912ceba34be6ea2d15f93f69603542211aaaa6b7a4220e0c8f7cd9aa3b574b", expectedError: nil}, 25 {procID: 3, expectedContainerID: "d3867876cf98ca70deef61cbec048701ca5a016968582b932fdb2bbf016d3a36", expectedError: nil}, 26 {procID: 4, expectedError: ErrContainerNotFound}, 27 } 28 29 for _, test := range tests { 30 t.Run(fmt.Sprintf("proc_%d", test.procID), func(t *testing.T) { 31 r := require.New(t) 32 33 containerID, err := client.GetContainerID(test.procID) 34 if test.expectedError != nil { 35 r.ErrorIs(err, test.expectedError) 36 } else { 37 r.NoError(err) 38 r.Equal(test.expectedContainerID, containerID) 39 } 40 }) 41 } 42 }