From c9ac0d06a6b7e6697df31db27a82d02d3c8102dc Mon Sep 17 00:00:00 2001 From: mwwsp Date: Wed, 3 Oct 2018 16:52:52 +0100 Subject: [PATCH 1/2] fix writing results to file method --- axe_selenium_python/axe.py | 2 +- axe_selenium_python/tests/test_axe.py | 24 +++++++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/axe_selenium_python/axe.py b/axe_selenium_python/axe.py index 8c74072..8b412f6 100755 --- a/axe_selenium_python/axe.py +++ b/axe_selenium_python/axe.py @@ -100,5 +100,5 @@ def write_results(self, data, name="results.json"): :param name: Name of file to be written to. :param output: JSON object. """ - with open(name, "r", encoding="utf8") as f: + with open(name, "w", encoding="utf8") as f: f.write(json.dumps(data, indent=4)) diff --git a/axe_selenium_python/tests/test_axe.py b/axe_selenium_python/tests/test_axe.py index 4217572..160cdac 100755 --- a/axe_selenium_python/tests/test_axe.py +++ b/axe_selenium_python/tests/test_axe.py @@ -4,7 +4,7 @@ from os import path, getenv -import pytest +import json, pytest from selenium import webdriver from ..axe import Axe @@ -62,3 +62,25 @@ def _perform_axe_run(driver): axe.inject() data = axe.execute() return data + + +@pytest.fixture +def tempdir(): + import tempfile + import shutil + new_dir = tempfile.mkdtemp() + yield new_dir + shutil.rmtree(new_dir) + + +def test_write_results_to_file(firefox_driver, tempdir): + axe = Axe(firefox_driver) + data = json.dumps({"testKey": "testValue"}) + filename = path.join(tempdir, "results.json") + + axe.write_results(data=data, name=filename) + + with open(filename) as f: + actual_file_contents = json.loads(f.read()) + + assert data == actual_file_contents From fe4d041c9f7ccced5edb8e11d20852d881f7cb69 Mon Sep 17 00:00:00 2001 From: mwwsp Date: Wed, 3 Oct 2018 17:10:50 +0100 Subject: [PATCH 2/2] updated file write test with webdriver mock --- axe_selenium_python/tests/test_axe.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/axe_selenium_python/tests/test_axe.py b/axe_selenium_python/tests/test_axe.py index 160cdac..16501a1 100755 --- a/axe_selenium_python/tests/test_axe.py +++ b/axe_selenium_python/tests/test_axe.py @@ -4,7 +4,9 @@ from os import path, getenv -import json, pytest +import json +import pytest +from unittest import mock from selenium import webdriver from ..axe import Axe @@ -73,8 +75,8 @@ def tempdir(): shutil.rmtree(new_dir) -def test_write_results_to_file(firefox_driver, tempdir): - axe = Axe(firefox_driver) +def test_write_results_to_file(tempdir): + axe = Axe(mock.MagicMock()) data = json.dumps({"testKey": "testValue"}) filename = path.join(tempdir, "results.json")