RICPLT-2910
[ric-plt/submgr.git] / e2ap / pkg / e2ap / e2ap_tests / msg_e2ap_subscriptiondelete.go
1 /*
2 ==================================================================================
3   Copyright (c) 2019 AT&T Intellectual Property.
4   Copyright (c) 2019 Nokia
5
6    Licensed under the Apache License, Version 2.0 (the "License");
7    you may not use this file except in compliance with the License.
8    You may obtain a copy of the License at
9
10        http://www.apache.org/licenses/LICENSE-2.0
11
12    Unless required by applicable law or agreed to in writing, software
13    distributed under the License is distributed on an "AS IS" BASIS,
14    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15    See the License for the specific language governing permissions and
16    limitations under the License.
17 ==================================================================================
18 */
19
20 package e2ap_tests
21
22 import (
23         "gerrit.o-ran-sc.org/r/ric-plt/e2ap/pkg/e2ap"
24         "testing"
25 )
26
27 //-----------------------------------------------------------------------------
28 //
29 //-----------------------------------------------------------------------------
30
31 func (testCtxt *E2ApTests) E2ApTestMsgSubscriptionDeleteRequest(t *testing.T) {
32
33         testCtxt.SetDesc("SubsDeleteReq")
34
35         e2SubsReq := testCtxt.packerif.NewPackerSubscriptionDeleteRequest()
36
37         testCtxt.testPrint("########## ##########")
38         testCtxt.testPrint("init")
39
40         areqenc := e2ap.E2APSubscriptionDeleteRequest{}
41         areqenc.RequestId.Id = 1
42         areqenc.RequestId.Seq = 22
43         areqenc.FunctionId = 33
44
45         seterr := e2SubsReq.Set(&areqenc)
46         if seterr != nil {
47                 testCtxt.testError(t, "set err: %s", seterr.Error())
48                 return
49         }
50         testCtxt.testPrint("print:\n%s", e2SubsReq.String())
51         testCtxt.testPrint("pack")
52         err, packedMsg := e2SubsReq.Pack(nil)
53         if err != nil {
54                 testCtxt.testError(t, "Pack failed: %s", err.Error())
55                 return
56         }
57         testCtxt.testPrint("unpack")
58         err = e2SubsReq.UnPack(packedMsg)
59         if err != nil {
60                 testCtxt.testError(t, "UnPack failed: %s", err.Error())
61                 return
62         }
63         testCtxt.testPrint("print:\n%s", e2SubsReq.String())
64         geterr, areqdec := e2SubsReq.Get()
65         if geterr != nil {
66                 testCtxt.testError(t, "get nil: %s", geterr.Error())
67                 return
68         }
69         testCtxt.testValueEquality(t, "msg", &areqenc, areqdec)
70 }
71
72 func (testCtxt *E2ApTests) E2ApTestMsgSubscriptionDeleteResponse(t *testing.T) {
73
74         testCtxt.SetDesc("SubsDeleteResp")
75
76         e2SubsResp := testCtxt.packerif.NewPackerSubscriptionDeleteResponse()
77
78         testCtxt.testPrint("########## ##########")
79         testCtxt.testPrint("init")
80
81         arespenc := e2ap.E2APSubscriptionDeleteResponse{}
82         arespenc.RequestId.Id = 1
83         arespenc.RequestId.Seq = 22
84         arespenc.FunctionId = 33
85
86         seterr := e2SubsResp.Set(&arespenc)
87         if seterr != nil {
88                 testCtxt.testError(t, "set err: %s", seterr.Error())
89                 return
90         }
91         testCtxt.testPrint("print:\n%s", e2SubsResp.String())
92         testCtxt.testPrint("pack")
93         err, packedMsg := e2SubsResp.Pack(nil)
94         if err != nil {
95                 testCtxt.testError(t, "Pack failed: %s", err.Error())
96                 return
97         }
98         testCtxt.testPrint("unpack")
99         err = e2SubsResp.UnPack(packedMsg)
100         if err != nil {
101                 testCtxt.testError(t, "UnPack failed: %s", err.Error())
102                 return
103         }
104         testCtxt.testPrint("print:\n%s", e2SubsResp.String())
105         geterr, arespdec := e2SubsResp.Get()
106         if geterr != nil {
107                 testCtxt.testError(t, "get nil: %s", geterr.Error())
108                 return
109         }
110         testCtxt.testValueEquality(t, "msg", &arespenc, arespdec)
111 }
112
113 func (testCtxt *E2ApTests) E2ApTestMsgSubscriptionDeleteFailure(t *testing.T) {
114
115         testCtxt.SetDesc("SubsDeleteFail")
116
117         e2SubsFail := testCtxt.packerif.NewPackerSubscriptionDeleteFailure()
118
119         testCtxt.testPrint("########## ##########")
120         testCtxt.testPrint("init")
121
122         afailenc := e2ap.E2APSubscriptionDeleteFailure{}
123         afailenc.RequestId.Id = 1
124         afailenc.RequestId.Seq = 22
125         afailenc.FunctionId = 33
126         afailenc.Cause.Content = 1
127         afailenc.Cause.CauseVal = 1
128         // NOT SUPPORTED CURRENTLY
129         //      afailenc.CriticalityDiagnostics.Present = false
130         //      afailenc.CriticalityDiagnostics.ProcCodePresent = true
131         //      afailenc.CriticalityDiagnostics.ProcCode = 1
132         //      afailenc.CriticalityDiagnostics.TrigMsgPresent = true
133         //      afailenc.CriticalityDiagnostics.TrigMsg = 2
134         //      afailenc.CriticalityDiagnostics.ProcCritPresent = true
135         //      afailenc.CriticalityDiagnostics.ProcCrit = e2ap.E2AP_CriticalityReject
136         //      for index := uint32(0); index < 256; index++ {
137         //              ieitem := e2ap.CriticalityDiagnosticsIEListItem{}
138         //              ieitem.IeCriticality = e2ap.E2AP_CriticalityReject
139         //              ieitem.IeID = index
140         //              ieitem.TypeOfError = 1
141         //              afailenc.CriticalityDiagnostics.CriticalityDiagnosticsIEList.Items = append(afailenc.CriticalityDiagnostics.CriticalityDiagnosticsIEList.Items, ieitem)
142         //      }
143
144         seterr := e2SubsFail.Set(&afailenc)
145         if seterr != nil {
146                 testCtxt.testError(t, "set err: %s", seterr.Error())
147                 return
148         }
149         testCtxt.testPrint("print:\n%s", e2SubsFail.String())
150         testCtxt.testPrint("pack")
151         err, packedMsg := e2SubsFail.Pack(nil)
152         if err != nil {
153                 testCtxt.testError(t, "Pack failed: %s", err.Error())
154                 return
155         }
156         testCtxt.testPrint("unpack")
157         err = e2SubsFail.UnPack(packedMsg)
158         if err != nil {
159                 testCtxt.testError(t, "UnPack failed: %s", err.Error())
160                 return
161         }
162         testCtxt.testPrint("print:\n%s", e2SubsFail.String())
163         geterr, afaildec := e2SubsFail.Get()
164         if geterr != nil {
165                 testCtxt.testError(t, "get nil: %s", geterr.Error())
166                 return
167         }
168         testCtxt.testValueEquality(t, "msg", &afailenc, afaildec)
169 }