From 5e61641bd8912cde9e4bf3f581f8a2786aa90be8 Mon Sep 17 00:00:00 2001 From: Bogumil Zebek Date: Fri, 5 Apr 2019 11:31:09 +0200 Subject: [PATCH] Add pnf_entry endpoints Change-Id: Ife9330a753286874e2df507ab97026897eae457e Issue-ID: INT-989 Signed-off-by: Zebek Bogumil --- .../prh-testcases/resources/simulator/AAI.py | 38 +++++++++++++++++----- 1 file changed, 29 insertions(+), 9 deletions(-) diff --git a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py index 91a93de5..bd76c616 100644 --- a/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py +++ b/tests/dcaegen2/prh-testcases/resources/simulator/AAI.py @@ -1,4 +1,5 @@ import logging +import json import sys import re import time @@ -16,22 +17,29 @@ logging.basicConfig( logger = logging.getLogger('AAI-simulator-logger') pnfs = 'Empty' -pnf_entry = 'Empty' +pnf_entry = {} + + +def _mark_response_as_http_ok(http_endpoint): + logger.info('Execution status 200') + httpServerLib.header_200_and_json(http_endpoint) + class AAISetup(BaseHTTPRequestHandler): def do_PUT(self): logger.info('AAI SIM Setup Put execution') - if re.search('/set_pnf', self.path): + if re.search('/set_pnf$', self.path): global pnfs - content_length = int(self.headers['Content-Length']) + content_length = self._get_content_length() pnfs = self.rfile.read(content_length) - logger.info('Execution status 200') - httpServerLib.header_200_and_json(self) + _mark_response_as_http_ok(self) if re.search('/set_pnf_entry',self.path): - logger.info('Execution status 200') - httpServerLib.header_200_and_json(self) + global pnf_entry + content_length = self._get_content_length() + pnf_entry = json.loads(self.rfile.read(content_length)) + _mark_response_as_http_ok(self) return @@ -40,14 +48,26 @@ class AAISetup(BaseHTTPRequestHandler): if re.search('/reset', self.path): global pnfs pnfs = 'Empty' - logger.info('Execution status 200') - httpServerLib.header_200_and_json(self) + _mark_response_as_http_ok(self) return + def _get_content_length(self): + return int(self.headers['Content-Length']) + class AAIHandler(BaseHTTPRequestHandler): + def do_GET(self): + logger.info('AAI SIM Get execution') + if re.search('/get_pnf_entry', self.path): + _mark_response_as_http_ok(self) + body = json.dumps(pnf_entry) + self.wfile.write(body.encode()) + + return + + def do_PATCH(self): logger.info('AAI SIM Patch execution') pnfs_name = '/aai/v12/network/pnfs/pnf/' + pnfs.decode() -- 2.16.6