From f2090db7ff3ce528fda1c68657afae79f2dfd001 Mon Sep 17 00:00:00 2001 From: Jeremy Cline Date: Jun 05 2017 19:15:20 +0000 Subject: Merge #7 `Fix the tests` --- diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 0000000..14a820d --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1 @@ +include COPYING README.md requirements.txt dev-requirements.txt diff --git a/dev-requirements.txt b/dev-requirements.txt index a96f607..efc2b73 100644 --- a/dev-requirements.txt +++ b/dev-requirements.txt @@ -6,5 +6,6 @@ pytest-cov requests_mock # Documentation build requirements -sphinx +# Pin sphinx until https://bitbucket.org/birkenfeld/sphinx-contrib/issues/182 is fixed and released +sphinx==1.5.6 sphinxcontrib-httpdomain diff --git a/docs/conf.py b/docs/conf.py index 5e920dc..336a242 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -17,10 +17,11 @@ # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. # -# import os -# import sys -# sys.path.insert(0, os.path.abspath('.')) -import greenwave +import os +import sys +sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../'))) + +import greenwave # noqa: E402 # -- General configuration ------------------------------------------------ diff --git a/greenwave/api_v1.py b/greenwave/api_v1.py index 1cf96b9..314f9b7 100644 --- a/greenwave/api_v1.py +++ b/greenwave/api_v1.py @@ -51,7 +51,7 @@ def make_decision(): product_version = request.get_json()['product_version'] decision_context = request.get_json()['decision_context'] applicable_policies = {} - for policy_id, policy in policies.iteritems(): + for policy_id, policy in policies.items(): if product_version == policy['product_version'] and \ decision_context == policy['decision_context']: applicable_policies[policy_id] = policy @@ -61,7 +61,7 @@ def make_decision(): policies_satisified = True summary = [] unsatisfied_requirements = [] - for policy_id, policy in applicable_policies.iteritems(): + for policy_id, policy in applicable_policies.items(): for item in subjects: res = requests_session.get('{0}/results?item={1}&testcases={2}'.format( current_app.config['RESULTSDB_API_URL'], item, ','.join(policy['rules'])) diff --git a/greenwave/tests/test_api_v10.py b/greenwave/tests/test_api_v10.py index ebc0022..8210e13 100644 --- a/greenwave/tests/test_api_v10.py +++ b/greenwave/tests/test_api_v10.py @@ -23,7 +23,7 @@ def test_cannot_make_decision_without_product_version(client): r = client.post('/api/v1.0/decision', data=json.dumps(data), content_type='application/json') assert r.status_code == 400 - assert 'Missing required product version' in r.get_data() + assert u'Missing required product version' in r.get_data(as_text=True) def test_cannot_make_decision_without_decision_context(client): @@ -34,7 +34,7 @@ def test_cannot_make_decision_without_decision_context(client): r = client.post('/api/v1.0/decision', data=json.dumps(data), content_type='application/json') assert r.status_code == 400 - assert 'Missing required decision context' in r.get_data() + assert u'Missing required decision context' in r.get_data(as_text=True) def test_cannot_make_decision_without_subject(client): @@ -45,7 +45,7 @@ def test_cannot_make_decision_without_subject(client): r = client.post('/api/v1.0/decision', data=json.dumps(data), content_type='application/json') assert r.status_code == 400 - assert 'Missing required subject' in r.get_data() + assert u'Missing required subject' in r.get_data(as_text=True) def test_404_for_inapplicable_policies(client): @@ -57,7 +57,7 @@ def test_404_for_inapplicable_policies(client): r = client.post('/api/v1.0/decision', data=json.dumps(data), content_type='application/json') assert r.status_code == 404 - assert 'Cannot find any applicable policies for %s' % data['product_version'] in r.get_data() + assert u'Cannot find any applicable policies for rhel-7' in r.get_data(as_text=True) def test_make_a_decison_on_passed_result(client): @@ -110,7 +110,7 @@ def test_make_a_decison_on_passed_result(client): content_type='application/json') assert r.status_code == 200 res_data = json.loads(r.get_data(as_text=True)) - assert res_data['policies_satisified'] == True + assert res_data['policies_satisified'] is True assert res_data['applicable_policies'] == ['1'] assert res_data['summary'] == 'foo-1.0.0-2.el7: policy 1 is satisfied as all required' \ ' tests are passing' @@ -184,7 +184,7 @@ def test_make_a_decison_on_failed_result_with_waiver(client): content_type='application/json') assert r.status_code == 200 res_data = json.loads(r.get_data(as_text=True)) - assert res_data['policies_satisified'] == True + assert res_data['policies_satisified'] is True assert res_data['applicable_policies'] == ['1'] assert res_data['summary'] == 'foo-1.0.0-2.el7: policy 1 is satisfied as all required' \ ' tests are passing' @@ -246,7 +246,7 @@ def test_make_a_decison_on_failed_result(client): content_type='application/json') assert r.status_code == 200 res_data = json.loads(r.get_data(as_text=True)) - assert res_data['policies_satisified'] == False + assert res_data['policies_satisified'] is False assert res_data['applicable_policies'] == ['1'] assert res_data['summary'] == 'foo-1.0.0-2.el7: 2 of 2 required tests' \ ' failed, the policy 1 is not satisfied' @@ -289,7 +289,7 @@ def test_make_a_decison_on_no_results(client): content_type='application/json') assert r.status_code == 200 res_data = json.loads(r.get_data(as_text=True)) - assert res_data['policies_satisified'] == False + assert res_data['policies_satisified'] is False assert res_data['applicable_policies'] == ['1'] assert res_data['summary'] == 'foo-1.0.0-2.el7: no test results found' expected_unsatisfied_requirements = [