test all files and directories in $webroot

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
This commit is contained in:
pvogt09 2020-03-23 00:14:38 +01:00
parent 7555a6814a
commit dc9f139c92

View file

@ -290,6 +290,31 @@ def test_installPihole_fresh_install_readableBlockpage(Pihole, test_webpage):
check_admin = test_cmd.format('x', webroot + '/admin', webuser)
actual_rc = Pihole.run(check_admin).rc
assert exit_status_success == actual_rc
def get_directories_recursive(dir):
if dir is None:
return dir
webinterface = Pihole.run('ls -d {}'.format(dir + '/*/'))
directories = list(filter(bool, webinterface.stdout.splitlines()))
dirs = directories
for dir in directories:
dir_rec = get_directories_recursive(dir)
if type(dir_rec) == str:
dirs.extend([dir_rec])
else:
dirs.extend(dir_rec)
return dirs
directories = get_directories_recursive(webroot + '/admin/*/')
for dir in directories:
check_pihole = test_cmd.format('r', dir, webuser)
actual_rc = Pihole.run(check_pihole).rc
check_pihole = test_cmd.format('x', dir, webuser)
actual_rc = Pihole.run(check_pihole).rc
filelist = Pihole.run(
'find "{}" -maxdepth 1 -type f -exec echo {{}} \;;'.format(dir))
files = list(filter(bool, filelist.stdout.splitlines()))
for file in files:
check_pihole = test_cmd.format('r', file, webuser)
actual_rc = Pihole.run(check_pihole).rc
# TODO: which other files have to be checked?
# check web interface files
if installWebInterface is True: