import (
"e2mgr/e2pdus"
"e2mgr/logger"
- "e2mgr/rNibWriter"
"fmt"
"gerrit.o-ran-sc.org/r/ric-plt/nodeb-rnib.git/entities"
"strings"
logger, _ := logger.InitLogger(logger.InfoLevel)
var testCases = []struct {
- saveToRNib bool
- response string
- packedPdu string
- failure error
+ response string
+ packedPdu string
+ failure error
}{
{
- saveToRNib: false, //TODO: use MOCK?
- response: "CONNECTED_SETUP_FAILED network_layer_cause:HANDOVER_DESIRABLE_FOR_RADIO_REASONS time_to_wait:V1S criticality_diagnostics:<procedure_code:33 triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
+ response: "CONNECTED_SETUP_FAILED network_layer_cause:HANDOVER_DESIRABLE_FOR_RADIO_REASONS time_to_wait:V1S criticality_diagnostics:<procedure_code:33 triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
*/
packedPdu: "4006001a0000030005400200000016400100001140087821a00000008040"},
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED transport_layer_cause:TRANSPORT_RESOURCE_UNAVAILABLE criticality_diagnostics:<procedure_code:33 triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
+ response: "CONNECTED_SETUP_FAILED transport_layer_cause:TRANSPORT_RESOURCE_UNAVAILABLE criticality_diagnostics:<procedure_code:33 triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
*/
packedPdu: "400600140000020005400120001140087821a00000008040"},
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED protocol_cause:ABSTRACT_SYNTAX_ERROR_IGNORE_AND_NOTIFY criticality_diagnostics:<triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
+ response: "CONNECTED_SETUP_FAILED protocol_cause:ABSTRACT_SYNTAX_ERROR_IGNORE_AND_NOTIFY criticality_diagnostics:<triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
packedPdu: "400600130000020005400144001140073a800000008040"},
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
+ response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
packedPdu: "400600120000020005400168001140061a0000008040"},
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > information_element_criticality_diagnostics:<ie_criticality:NOTIFY ie_id:255 type_of_error:NOT_UNDERSTOOD > > ",
+ response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > information_element_criticality_diagnostics:<ie_criticality:NOTIFY ie_id:255 type_of_error:NOT_UNDERSTOOD > > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<procedure_code:33 > ",
+ response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED criticality_diagnostics:<procedure_code:33 > ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
packedPdu: "4006000e0000020005400168001140024021"},
{
- saveToRNib: false,
- response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED ",
+ response: "CONNECTED_SETUP_FAILED miscellaneous_cause:UNSPECIFIED ",
/*
E2AP-PDU:
unsuccessfulOutcome_t
*/
packedPdu: "400600080000010005400168"},
{
- saveToRNib: false,
response: "CONNECTED_SETUP_FAILED network_layer_cause:HANDOVER_DESIRABLE_FOR_RADIO_REASONS time_to_wait:V1S criticality_diagnostics:<procedure_code:33 triggering_message:UNSUCCESSFUL_OUTCOME procedure_criticality:NOTIFY information_element_criticality_diagnostics:<ie_criticality:REJECT ie_id:128 type_of_error:MISSING > > ",
/*
E2AP-PDU:
},
}
- initDb_f := true
for _, tc := range testCases {
t.Run(tc.packedPdu, func(t *testing.T) {
} else {
nb := &entities.NodebInfo{}
nb.ConnectionStatus = entities.ConnectionStatus_CONNECTED_SETUP_FAILED
- nb.SetupFailure = response
+ nb.SetupFailure = response
nb.FailureType = entities.Failure_X2_SETUP_FAILURE
respStr := fmt.Sprintf("%s %s", nb.ConnectionStatus, response)
if !strings.EqualFold(respStr, tc.response) {
t.Errorf("want: response=[%s], got: [%s]", tc.response, respStr)
}
- // Save to rNib
- if tc.saveToRNib {
- if initDb_f {
- rNibWriter.Init("e2Manager", 1)
- initDb_f = false
- }
- nbIdentity := &entities.NbIdentity{InventoryName:"RanName"}
- if rNibErr := rNibWriter.GetRNibWriter().SaveNodeb(nbIdentity, nb); rNibErr != nil {
- if tc.failure == nil {
- t.Errorf("rNibWriter failed to save ENB. Error: %s\n", rNibErr.Error())
- } else {
- if strings.Compare(rNibErr.Error(), tc.failure.Error()) != 0 {
- t.Errorf("want: %s, got: %s", tc.failure, rNibErr.Error())
- }
- }
- }
- }
}
})
}
}
-