From 770b47da0f4a33b22d757510c9108f30d6cbbd51 Mon Sep 17 00:00:00 2001 From: Tommy Carpenter Date: Thu, 14 Sep 2017 21:54:32 -0400 Subject: DRY up code with decorators Issue-ID: DCAEGEN2-74 Change-Id: Iefdfe3fa60879161ebc6ba3224f342a9af575d94 Signed-off-by: Tommy Carpenter --- cdap/cdapplugin/tests/test_cdap_plugin.py | 42 +++++++++++++++++++++---------- cdap/cdapplugin/tests/test_discovery.py | 9 +++---- 2 files changed, 33 insertions(+), 18 deletions(-) (limited to 'cdap/cdapplugin/tests') diff --git a/cdap/cdapplugin/tests/test_cdap_plugin.py b/cdap/cdapplugin/tests/test_cdap_plugin.py index 7434fe8..f28485d 100644 --- a/cdap/cdapplugin/tests/test_cdap_plugin.py +++ b/cdap/cdapplugin/tests/test_cdap_plugin.py @@ -5,9 +5,9 @@ # 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. @@ -17,59 +17,60 @@ # # ECOMP is a trademark and service mark of AT&T Intellectual Property. -from cdapcloudify.cdap_plugin import _validate_conns, BadConnections +from cdapcloudify.cdap_plugin import _validate_conns, BadConnections, try_raise_nonr import pytest +from cloudify.exceptions import NonRecoverableError #todo.. add more tests.. #shame def _get_good_connection(): connections = {} connections["streams_publishes"] = [ - {"name" : "test_n", + {"name" : "test_n", "location" : "test_l", "client_role" : "test_cr", "type" : "message_router", "config_key" : "test_c", "aaf_username": "test_u", - "aaf_password": "test_p" + "aaf_password": "test_p" }, - {"name" : "test_n2", + {"name" : "test_n2", "location" : "test_l", "client_role" : "test_cr", "type" : "message_router", "config_key" : "test_c", "aaf_username": "test_u", - "aaf_password": "test_p" + "aaf_password": "test_p" }, - {"name" : "test_feed00", + {"name" : "test_feed00", "location" : "test_l", "type" : "data_router", "config_key" : "mydrconfigkey" } ] connections["streams_subscribes"] = [ - {"name" : "test_n", + {"name" : "test_n", "location" : "test_l", "client_role" : "test_cr", "type" : "message_router", "config_key" : "test_c", "aaf_username": "test_u", - "aaf_password": "test_p" + "aaf_password": "test_p" }, - {"name" : "test_n2", + {"name" : "test_n2", "location" : "test_l", "client_role" : "test_cr", "type" : "message_router", "config_key" : "test_c", "aaf_username": "test_u", - "aaf_password": "test_p" + "aaf_password": "test_p" } ] return connections def test_validate_cons(): #test good streams - good_conn = _get_good_connection() + good_conn = _get_good_connection() _validate_conns(good_conn) #mutate @@ -85,3 +86,18 @@ def test_validate_cons(): with pytest.raises(BadConnections) as excinfo: _validate_conns(noloc) +def test_nonr_dec(): + def blow(): + d = {} + d["emptyinside"] += 1 + return d + #apply decorator + blow = try_raise_nonr(blow) + with pytest.raises(NonRecoverableError): + blow() + + def work(): + return 666 + work = try_raise_nonr(work) + assert work() == 666 + diff --git a/cdap/cdapplugin/tests/test_discovery.py b/cdap/cdapplugin/tests/test_discovery.py index 7ee59c4..7354f4e 100644 --- a/cdap/cdapplugin/tests/test_discovery.py +++ b/cdap/cdapplugin/tests/test_discovery.py @@ -63,7 +63,7 @@ def test_put_broker(monkeypatch): "test_se", "test_p", "test_pp", - logger) + logger = logger) assert R.text == "URL: http://666.666.666.666:666/application/test_scn, headers {'content-type': 'application/json'}" assert R.json == {'app_preferences': 'test_ap', 'services': 'test_se', 'namespace': 'test_ns', 'programs': 'test_p', 'cdap_application_type': 'program-flowlet', 'app_config': 'test_ac', 'streamname': 'test_sn', 'program_preferences': 'test_pp', 'artifact_name': 'test_an', 'jar_url': 'test_ju', 'artifact_version': 'test_av'} @@ -77,7 +77,7 @@ def test_reconfigure_in_broker(monkeypatch): _TEST_SCN, {"redome" : "baby"}, "program-flowlet-app-config", - logger) + logger = logger) assert R.text == "URL: http://666.666.666.666:666/application/test_scn/reconfigure, headers {'content-type': 'application/json'}" assert R.json == {'reconfiguration_type': 'program-flowlet-app-config', 'config': {'redome': 'baby'}} assert R.status_code == 200 @@ -88,8 +88,7 @@ def test_delete_on_broker(monkeypatch): R = discovery.delete_on_broker( _TEST_BROKER_NAME, _TEST_SCN, - logger) - print(R.text) + logger = logger) assert R.text == "URL: http://666.666.666.666:666/application/test_scn" assert R.status_code == 200 @@ -108,7 +107,7 @@ def test_multi_delete(monkeypatch): monkeypatch.setattr('requests.post', _fake_putpost) R = discovery.delete_all_registered_apps( _TEST_BROKER_NAME, - logger) + logger = logger) assert R.text == "URL: http://666.666.666.666:666/application/delete, headers {'content-type': 'application/json'}" assert R.status_code == 200 -- cgit 1.2.3-korg