""" pytest conftest """ # ================================================================================== # Copyright (c) 2019 Nokia # Copyright (c) 2018-2019 AT&T Intellectual Property. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ================================================================================== import tempfile import os import pytest from a1 import app @pytest.fixture def client(): """ http://flask.pocoo.org/docs/1.0/testing/ """ db_fd, app.app.config["DATABASE"] = tempfile.mkstemp() app.app.config["TESTING"] = True cl = app.app.test_client() yield cl os.close(db_fd) os.unlink(app.app.config["DATABASE"]) @pytest.fixture def adm_type_good(): """ represents a good put for adm control type """ return { "name": "Admission Control", "description": "various parameters to control admission of dual connection", "policy_type_id": 6660666, "create_schema": { "$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "enforce": {"type": "boolean", "default": True}, "window_length": { "type": "integer", "default": 1, "minimum": 1, "maximum": 60, "description": "Sliding window length (in minutes)", }, "blocking_rate": { "type": "number", "default": 10, "minimum": 1, "maximum": 100, "description": "% Connections to block", }, "trigger_threshold": { "type": "integer", "default": 10, "minimum": 1, "description": "Minimum number of events in window to trigger blocking", }, }, "required": ["enforce", "blocking_rate", "trigger_threshold", "window_length"], "additionalProperties": False, }, } @pytest.fixture def adm_instance_good(): """ represents a good put for adm control instance """ return {"enforce": True, "window_length": 10, "blocking_rate": 20, "trigger_threshold": 10}