--- /dev/null
+// -
+// ========================LICENSE_START=================================
+// O-RAN-SC
+// %%
+// Copyright (C) 2022: Nordix Foundation
+// %%
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+// ========================LICENSE_END===================================
+//
+
+package sliceassurance
+
+import (
+ "reflect"
+ "testing"
+
+ "oransc.org/usecase/oduclosedloop/icsversion/messages"
+)
+
+func TestGetStdDefinedMessages(t *testing.T) {
+ type args struct {
+ messageStrings *[]string
+ }
+ tests := []struct {
+ name string
+ args args
+ want []messages.StdDefinedMessage
+ }{
+ {
+ name: "",
+ args: args{
+ messageStrings: &[]string{
+ `{"event":{"commonEventHeader":{"domain":"stnd","eventId":"pm-1","eventName":"stndDefined","eventType":"performanceMeasurementStreaming","sequence":825,"priority":"Low","reportingEntityId":"","reportingEntityName":"O-DU-1122","sourceId":"","sourceName":"O-DU-1122","stndDefinedNamespace":"o-ran-sc-du-hello-world","version":"4.1","vesEventListenerVersion":"7.2.1"},"stndDefinedFields":{"stndDefinedFieldsVersion":"1.0","schemaReference":"o-ran-sc-du-hello-world","data":{"id":"pm-1_123","administrative-state":"unlocked","operational-state":"enabled","user-label":"pm","job-tag":"my-job-tag","granularity-period":30,"measurements":[{"measurement-type-instance-reference":"reference","value":5861,"unit":"kbit/s"}]}}}}`,
+ },
+ },
+ want: []messages.StdDefinedMessage{{
+ Event: messages.Event{
+ CommonEventHeader: messages.CommonEventHeader{
+ Domain: "stnd",
+ EventId: "pm-1",
+ EventName: "stndDefined",
+ EventType: "performanceMeasurementStreaming",
+ Sequence: 825,
+ Priority: "Low",
+ ReportingEntityName: "O-DU-1122",
+ SourceName: "O-DU-1122",
+ StndDefinedNamespace: "o-ran-sc-du-hello-world",
+ Version: "4.1",
+ VesEventListenerVersion: "7.2.1",
+ },
+ StndDefinedFields: messages.StndDefinedFields{
+ StndDefinedFieldsVersion: "1.0",
+ SchemaReference: "o-ran-sc-du-hello-world",
+ Data: messages.Data{
+ DataId: "pm-1_123",
+ AdministrativeState: "unlocked",
+ OperationalState: "enabled",
+ UserLabel: "pm",
+ JobTag: "my-job-tag",
+ GranularityPeriod: 30,
+ Measurements: []messages.Measurement{{
+ MeasurementTypeInstanceReference: "reference",
+ Value: 5861,
+ Unit: "kbit/s",
+ }},
+ },
+ },
+ },
+ }},
+ },
+ }
+ for _, tt := range tests {
+ t.Run(tt.name, func(t *testing.T) {
+ if got := getStdMessages(tt.args.messageStrings); !reflect.DeepEqual(got, tt.want) {
+ t.Errorf("getStdMessages() = %v, want %v", got, tt.want)
+ }
+ })
+ }
+}