Policy rules remove redundant function (#193)

This commit is contained in:
Igor Gov
2021-08-10 16:45:47 +03:00
committed by GitHub
parent 8c9b8d3217
commit c4afeee5b3
2 changed files with 27 additions and 20 deletions

View File

@@ -3,6 +3,7 @@ package rules
import (
"encoding/json"
"fmt"
"mizuserver/pkg/models"
"reflect"
"regexp"
"strings"
@@ -92,19 +93,35 @@ func MatchRequestPolicy(harEntry har.Entry, service string) (int, []RulesMatched
return len(enforcePolicy.Rules), resultPolicyToSend
}
func PassedValidationRules(rulesMatched []RulesMatched, numberOfRules int) (bool, int64, int) {
func PassedValidationRules(rulesMatched []RulesMatched) models.ApplicableRules {
if len(rulesMatched) == 0 {
return false, 0, 0
return models.ApplicableRules{
Status: false,
Latency: 0,
NumberOfRules: 0,
}
}
for _, rule := range rulesMatched {
if rule.Matched == false {
return false, -1, len(rulesMatched)
return models.ApplicableRules{
Status: false,
Latency: -1,
NumberOfRules: len(rulesMatched),
}
}
}
for _, rule := range rulesMatched {
if strings.ToLower(rule.Rule.Type) == "latency" {
return true, rule.Rule.Latency, len(rulesMatched)
return models.ApplicableRules{
Status: true,
Latency: rule.Rule.Latency,
NumberOfRules: len(rulesMatched),
}
}
}
return true, -1, len(rulesMatched)
return models.ApplicableRules{
Status: true,
Latency: -1,
NumberOfRules: len(rulesMatched),
}
}