diff options
Diffstat (limited to 'test/functest/simulators/oof_dependencies_simulators.py')
-rw-r--r-- | test/functest/simulators/oof_dependencies_simulators.py | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/test/functest/simulators/oof_dependencies_simulators.py b/test/functest/simulators/oof_dependencies_simulators.py index 2995861..d7b1f04 100644 --- a/test/functest/simulators/oof_dependencies_simulators.py +++ b/test/functest/simulators/oof_dependencies_simulators.py @@ -22,6 +22,7 @@ Simulators for dependencies of OSDF (e.g. HAS-API, Policy, SO-callback, etc.) import glob import json import os + from flask import Flask, jsonify, request from osdf.utils.interfaces import json_from_file @@ -93,6 +94,14 @@ def get_policies(sub_component): return jsonify(list_json) +@app.route("/simulated/policy/pdpx/decision/v1", methods=["POST"]) +def get_pdx_policies(): + """ + get the pdpx policy + """ + return jsonify(json_from_file("policy/response-payloads/policy_response.json")) + + @app.route("/simulated/configdb/getCellList/<network_id>/<ts>", methods=["GET"]) def get_cell_list(network_id, ts): data, status = get_payload_for_simulated_component('configdb', @@ -109,6 +118,40 @@ def get_nbr_list(cell_id, ts): return jsonify(data) return jsonify(data), 503 +@app.route("/simulated/aai/v23/nodes/service-instances/service-instance/<service_id>", methods=["GET"]) +def get_aai_instances(service_id): + data, status = get_payload_for_simulated_component('aai', 'nsi_instance.json') + if not status: + return jsonify(data) + return jsonify(data), 503 + +@app.route("/simulated/aai/v23/dsl", methods=["PUT"]) +def dsl_query(): + + nssi_query = {"dsl": "service-instance*('service-instance-id','9629e36c-a3d9-4aed-8368-f72b8be1cd34')('workload-context', 'CN') > " + "service-instance*('service-role','nsi')"} + + nssi_with_nsi_query = {"dsl": "service-instance*('service-instance-id','9629e36c-a3d9-4aed-8368-f72b8be1cd34')('workload-context', 'CN') > " + "service-instance*('service-role','nsi')('service-instance-id'," + "'660ca85c-1a0f-4521-a559-65f23e794699')"} + + queries = { + "nssi_query": nssi_query, + "nssi_with_nsi": nssi_with_nsi_query + } + + count = { + "nssi_query": 1, + "nssi_with_nsi": 2 + } + + request_body = request.get_json() + service_count = 0 + for query_type, query in queries.items(): + if request_body == query: + service_count = count[query_type] + return {'results': [{'service-instance': service_count}]} + if __name__ == "__main__": app.run(debug=True, host='0.0.0.0') |