def logger = Spy(ListAppender<ILoggingEvent>)
- def vesEvent
-
void setup() {
-
- def jsonData = TestUtils.getResourceFileContent('sampleVesEvent.json')
- vesEvent = objectMapper.readValue(jsonData, VesEventSchema.class)
-
((Logger) LoggerFactory.getLogger(VesEventConsumer.class)).addAppender(logger)
logger.start()
}
def 'Consume a VES event'() {
+ given: 'sample PNF registration events [VES Events]'
+ def jsonData = TestUtils.getResourceFileContent(fileName)
+ def vesEvent = objectMapper.readValue(jsonData, VesEventSchema.class)
when: 'event is consumed'
objectUnderTest.consumeVesEvent(vesEvent)
then: 'cm handle(s) is registered with the dmi service'
- 1 * dmiService.registerCmHandles(['pynts-o-du-o1'])
+ 1 * dmiService.registerCmHandles(expectedCmhandles)
+ where: 'we use the sample events'
+ fileName || expectedCmhandles
+ 'sampleVesEvent-pynts-odu-o1.json' || ['pynts-o-du-o1']
+ 'sampleVesEvent-openairinterface.json' || ['gNB-Eurecom-5GNRBox-00001']
}
def 'Consume create event with error during registration'() {
- given: 'an error occured during registration'
+ given: 'sample PNF registration event'
+ def jsonData = TestUtils.getResourceFileContent('sampleVesEvent-pynts-odu-o1.json')
+ def vesEvent = objectMapper.readValue(jsonData, VesEventSchema.class)
+ and: 'an error occured during registration'
dmiService.registerCmHandles(_) >> { throw new CmHandleRegistrationException('some error for test') }
when: 'event is consumed'
objectUnderTest.consumeVesEvent(vesEvent)
--- /dev/null
+{
+ "event": {
+ "commonEventHeader": {
+ "domain": "pnfRegistration",
+ "eventId": "ManagedElement=gNB-Eurecom-5GNRBox-00001_pnfRegistration",
+ "eventName": "pnfRegistration_OAI_pnfRegistration",
+ "eventType": "OAI_pnfRegistration",
+ "sequence": 0,
+ "priority": "Low",
+ "reportingEntityId": "",
+ "reportingEntityName": "ManagedElement=gNB-Eurecom-5GNRBox-00001",
+ "sourceId": "3584",
+ "sourceName": "gNB-Eurecom-5GNRBox-00001",
+ "startEpochMicrosec": 1748957443348743,
+ "lastEpochMicrosec": 1748957443348743,
+ "nfNamingCode": "001",
+ "nfVendorName": "OpenAirInterface",
+ "timeZoneOffset": "+00:00",
+ "version": "4.1",
+ "vesEventListenerVersion": "7.2.1"
+ },
+ "pnfRegistrationFields": {
+ "pnfRegistrationFieldsVersion": "2.1",
+ "lastServiceDate": "2021-03-26",
+ "macAddress": "00:00:00:00:00:00",
+ "manufactureDate": "2021-01-16",
+ "modelNumber": "nr-softmodem",
+ "oamV4IpAddress": "10.2.1.10",
+ "serialNumber": "OpenAirInterface-gNB-10.2.1.10-nr-softmodem",
+ "softwareVersion": "2.3.5",
+ "unitFamily": "OpenAirInterface-gNB",
+ "unitType": "gNB",
+ "vendorName": "OpenAirInterface",
+ "additionalFields": {
+ "oamPort": "1830",
+ "protocol": "SSH",
+ "username": "netconf",
+ "password": "netconf!",
+ "reconnectOnChangedSchema": "false",
+ "sleep-factor": "1.5",
+ "tcpOnly": "false",
+ "connectionTimeout": "20000",
+ "maxConnectionAttempts": "100",
+ "betweenAttemptsTimeout": "2000",
+ "keepaliveDelay": "120"
+ }
+ }
+ }
+}
\ No newline at end of file