gitee.com/leisunstar/runtime@v0.0.0-20200521203717-5cef3e7b53f9/virtcontainers/netmon_test.go (about) 1 // Copyright (c) 2018 Intel Corporation 2 // 3 // SPDX-License-Identifier: Apache-2.0 4 // 5 6 package virtcontainers 7 8 import ( 9 "reflect" 10 "testing" 11 12 "github.com/stretchr/testify/assert" 13 ) 14 15 const ( 16 testNetmonPath = "/foo/bar/netmon" 17 testRuntimePath = "/foo/bar/runtime" 18 ) 19 20 func TestNetmonLogger(t *testing.T) { 21 got := netmonLogger() 22 expected := virtLog.WithField("subsystem", "netmon") 23 assert.True(t, reflect.DeepEqual(expected, got), 24 "Got %+v\nExpected %+v", got, expected) 25 } 26 27 func TestPrepareNetMonParams(t *testing.T) { 28 // Empty netmon path 29 params := netmonParams{} 30 got, err := prepareNetMonParams(params) 31 assert.NotNil(t, err) 32 assert.Equal(t, got, []string{}) 33 34 // Empty runtime path 35 params.netmonPath = testNetmonPath 36 got, err = prepareNetMonParams(params) 37 assert.NotNil(t, err) 38 assert.Equal(t, got, []string{}) 39 40 // Empty sandbox ID 41 params.runtime = testRuntimePath 42 got, err = prepareNetMonParams(params) 43 assert.NotNil(t, err) 44 assert.Equal(t, got, []string{}) 45 46 // Successful case 47 params.sandboxID = testSandboxID 48 got, err = prepareNetMonParams(params) 49 assert.Nil(t, err) 50 expected := []string{testNetmonPath, 51 "-r", testRuntimePath, 52 "-s", testSandboxID} 53 assert.True(t, reflect.DeepEqual(expected, got), 54 "Got %+v\nExpected %+v", got, expected) 55 } 56 57 func TestStopNetmon(t *testing.T) { 58 pid := -1 59 err := stopNetmon(pid) 60 assert.Nil(t, err) 61 }