mirror of
https://github.com/kubescape/kubescape.git
synced 2026-04-15 06:58:11 +00:00
45 lines
1.7 KiB
Go
45 lines
1.7 KiB
Go
package opaprocessor
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/kubescape/kubescape/v3/core/cautils"
|
|
"github.com/kubescape/kubescape/v3/core/mocks"
|
|
"github.com/kubescape/opa-utils/reporthandling"
|
|
"github.com/kubescape/opa-utils/reporthandling/results/v1/reportsummary"
|
|
v2 "github.com/kubescape/opa-utils/reporthandling/v2"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestConvertFrameworksToPolicies(t *testing.T) {
|
|
fw0 := mocks.MockFramework_0006_0013()
|
|
fw1 := mocks.MockFramework_0044()
|
|
scanningScope := cautils.GetScanningScope(v2.ContextMetadata{ClusterContextMetadata: &v2.ClusterMetadata{}})
|
|
policies := convertFrameworksToPolicies([]reporthandling.Framework{*fw0, *fw1}, nil, scanningScope)
|
|
assert.Equal(t, 2, len(policies.Frameworks))
|
|
assert.Equal(t, 3, len(policies.Controls))
|
|
|
|
// with excluded rules map
|
|
excludedRulesMap := map[string]bool{
|
|
"alert-rw-hostpath": true,
|
|
}
|
|
fw0 = mocks.MockFramework_0006_0013()
|
|
fw1 = mocks.MockFramework_0044()
|
|
policies = convertFrameworksToPolicies([]reporthandling.Framework{*fw0, *fw1}, excludedRulesMap, scanningScope)
|
|
assert.Equal(t, 2, len(policies.Frameworks))
|
|
assert.Equal(t, 2, len(policies.Controls))
|
|
|
|
}
|
|
func TestInitializeSummaryDetails(t *testing.T) {
|
|
fw0 := mocks.MockFramework_0006_0013()
|
|
fw1 := mocks.MockFramework_0044()
|
|
scanningScope := cautils.GetScanningScope(v2.ContextMetadata{ClusterContextMetadata: &v2.ClusterMetadata{}})
|
|
|
|
summaryDetails := reportsummary.SummaryDetails{}
|
|
frameworks := []reporthandling.Framework{*fw0, *fw1}
|
|
policies := convertFrameworksToPolicies([]reporthandling.Framework{*fw0, *fw1}, nil, scanningScope)
|
|
ConvertFrameworksToSummaryDetails(&summaryDetails, frameworks, policies)
|
|
assert.Equal(t, 2, len(summaryDetails.Frameworks))
|
|
// assert.Equal(t, 3, len(summaryDetails.Controls))
|
|
}
|