package main import ( "encoding/json" "testing" "github.com/stretchr/testify/require" ) func TestIsPrivileged(t *testing.T) { var tests = []struct { spec string expected bool }{ { ` { "ociVersion": "1.0.0", "process": { "capabilities": { "bounding": [ "CAP_SYS_ADMIN" ] } } } `, true, }, { ` { "ociVersion": "1.0.0", "process": { "capabilities": { "bounding": [ "CAP_SYS_OTHER" ] } } } `, false, }, { ` { "ociVersion": "1.0.0", "process": {} } `, false, }, { ` { "ociVersion": "1.0.0-rc2-dev", "process": { "capabilities": [ "CAP_SYS_ADMIN" ] } } `, true, }, { ` { "ociVersion": "1.0.0-rc2-dev", "process": { "capabilities": [ "CAP_SYS_OTHER" ] } } `, false, }, { ` { "ociVersion": "1.0.0-rc2-dev", "process": {} } `, false, }, } for i, tc := range tests { var spec Spec _ = json.Unmarshal([]byte(tc.spec), &spec) privileged := isPrivileged(&spec) require.Equal(t, tc.expected, privileged, "%d: %v", i, tc) } }