From b8535d2c5ee2db08c9c5b8772ceb4ddb9fa1bfed Mon Sep 17 00:00:00 2001 From: nuclearwu Date: Thu, 10 Nov 2022 19:23:48 +0800 Subject: [PATCH] Fix: Failed to get detail policy for application (#5043) * Fix: Failed to get detail policy for application Signed-off-by: wuzhongjian * Fix: Failed to get detail policy for application Signed-off-by: wuzhongjian Signed-off-by: wuzhongjian --- pkg/apiserver/domain/service/util.go | 3 +++ pkg/apiserver/domain/service/util_test.go | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/pkg/apiserver/domain/service/util.go b/pkg/apiserver/domain/service/util.go index 2292de749..5a4b9a2d5 100644 --- a/pkg/apiserver/domain/service/util.go +++ b/pkg/apiserver/domain/service/util.go @@ -52,6 +52,9 @@ func guaranteePolicyNotExist(c []string, policy string) ([]string, bool) { // extractPolicyListAndProperty can extract policy from string-format properties, and return // map-format properties in order to further update operation. func extractPolicyListAndProperty(property string) ([]string, map[string]interface{}, error) { + if len(property) == 0 { + return nil, nil, nil + } content := map[string]interface{}{} err := json.Unmarshal([]byte(property), &content) if err != nil { diff --git a/pkg/apiserver/domain/service/util_test.go b/pkg/apiserver/domain/service/util_test.go index 5b922fc01..22bba2ee8 100644 --- a/pkg/apiserver/domain/service/util_test.go +++ b/pkg/apiserver/domain/service/util_test.go @@ -208,6 +208,14 @@ func TestExtractPolicyListAndProperty(t *testing.T) { noError bool }{noError: false}, }, + { + input: ``, + res: struct { + policies []string + properties map[string]interface{} + noError bool + }{policies: nil, properties: nil, noError: true}, + }, } for _, testCase := range testCases { policy, properties, err := extractPolicyListAndProperty(testCase.input)