aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_pz_catch_up.py
diff options
context:
space:
mode:
authorAlex Shatov <alexs@att.com>2018-12-05 15:23:50 -0500
committerAlex Shatov <alexs@att.com>2018-12-05 15:23:50 -0500
commita39f4e82cef0414f510cf20e25864ac04cc8f055 (patch)
tree759f5a9f51c368456e8d8f3be65dac1951de0bd9 /tests/test_pz_catch_up.py
parent61fe1b8aa4f6e3c2388cbc573f655f60b4c1b5f3 (diff)
4.5.0 policy-handler - multi change
DCAEGEN2-853: - stop reporting the absence of policies or updates as error - this is an expected result == INFO or WARNING DCAEGEN2-903: preparation for TLS on the web-server of policy-handler DCAEGEN2-930: - configurable timeouts for http requests from policy-handler - added configurable pinging on the web-socket to PDP - added healthcheck info on the web-socket - upgraded websocket-client lib to 0.53.0 DCAEGEN2-1017: fixed a bug on policy-filter matching by filter_config_name - refactored and enhanced the unit-tests Change-Id: I111ddc57bb978554ef376cbf916965b6667dad9b Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-853 Issue-ID: DCAEGEN2-903 Issue-ID: DCAEGEN2-930 Issue-ID: DCAEGEN2-1017
Diffstat (limited to 'tests/test_pz_catch_up.py')
-rw-r--r--tests/test_pz_catch_up.py96
1 files changed, 96 insertions, 0 deletions
diff --git a/tests/test_pz_catch_up.py b/tests/test_pz_catch_up.py
new file mode 100644
index 0000000..89be9bb
--- /dev/null
+++ b/tests/test_pz_catch_up.py
@@ -0,0 +1,96 @@
+# ============LICENSE_START=======================================================
+# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
+# ================================================================================
+# 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.
+# ============LICENSE_END=========================================================
+#
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+"""test policy catch_up methods directly"""
+
+import json
+import time
+
+import pytest
+
+from policyhandler.onap.audit import Audit
+from policyhandler.policy_receiver import PolicyReceiver
+
+from .mock_settings import Settings
+from .mock_tracker import Tracker
+
+
+@pytest.mark.usefixtures(
+ "fix_auto_catch_up",
+ "fix_discovery",
+ "fix_pdp_post_big",
+ "fix_deploy_handler_413",
+ "fix_policy_receiver_websocket"
+)
+def test_catch_up_failed_dh():
+ """test run policy handler with catchups and failed deployment-handler"""
+ Settings.logger.info("start test_catch_up_failed_dh")
+ assert not PolicyReceiver.is_running()
+ audit = Audit(job_name="test_catch_up_failed_dh",
+ req_message="start test_catch_up_failed_dh")
+ PolicyReceiver.run(audit)
+
+ Settings.logger.info("sleep 12 before shutdown...")
+ time.sleep(12)
+
+ health = audit.health(full=True)
+ audit.audit_done(result=json.dumps(health))
+
+ Settings.logger.info("healthcheck: %s", json.dumps(health))
+ assert bool(health)
+
+ PolicyReceiver.shutdown(audit)
+ time.sleep(1)
+ assert not PolicyReceiver.is_running()
+
+ health = audit.health(full=True)
+ Settings.logger.info("healthcheck: %s", json.dumps(health))
+
+ Tracker.validate()
+
+@pytest.mark.usefixtures(
+ "fix_auto_catch_up",
+ "fix_discovery",
+ "fix_pdp_post",
+ "fix_deploy_handler_404",
+ "fix_policy_receiver_websocket"
+)
+def test_catch_up_dh_404():
+ """test run policy handler with catchups and failed deployment-handler"""
+ Settings.logger.info("start test_catch_up_dh_404")
+ assert not PolicyReceiver.is_running()
+ audit = Audit(job_name="test_catch_up_dh_404",
+ req_message="start test_catch_up_dh_404")
+ PolicyReceiver.run(audit)
+
+ Settings.logger.info("sleep 12 before shutdown...")
+ time.sleep(12)
+
+ health = audit.health(full=True)
+ audit.audit_done(result=json.dumps(health))
+
+ Settings.logger.info("healthcheck: %s", json.dumps(health))
+ assert bool(health)
+
+ PolicyReceiver.shutdown(audit)
+ time.sleep(1)
+ assert not PolicyReceiver.is_running()
+
+ health = audit.health(full=True)
+ Settings.logger.info("healthcheck: %s", json.dumps(health))
+
+ Tracker.validate()