add wrappers to utils.sh for setting FTL config & add tests
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
This commit is contained in:
parent
e3ffec5762
commit
632aead691
|
@ -145,3 +145,26 @@ getFTLPID() {
|
|||
FTL_PID=${FTL_PID:=-1}
|
||||
echo "${FTL_PID}"
|
||||
}
|
||||
|
||||
#######################
|
||||
# returns value from FTLs config file using pihole-FTL --config
|
||||
#
|
||||
# Takes one argument: key
|
||||
# Example getFTLConfigValue dns.piholePTR
|
||||
#######################
|
||||
getFTLConfigValue(){
|
||||
pihole-FTL --config "${1}"
|
||||
}
|
||||
|
||||
#######################
|
||||
# sets value in FTLs config file using pihole-FTL --config
|
||||
#
|
||||
# Takes two arguments: key and value
|
||||
# Example setFTLConfigValue dns.piholePTR PI.HOLE
|
||||
#
|
||||
# Note, for complex values such as dnsmasq.upstreams, you should wrap the value in single quotes:
|
||||
# setFTLConfigValue dnsmasq.upstreams '[ "8.8.8.8" , "8.8.4.4" ]'
|
||||
#######################
|
||||
setFTLConfigValue(){
|
||||
pihole-FTL --config "${1}" "${2}"
|
||||
}
|
||||
|
|
|
@ -170,3 +170,58 @@ def test_getFTLPIDFile_and_getFTLPID_custom(host):
|
|||
)
|
||||
expected_stdout = "1234\n"
|
||||
assert expected_stdout == output.stdout
|
||||
|
||||
|
||||
def test_setFTLConfigValue_getFTLConfigValue(host):
|
||||
"""
|
||||
Confirms setFTLConfigValue works
|
||||
Requires FTL to be installed, so we do that first (taken from test_FTL_binary_installed_and_responsive_no_errors)
|
||||
"""
|
||||
host.run(
|
||||
"""
|
||||
source /opt/pihole/basic-install.sh
|
||||
create_pihole_user
|
||||
funcOutput=$(get_binary_name)
|
||||
echo "new/http" > /etc/pihole/ftlbranch
|
||||
binary="pihole-FTL${funcOutput##*pihole-FTL}"
|
||||
theRest="${funcOutput%pihole-FTL*}"
|
||||
FTLdetect "${binary}" "${theRest}"
|
||||
"""
|
||||
)
|
||||
|
||||
output = host.run(
|
||||
"""
|
||||
source /opt/pihole/utils.sh
|
||||
setFTLConfigValue "dnsmasq.upstreams" '["1.1.1.1"]'
|
||||
"""
|
||||
)
|
||||
|
||||
assert '[ "1.1.1.1" ]' in output.stdout
|
||||
|
||||
|
||||
def test_getFTLConfigValue_getFTLConfigValue(host):
|
||||
"""
|
||||
Confirms getFTLConfigValue works (also assumes setFTLConfigValue works)
|
||||
Requires FTL to be installed, so we do that first (taken from test_FTL_binary_installed_and_responsive_no_errors)
|
||||
"""
|
||||
host.run(
|
||||
"""
|
||||
source /opt/pihole/basic-install.sh
|
||||
create_pihole_user
|
||||
funcOutput=$(get_binary_name)
|
||||
echo "new/http" > /etc/pihole/ftlbranch
|
||||
binary="pihole-FTL${funcOutput##*pihole-FTL}"
|
||||
theRest="${funcOutput%pihole-FTL*}"
|
||||
FTLdetect "${binary}" "${theRest}"
|
||||
"""
|
||||
)
|
||||
|
||||
output = host.run(
|
||||
"""
|
||||
source /opt/pihole/utils.sh
|
||||
setFTLConfigValue "dnsmasq.upstreams" '["9.9.9.9"]' > /dev/null
|
||||
getFTLConfigValue "dnsmasq.upstreams"
|
||||
"""
|
||||
)
|
||||
|
||||
assert '[ "9.9.9.9" ]' in output.stdout
|
||||
|
|
Loading…
Reference in New Issue