go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/procfs/processes_test.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package procfs
     5  
     6  import (
     7  	"testing"
     8  
     9  	"github.com/stretchr/testify/assert"
    10  	"github.com/stretchr/testify/require"
    11  	"go.mondoo.com/cnquery/providers/os/connection/mock"
    12  )
    13  
    14  func TestParseProcessStatus(t *testing.T) {
    15  	trans, err := mock.New("./testdata/process-pid1.toml", nil)
    16  	require.NoError(t, err)
    17  
    18  	f, err := trans.FileSystem().Open("/proc/1/status")
    19  	require.NoError(t, err)
    20  	defer f.Close()
    21  
    22  	processStatus, err := ParseProcessStatus(f)
    23  	require.NoError(t, err)
    24  
    25  	assert.NotNil(t, processStatus, "process is not nil")
    26  	assert.Equal(t, "bash", processStatus.Executable, "detected process name")
    27  }
    28  
    29  func TestParseProcessCmdline(t *testing.T) {
    30  	trans, err := mock.New("./testdata/process-pid1.toml", nil)
    31  	require.NoError(t, err)
    32  
    33  	f, err := trans.FileSystem().Open("/proc/1/cmdline")
    34  	require.NoError(t, err)
    35  	defer f.Close()
    36  
    37  	cmd, err := ParseProcessCmdline(f)
    38  	require.NoError(t, err)
    39  	assert.Equal(t, "/bin/bash", cmd, "detected process name")
    40  }