From 1317b67657874e7c2080366149670922b9c6fdbf Mon Sep 17 00:00:00 2001 From: Dan Schaper Date: Mon, 23 Jan 2017 18:12:26 -0800 Subject: [PATCH] Attempt at modifying firewall rules for testing. --- test/test_automated_install.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/test/test_automated_install.py b/test/test_automated_install.py index 58aefe91..13df8c61 100644 --- a/test/test_automated_install.py +++ b/test/test_automated_install.py @@ -65,8 +65,8 @@ def test_setupVars_saved_to_file(Pihole): assert "{}={}".format(k, v) in output def test_configureFirewall_firewalld_no_errors(Pihole): - ''' confirms firewalld rules are applied when appopriate ''' - mock_command('firewall-cmd', '0', Pihole) + ''' confirms firewalld rules are applied when appropriate ''' + mock_command('firewall-cmd', 'running', '0', Pihole) configureFirewall = Pihole.run(''' source /opt/pihole/basic-install.sh configureFirewall @@ -80,19 +80,21 @@ def test_configureFirewall_firewalld_no_errors(Pihole): # Helper functions -def mock_command(script, result, container): +def mock_command(script, result, retVal, container): ''' Allows for setup of commands we don't really want to have to run for real in unit tests ''' ''' TODO: support array of results that enable the results to change over multiple executions of a command ''' + container.run(''' + cat < {script}\n{content}\nEOF + echo {result} + chmod +x {script} + '''.format(script=full_script_path, content=mock_script, result=result)) full_script_path = '/usr/local/bin/{}'.format(script) mock_script = dedent('''\ #!/bin/bash -e echo "\$0 \$@" >> /var/log/{script} + exit {retcode} - '''.format(script=script, retcode=result)) - container.run(''' - cat < {script}\n{content}\nEOF - chmod +x {script} - '''.format(script=full_script_path, content=mock_script)) + '''.format(script=script, retcode=retVal)) def run_script(Pihole, script): result = Pihole.run(script)