Commit graph

318 commits

Author SHA1 Message Date
Dan Schaper
c19788dd18
Mock which sh to reutrn /bin/sh.
Check for `/bin/sh` library

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2022-04-20 11:22:58 -07:00
Adam Warner
8de814ab34
Split the tests, too. Enhance the descriptions
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-04-19 18:35:56 +01:00
spmfox
2601162243 Changed ldd binary check from /bin/ls to /usr/bin/bash
Signed-off-by: spmfox <spmfox@foxwd.com>
2022-04-16 16:46:07 -04:00
Adam Warner
db116971ce
I tried to do too many things in one function, vastly overcomplicating what should have been _this_ all along
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-04-14 22:53:38 +01:00
yubiuser
d3e94cbceb
Merge pull request #4653 from pi-hole/refactor-utils-redux
Tweaks to functions in utils.sh and refactored usages in webpage.sh
2022-04-04 23:25:54 +02:00
Adam Warner
4d31d5ee11
Address review comments
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-04-04 22:02:26 +01:00
Adam Warner
7fa8cdd03e
Address:
- Review Comments
 - Stickler Complaints
2022-04-02 12:46:07 +01:00
Dan Schaper
4230be0c80
Hirsute buildpack EOL upstream. Adding impish.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2022-04-01 12:00:14 -07:00
Adam Warner
48138d32b6
Adjust addOrEditKeyValPair to optionally take two or three arguments (adjust test to suit)
Add a removeKey function with test

update webpage.sh to reference functions in utils.sh (this can likely be abstracted/refactored further)

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-03-16 17:42:01 +00:00
Christian König
42424b515b Add getFTLAPIPort function
Add ftl_api_port function

Signed-off-by: Christian König <ckoenig@posteo.de>

Use getFTLAPIPort in pihole

Signed-off-by: Christian König <ckoenig@posteo.de>

Use default portfile as fallback

Signed-off-by: Christian König <ckoenig@posteo.de>

Fix stickler

Signed-off-by: Christian König <ckoenig@posteo.de>

Correct variables

Signed-off-by: Christian König <ckoenig@posteo.de>

Apply suggestions from code review

Co-authored-by: DL6ER <DL6ER@users.noreply.github.com>

Add test getFTLAPIPort returing default port

Signed-off-by: Christian König <ckoenig@posteo.de>

Remove unused code from test_key_val_replacement_works

Signed-off-by: Christian König <ckoenig@posteo.de>

Add getFTLAPIPort_custom test

Signed-off-by: Christian König <ckoenig@posteo.de>

Fix output format

Signed-off-by: Christian König <ckoenig@posteo.de>

Add debugging

Signed-off-by: Christian König <ckoenig@posteo.de>

Remove debugging and fix function

Signed-off-by: Christian König <ckoenig@posteo.de>
2022-02-27 18:16:53 +01:00
Christian König
d7d8e9730b Remove pihole-FTL.conf.5 from automated tests
Signed-off-by: Christian König <ckoenig@posteo.de>
2022-02-04 20:43:47 +01:00
Adam Warner
444526ad58
Switch from centos8 to centos8:stream base image for centos 8 tests 2022-02-03 18:43:19 +00:00
Adam Warner
77e5121d43
Split new function out into a separte utility script and add a test for it. Can be used in future to organise re/commonly-used code
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2022-01-30 23:05:28 +00:00
MichaIng
14a379d448
Fix generated /etc/os-release file in OS check test
Signed-off-by: MichaIng <micha@dietpi.com>
2021-11-30 02:57:44 +01:00
Adam Warner
cdd4d9ea9e
Update the tests (#4427)
* unpin the requirements and update all to latest available - needs more work still. see notes in `def host()`

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

* fix py3 monkey patch of testinfra docker using bash

Signed-off-by: Adam Hill <adam@diginc.us>

* update the other test files to use `host` instead of `Pihole`
Address some sticklr and codefactor
update python version from 3.7 to 3.8
preload `git` onto the centos/fedora test images, and switch which with command -v in the passthrough mock
testinfra is deprecated, use pytest-testinfra

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Co-authored-by: Adam Hill <adam@diginc.us>
2021-11-18 01:03:37 +00:00
pvogt09
cedd1a2591
unit test for umask problems in #3177 and #2730 (#3191)
* add test for file permissions of $webroot

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* changes sudo to su for running command as user www-data

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* installs PIHOLE_WEB_DEPS to create LIGHTTPD_USER

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* changes stdout to rc

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* use installPihole instead of installPiholeWeb in test

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* try installation process with main

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* mock systemctl

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* removes stickler errors

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* start lighttpd and make webpage test optional

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* test all files and directories in $webroot

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* fix stickler and codefactor warnings

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* set permission for /var/cache if it did not exist before

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* add test case for pihole files

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* fix stickler errors

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* revert "set permission for /var/cache if it did not exist before" and make lighttpd start work

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* add --add-cap=NET_ADMIN to enable FTL start

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* specify DNS server for cURL

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* check files created by FTL

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* reorder code and change nameserver in /etc/resolv.conf

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* resolve with dig instead of relying on /etc/resolv.conf

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* set IP to 127.0.0.1 in setupVars.conf for blockpage tests

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* resolve domain with dig and remove debug output

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* fix stickler errors

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* no git pull in Github Action runs for pull requests

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* --cap-add=ALL test

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* fix stickler errors

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* remove debug code

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* update_repo patch for CentOS 7 in Github Actions

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* removes TODOs and stickler warnings

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* adds trailing slash to domain

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* use only first result from dig

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* domain name resolution does not work reliably in docker container

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* repair executable permission

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>

* Create mock_command_passthrough that allows intercepting of specific arguments - everything else is passed through to the proper command. Use this new command instead of making changes in basic-install.sh to make the tests pass.

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Co-authored-by: Adam Warner <me@adamwarner.co.uk>
2021-11-11 16:44:57 +00:00
Blayne Campbell
8713135b01
update tests: remove fedora 32, add fedora 34 (#4403)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2021-10-23 19:43:20 +01:00
Adam Warner
5b03160295
Install script comment tweaks (#4361) 2021-10-04 11:40:53 +01:00
Christian König
466520366d Fogot to save...
Signed-off-by: Christian König <ckoenig@posteo.de>
2021-10-02 23:47:13 +02:00
Christian König
9dbcbdbe66 Adjust tests
Signed-off-by: Christian König <ckoenig@posteo.de>
2021-10-02 23:43:08 +02:00
yubiuser
1c286c7bc4
Select proper PHP version on RPM based OS after INSTALLER_DEPS have been installed (#4325)
* Select proper PHP version on RPM based OS after INSTALLER_DEPS have been installed

* Remove check for unsupported RPM distros as it is checked in os_check already

* Add select_rpm_php function to tox tests

Signed-off-by: Christian König <ckoenig@posteo.de>
2021-09-12 13:40:37 -07:00
Adam Warner
d68a2ffaf3
Install only minimal requiered package before performing os_check
Co-authored-by: Christian König <ckoenig@posteo.de>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:36 +01:00
Adam Warner
1358209a9a
rename distro_check to package_manager_detect, as it is more in keeping with what the function actually does
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:36 +01:00
Adam Warner
38d4b2a883
add OS_CHECK_DOMAIN_NAME override to all the dockerfiles
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-07-14 22:41:17 +01:00
Adam Warner
e2e7d0a6aa
add tests for ubuntu 21
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-07-14 22:36:02 +01:00
Daniel
fdca19e66d Support and test Debian Bullsye (11)
Signed-off-by: Daniel <daniel@developerdan.com>
2021-07-07 19:09:54 +00:00
Adam Warner
4ac4bc5c18
Merge branch 'development' into fix/gravity_no_locallist 2021-07-04 00:48:09 +01:00
Adam Warner
87f2ae82cd
Stickler gonna stickle...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-07-03 00:07:37 +01:00
Adam Warner
469b715442
Add three new tests (one for each dependecy array) to check packages are available in supported OS package repos
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-07-03 00:00:54 +01:00
DL6ER
60513f93a3
Don't set IPV{4,6}_ADDRESS in conftest.py
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-18 09:26:23 +02:00
DL6ER
aa88be335e
Acknowledge that IPV{4,6}_ADDRESS may not exist
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-16 11:44:54 +02:00
DL6ER
74948ae5c1
The correct port separator is '#' not ':' in dnsmasq style. This should not have been changed in #4083 in the first place.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-14 22:53:12 +02:00
bcambl
d5f13018a7 Merge branch 'release/v5.3' into fedora_33_support
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2021-04-12 20:06:11 -06:00
jbzdarkid
8090071eff Update regex to disallow leading zeros
Also updated a comment to point to a non-experimental RFC.

Signed-off-by: jbzdarkid <jbzdarkid@gmail.com>
2021-03-21 16:27:08 -07:00
Joseph Blackman
89c80947df Improve regexes for ipv4 matching
Signed-off-by: jbzdarkid <jbzdarkid@gmail.com>
2021-03-21 16:24:35 -07:00
bcambl
b62495d89e update tests to fedora 33
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2021-01-21 20:20:07 -06:00
Adam Warner
d1539335bc
appease stickler-ci
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-12-01 10:13:36 +00:00
Adam Warner
3e73782f0e
Remove Travis CI config
Create Github Actions config
Split tox ini into one per supported distro so they can be run seperately

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-12-01 10:02:31 +00:00
Adam Warner
2a82e1fec1
Nothing to see here. I just forgot a page.
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-11-18 23:29:08 +00:00
Adam Warner
f7982dfbe1
-remove duplicate OS dockerfiles
+rename centos->centos_8, centos7 -> centos_7
+update centos/fedora test script

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-11-16 22:39:50 +00:00
pvogt09
b375dd2c81 Update test/ubuntu_20.Dockerfile
Co-authored-by: Adam Warner <github@adamwarner.co.uk>
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-11-15 20:13:43 +01:00
pvogt09
4386cc4f22 Revert "add test case for installation of dependencies for installer, core and web"
This reverts commit 60a4814ac1.

Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 12:44:57 +01:00
pvogt09
cb49ce38f5 fix stickler errors
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 12:32:23 +01:00
pvogt09
3128d14d1f update images to versions supported by pi-hole 5
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 12:02:57 +01:00
pvogt09
bef9cd3bc2 mock whiptail to add universe repo
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 11:35:49 +01:00
pvogt09
60a4814ac1 add test case for installation of dependencies for installer, core and web
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 11:35:48 +01:00
pvogt09
fec1595183 add docker containers for debian 9 and 10, ubuntu 16 and 18, fedora 28 and 29
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-27 11:34:27 +01:00
Adam Warner
c80f0766c5
drop debian/fedora container versions to lowest supported
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-26 17:56:17 +00:00
Adam Warner
fb454ebe14
fix stickler complaints
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-23 23:09:07 +01:00
Adam Warner
ee556088b5
Fake OS details in /etc/os-release and confirm install fails
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-23 23:05:41 +01:00
bcambl
660c17814d
E128 continuation line under-indented for visual indent
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-10-23 22:20:37 +01:00
bcambl
a7c58e7112
E302 expected 2 blank lines, found 1
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-10-23 22:20:36 +01:00
bcambl
05b6717187
test PHP optin/optout separately for CentOS 7 & 8
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-10-23 22:20:36 +01:00
bcambl
2c461460db
test with both centos7 and centos8 images
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-10-23 22:20:36 +01:00
Adam Warner
5aab68ab41
Update test/test_automated_install.py
Co-authored-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-10-23 22:20:36 +01:00
Adam Warner
c9edcfa335
add test to check "os_check" works
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-23 22:18:42 +01:00
Adam Warner
33e5735053
Change base images for test containers to latest supported version
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-23 22:18:42 +01:00
Adam Warner
de02bcc8a0
Merge pull request #3787 from pi-hole/verdantfire
fixed small grammatical error
2020-10-19 10:53:41 +01:00
DL6ER
01c9bbd3ca
Improve processor detection to use the new dedicated ARMv4T, ARMv5TE and ARMv8-A binaries we provide for FTL.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-10-14 20:31:22 +02:00
verdantfire
b88efd2527
fixed small grammatical error
Co-authored-by: Himanshu Ruhela <himanshuruhela013@gmail.com>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-09 13:46:25 +01:00
Adam Warner
9e96ff37de
Fix merge conflicts
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-12 22:16:43 +01:00
Adam Warner
a37dba2c81
remove configureFirewall function, the call to it, and related tests
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-04-19 14:52:01 +01:00
pvogt09
25c5661c1b fix stickler errors
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-04-03 19:22:30 +02:00
pvogt09
a993b8b34d fixes #3217 by checking for existing pihole group
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-04-03 13:18:32 +02:00
XhmikosR
7b8611ced0
Assorted typo fixes. (#3126)
* Assorted typo fixes.

Signed-off-by: XhmikosR <xhmikosr@gmail.com>

Co-authored-by: Dan Schaper <dan.schaper@pi-hole.net>
2020-03-08 16:53:14 -07:00
jnozsc
4a711340ef
use py3 instead py2 (#3153)
* use py3 instead py2

Signed-off-by: jnozsc <jnozsc@gmail.com>

* use python 3.6

Signed-off-by: jnozsc <jnozsc@gmail.com>
2020-03-02 23:30:44 -08:00
Adam Warner
12817c09bb
(Squashed commits)
Always ensure we have the correct machine arch by storing to/reading from a file rather than depending on global variable that for some reason is not always populated...

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

no need for global variable

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Use a file in the temporary FTL download directory

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Local binary variable named to l_binary. Disambiguate from global binary.

Allow 'binary' to be shadowed for testing.

Use ./ftlbinary in all operations.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Revert shadow ability on binary variable.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Remove unused tests, binary variable can not be overridden.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

This should work here, too

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

binary name is passed through from pihole checkout

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Add comments

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

OK, let's try it this way again

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

we might be getting somewhere.. squash after this I think!

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

This is a test to see if it fixes the aarch64 test (we are definitely squashing these commits

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

fix the rest of the tests

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Remove trailing whitespace in the files we've touched here

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-11-15 19:49:09 +00:00
bcambl
cf2b021502 linting: E302 expected 2 blank lines, found 1
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-14 13:29:43 -06:00
bcambl
cd9b1fcb8c update tests for SELinux changes
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-14 13:02:44 -06:00
Adam Warner
9a6deb5a1a
Fix tests
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-09-17 21:16:49 +01:00
Mcat12
1d5755a4c2
Add tests for valid_ip
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-07-10 21:18:58 -07:00
bcambl
218476fab0 ensure installation dependencies for FTL tests which rely on /etc/init.d
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-07-06 11:06:08 -06:00
bcambl
c48b03584f update Fedora Dockerfile to 30
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-07-06 10:57:57 -06:00
Mcat12
d67122dffc
Pin the Fedora test docker container to 29
The tests are currently failing due to a change in Fedora 30, which we
are not currently supporting.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-06-16 11:13:23 -07:00
pvogt09
efbd42f7b5 Moves creation of pihole user before FTL installation
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-12 11:27:25 +02:00
DL6ER
7479485d45
Add test for the case the binary variable is unset (defaults to "tbd" in this case)
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-31 20:00:26 +01:00
DL6ER
d26f2dcb2c
Use global binary variable in tests for automated install
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:47:28 +01:00
Mark Drobnak
1789a2db29
Merge pull request #2384 from pi-hole/feature/install-privacy-level
Set FTL Privacy Level During Install
2018-11-01 15:16:11 -04:00
bcambl
6f8e8e98bb update centos version check test
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-08-29 22:16:11 -06:00
Mcat12
c22e94c9c7
Update test to include empty FTL config
The installer ensures that an FTL config will exist, and creates an
empty file if it doesn't.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2018-08-20 19:33:15 -04:00
DL6ER
f5c3dc5d9d
Improve download error message that is shown when downloading or verifying the binary failed
Signed-off-by: DL6ER <dl6er@dl6er.de>
2018-08-07 16:51:58 +02:00
Adam Hill
b04195041a
Update README.md 2018-07-12 10:22:50 -05:00
Adam Hill
8ca4c66e3c
make smarter assertions rathe than largestring not in string
Signed-off-by: Adam Hill <adam@diginc.us>
2018-07-12 00:03:25 -05:00
Adam Hill
449b7bf6e4
reduce the amount of strict not in checks
Signed-off-by: Adam Hill <adam@diginc.us>
2018-07-11 23:25:16 -05:00
Adam Hill
88e4b6390c
Tox!
Signed-off-by: Adam Hill <adam@diginc.us>
2018-07-11 23:24:28 -05:00
bcambl
fff31558a0 assert REMI repository is not installed for Fedora
- fix whiptail mock comments to clarify continue vs cancel

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-08 14:02:31 -06:00
bcambl
4c23964964 ensure images are build prior to running tests
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-07 18:43:11 -06:00
bcambl
d4addd53ad Add tests for Fedora/CentOS distro_check
- test to ensure installer behavior with unsupported CentOS releases
- test to ensure repository enablement
- test to ensure PHP upgrade opt-in/opt-out behavior

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-07 17:44:05 -06:00
bcambl
09d40679c0 add test for unsupported distro checking
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-06 10:07:43 -06:00
bcambl
553aad6ed2 add Fedora container to test matrix
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-05 18:12:39 -06:00
bcambl
5ca2ad6148 move test globals & mock commands to conftest
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-05 18:10:43 -06:00
bcambl
40537e1522 python linting: missing whitespace after ',' (E231)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:43:24 -06:00
bcambl
064a75b21b python linting: missing whitespace around operator (E225)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:43:18 -06:00
bcambl
1d3445bc0f python linting: whitespace after '(' and before ')' (E201 & E202)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:43:09 -06:00
bcambl
79232d02c9 python linting: 'pytest' imported but unused (F401)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:30:00 -06:00
bcambl
9bd4986781 python linting: whitespace before ':' (E203)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:21:57 -06:00
bcambl
c3d443aaff python linting: lines > 79 characters (E501)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-03 00:09:56 -06:00
bcambl
da3dfd0998 python linting: missing whitespace after ':' (E231)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-02 15:25:51 -06:00
bcambl
4468d81472 python linting: 2 lines prior to defs (E302)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-07-02 14:54:19 -06:00
bcambl
9d3d33b6a2 add tests for selinux checking
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-06-26 00:09:30 -06:00
Adam Warner
8cf8da4c78
- Check file /etc/pihole/ftlbranch for current FTL branch, download from github if master, or pi-hole.net if other
- Check if downloaded binary file can resolve queries, if so stop and disable dnsmasq
- Add service_disable function
- Add dependency libcap2-bin on debian to enable setcap. Need to check other distos
-Always download FTL binary if /etc/pihole/ftlbranch does not contain "master"
- Change some strings/variables that reference dnsmasq and change them to pihole/pihole-FTL

Signed-off-by: Adam Warner <adamw@rner.email>
2018-03-06 18:44:57 +00:00
WaLLy3K
26afe04926 Remove index.js test 2017-09-19 01:04:04 +10:00
Adam Warner
42b5574f9b
remove no longer needed tests
Signed-off-by: Adam Warner <adamw@rner.email>
2017-09-09 19:41:05 +01:00
WaLLy3K
fdf2649f2f Clean up known remaining colour output issues (#1613)
* Print newline on error message

* Output last three lines of error if update fails

* Consistent error messages & housekeeping

* Add shellcheck directive to ignore COL_TABLE
* Quoted and braced variables for codebase consistency
* Escaped newlines correctly
* Made error messages consistent (indenting and wording)
* Removed consecutive echos

* Conditional formatting consistency

* Braced, quoted and used [[ on conditionals

* Fix specific ShellCheck issues

* Fixed issues that could be safely changed without extensive testing

* Update SELinux whiptail behaviour & more

* Colourised some strings
* Fixed multiple line string indenting
* Made output consistent with existing codebase
* Removed sequential echos
* Make SELinux whiptail use "--defaultno", and change text wording

* Add help text for hostrecord, and colourise output

* this should fix the tests...

Signed-off-by: Adam Warner <adamw@rner.email>

* revert changes to `update_package_cache()` to prove tests

Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-26 18:00:08 +01:00
Mcat12
b09c660833 Always process DNS and DHCP settings in installer (#1630)
* Always process DNS and DHCP settings in installer

* Make sure dnsmasq config exists before modifying it

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>

* Make sure the dnsmasq config directory exists

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>

* Only remove the DHCP config if it exists (fixes tests, hopefully)

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2017-07-26 17:15:23 +01:00
Adam Warner
bf70c2c660
initial changes to tests to take into account changes to strings
Signed-off-by: Adam Warner <adamw@rner.email>
2017-07-12 22:57:57 +01:00
Dan Schaper
c29c4ceb0f
Integrate DL's update.sh fixes.
`shellcheck -x` for following files.

Do not test for included files SC1091

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-06-25 14:39:09 -07:00
Dan Schaper
07fc047dd8
Remove testing for debug as this is getting a re-write by Jacob.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-06-25 12:26:16 -07:00
Dan Schaper
0c2827e130
Test exclusion for sourced files SC1090.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-06-24 15:49:16 -07:00
Adam Warner
536585b846 Colourise Core Output Text (#1471)
* Define colours within COL_TABLE
* Do not output colours for non-terminal instances
* Removed ":::"
* Fixed indenting & spacing
* Made output consistent throughout project
* Reworded text to fit on standard 80 char wide Terminal screen
* Made 'sudo raspi-config' warning (insufficient disk space) only show on RPi
* Make "Installation/Update Complete" the final msg
* Remove redundant messages
* Simplify update available message
* Confirm user would like to begin uninstall
* If "git pull" string says "Already up-to-date.", place [i] before it
* Colour Temp/Interface output
* Made `pihole disable 5z` invalid
* Added error fallback if invalid argument (not s/m) is detected
* Quoted "$2" for consistency
* Updated help text
* L185/286: Replaced echo with redirect
* User agents for adblock.mahakala.is/adaway.org unnecessary 
* Print newline on confirmation of repository reset
* Add output to admin-related dnsmasq restarts
* Return error message for "pihole -q"
* Imply default checkout behaviour with y/N
* Fix uninstall failing to remove pihole user
* Print checkout 'git remote show origin' STDERR on new line
* Replaced checkout "AdminLTE" wording with "Web Admin"
2017-06-21 21:49:05 +10:00
DL6ER
939055f19c Revert "Add FTL tests to the test suite (#1510)" (#1519)
This reverts commit cf6a1ac9ad.
2017-06-05 13:51:13 +02:00
DL6ER
cf6a1ac9ad Add FTL tests to the test suite (#1510)
* Add first version of FTL tests

* Wait one second to allow FTL to start up and analyze our mock log

* Add test_FTL_telnet_statistics

* Added test_FTL_telnet_top_clients

* Add test_FTL_telnet_top_domains
2017-06-04 13:23:56 +02:00
DL6ER
01e091fd17 Prefer ULA over GUA addresses [IPv6] (#1508)
* On installs with GUA and ULA's we should prefer ULA's as it's been demonstrated that GUA's can and often are rotated by ISPs. Fixes #1473

* Add test for link-local address detection

* Add ULA-only and GUA-only tests

* Add test_IPv6_GUA_ULA_test and test_IPv6_ULA_GUA_test

* Add ""

* Add mock_command_2 command that can mock a command with more than one argument (as "ip -6 address") and result multiple lines of results

* Make mock_command_2 more similar to the original mock_command

* Correct comments

* Fixed remaining comments

* Fixed one last comment...

* Fixed a comment...
2017-06-02 23:01:48 +02:00
georou
6c56665403 updated travis for new firewalld add service 2017-03-16 10:26:51 +11:00
Dan Schaper
dcb9797f35
Tests changed to reflect uname calls.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-21 09:24:00 -08:00
DL6ER
e9b50442fa
Remove test_FTL_support_files_installed as we create them using the init.d script as of now 2017-02-21 11:25:18 +01:00
Dan Schaper
02ea9b9abc
Check file path and permissions in one go.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 18:15:40 -08:00
Dan Schaper
4cd598ae10
Check support files installed and permissions.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 18:12:51 -08:00
Dan Schaper
8eeb8ad779
Check binary installed and functional.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 17:15:04 -08:00
Dan Schaper
70e876ee13
Download tests.
Make sure we download a binary and not just get the GitHub page.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 11:11:16 -08:00
Dan Schaper
7a269e757e
Debian buildpack image for docker (Need curl for testing, using scm version to add curl and git.)
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 09:24:47 -08:00
Dan Schaper
87edbeaf58
Factor out downloader from detector function.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 08:40:17 -08:00
Dan Schaper
339f95b00c
Change from uname -m to straight arch
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 08:13:46 -08:00
Dan Schaper
e480c761cd
Merge remote-tracking branch 'origin/new/FTL-binary' into new/FTL-binary
# Conflicts:
#	test/test_automated_install.py
2017-02-20 07:25:34 -08:00
Dan Schaper
26c628f8a5
Mock ldd command response.
Test aarch64 detection

Arm v6/v7 little endian.

x86_64 native

Test aarch64 detection

Unknown platform detection.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 07:22:25 -08:00
Dan Schaper
59d6907d71
Test aarch64 detection
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 06:34:57 -08:00
Dan Schaper
b4450a3918
Mock ldd command response.
Test aarch64 detection

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 06:34:54 -08:00
Dan Schaper
7032be6049
Template for FTL engine type tests.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2017-02-20 06:34:40 -08:00
Dan Schaper
439999cb62
Last rule check. 2017-01-28 16:47:53 -08:00
Dan Schaper
409f76aa34
Error check. 2017-01-28 16:37:31 -08:00
Dan Schaper
54e2c6181a
Populate all required variables with a distro check. 2017-01-28 16:37:28 -08:00
Dan Schaper
2a5587f236
Test for failure. 2017-01-28 16:37:17 -08:00
Dan Schaper
2d18b2d784
Start test templates. 2017-01-28 16:37:04 -08:00
Dan Schaper
d5587e32d0
Populated directory test 2017-01-27 21:41:14 -08:00
Dan Schaper
28eb348707
Individual Page tests 2017-01-27 21:41:05 -08:00
Dan Schaper
91bcc18e6a
Make full path to directory for pihole web page. 2017-01-27 21:40:52 -08:00
Dan Schaper
5b43f13935
Fresh install web page directory tests 2017-01-27 20:24:20 -08:00
Dan Schaper
0bbe0aed83
Last of the IPTables tests, new test rig is operating. 2017-01-24 20:09:10 -08:00
Dan Schaper
b16f797317
firewall-cmd --state returns 0 on 'running' non 0 on 'not running',
so check retval and not text returned.

FirewallD conversion to multicall

IPTables test
2017-01-24 19:57:31 -08:00
Dan Schaper
4bb71ae046
IPtables tests.
mock commands for iptables check.

Test setting IPTables ruleset.

Test setting IPTables ruleset.

Test for already configured IPTables rules.

Test for addition of iptables rules.

Can only mock so deep in the commands.
2017-01-24 13:42:51 -08:00
Dan Schaper
679b098aa7
No firewall enabled test. 2017-01-24 12:04:45 -08:00
Dan Schaper
e0e88fdb52
Start IPTables test, get baseline for commands in the container. See
what we have to mock to start testing.
2017-01-24 11:58:22 -08:00
Dan Schaper
8529c1287f
Full test suite for firewallD configuration. 2017-01-24 11:03:37 -08:00
Dan Schaper
9c7f7756b4
Revert second test. 2017-01-23 19:03:00 -08:00
Dan Schaper
f1cfb16bf9
Test firewallD enabled and disabled. 2017-01-23 18:59:48 -08:00
Dan Schaper
95796e1978
Only expect text output, not the leader ::: 2017-01-23 18:52:05 -08:00
Dan Schaper
968b981ecb
Try mocking whiptail 2017-01-23 18:47:52 -08:00
Dan Schaper
3aeb378b56
Fix moved incorrect blocks. 2017-01-23 18:21:50 -08:00
Dan Schaper
28bafe7427
Rename test for firewallD, running state. 2017-01-23 18:14:40 -08:00
Dan Schaper
1317b67657
Attempt at modifying firewall rules for testing. 2017-01-23 18:13:18 -08:00
Dan Schaper
a48518d234
Update test rig for new firewalld
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2016-12-29 16:11:13 -08:00
Dan Schaper
3ca21d8c8a Merge pull request #931 from pi-hole/update_tests
Add piholeDebug to CI Travis tests
2016-11-20 15:51:14 -08:00
Dan Schaper
808503d526 Add piholeDebug to tests 2016-11-17 10:28:51 -08:00
diginc
b9f3493dbc move PH_TRUE to Dockerfiles to DRY 2016-11-03 22:34:04 -05:00
Adam Hill
c2930b0ca5 remove the debug print in mock_command 2016-11-03 08:34:44 -05:00
diginc
5b54b9cb11 update Pihole fixture comment 2016-11-03 00:05:19 -05:00
diginc
d2f815bba7 no longer need to write bash test scripts 2016-11-03 00:02:28 -05:00
diginc
a5a067d50f switching testinfra's Docker run from dash to bash 2016-11-02 23:58:54 -05:00
diginc
699e299345 add a comment about bash vs dash. future refact needed 2016-11-02 23:40:50 -05:00
diginc
05e114173d update comments, add configureFirewall test
* Comments to clarify some of the existing tests
* mock_command to allow recording of calls and mocking return calls in bash
* new configureFirewall test (only the first one of it's many paths)
2016-11-02 23:25:13 -05:00
diginc
0d7e06a141 remove old pytest output file 2016-11-02 22:13:39 -05:00
Dan Schaper
a1a9a7fa9e Clarify which DNS entry we are modifying. 2016-11-02 08:52:23 -07:00
Dan Schaper
07029f93e3 Match team convention in naming. 2016-11-02 08:34:56 -07:00
Dan Schaper
e99ef9c093 Cap the variables and echo out the proper environment. 2016-11-02 08:22:45 -07:00
Dan Schaper
fef9ab674e Pi-hole CORE installer variables are being changed to standardize scripts. 2016-11-02 07:53:02 -07:00
diginc
7548d9a8fe point shellcheck at update.sh instead 2016-11-01 23:56:46 -05:00
diginc
97c44042e1 Adding failing shellcheck test and results
Should be useful for showing others why other changes were made in the next commit.
2016-10-10 23:28:34 -05:00
diginc
a03caea549 setupVar tests passing for debian & centos 2016-10-10 23:14:39 -05:00