2020-12-01 10:02:31 +00:00
|
|
|
from .conftest import (
|
|
|
|
tick_box,
|
|
|
|
info_box,
|
|
|
|
mock_command,
|
|
|
|
)
|
|
|
|
|
|
|
|
|
2021-11-18 01:03:37 +00:00
|
|
|
def test_php_upgrade_default_continue_centos_gte_8(host):
|
2020-12-01 10:02:31 +00:00
|
|
|
'''
|
|
|
|
confirms the latest version of CentOS continues / does not optout
|
|
|
|
(should trigger on CentOS7 only)
|
|
|
|
'''
|
2021-11-18 01:03:37 +00:00
|
|
|
package_manager_detect = host.run('''
|
2020-12-01 10:02:31 +00:00
|
|
|
source /opt/pihole/basic-install.sh
|
2021-08-03 20:48:26 +00:00
|
|
|
package_manager_detect
|
2021-09-12 20:40:37 +00:00
|
|
|
select_rpm_php
|
2020-12-01 10:02:31 +00:00
|
|
|
''')
|
|
|
|
unexpected_stdout = info_box + (' User opt-out of PHP 7 upgrade on CentOS.'
|
|
|
|
' Deprecated PHP may be in use.')
|
2021-08-03 20:48:26 +00:00
|
|
|
assert unexpected_stdout not in package_manager_detect.stdout
|
2020-12-01 10:02:31 +00:00
|
|
|
# ensure remi was not installed on latest CentOS
|
2021-11-18 01:03:37 +00:00
|
|
|
remi_package = host.package('remi-release')
|
2020-12-01 10:02:31 +00:00
|
|
|
assert not remi_package.is_installed
|
|
|
|
|
|
|
|
|
2021-11-18 01:03:37 +00:00
|
|
|
def test_php_upgrade_user_optout_skipped_centos_gte_8(host):
|
2020-12-01 10:02:31 +00:00
|
|
|
'''
|
|
|
|
confirms installer skips user opt-out of installing PHP7 from REMI on
|
|
|
|
latest CentOS (should trigger on CentOS7 only)
|
|
|
|
(php not currently installed)
|
|
|
|
'''
|
|
|
|
# Whiptail dialog returns Cancel for user prompt
|
2021-11-18 01:03:37 +00:00
|
|
|
mock_command('whiptail', {'*': ('', '1')}, host)
|
|
|
|
package_manager_detect = host.run('''
|
2020-12-01 10:02:31 +00:00
|
|
|
source /opt/pihole/basic-install.sh
|
2021-08-03 20:48:26 +00:00
|
|
|
package_manager_detect
|
2021-09-12 20:40:37 +00:00
|
|
|
select_rpm_php
|
2020-12-01 10:02:31 +00:00
|
|
|
''')
|
|
|
|
unexpected_stdout = info_box + (' User opt-out of PHP 7 upgrade on CentOS.'
|
|
|
|
' Deprecated PHP may be in use.')
|
2021-08-03 20:48:26 +00:00
|
|
|
assert unexpected_stdout not in package_manager_detect.stdout
|
2020-12-01 10:02:31 +00:00
|
|
|
# ensure remi was not installed on latest CentOS
|
2021-11-18 01:03:37 +00:00
|
|
|
remi_package = host.package('remi-release')
|
2020-12-01 10:02:31 +00:00
|
|
|
assert not remi_package.is_installed
|
|
|
|
|
|
|
|
|
2021-11-18 01:03:37 +00:00
|
|
|
def test_php_upgrade_user_optin_skipped_centos_gte_8(host):
|
2020-12-01 10:02:31 +00:00
|
|
|
'''
|
|
|
|
confirms installer skips user opt-in to installing PHP7 from REMI on
|
|
|
|
latest CentOS (should trigger on CentOS7 only)
|
|
|
|
(php not currently installed)
|
|
|
|
'''
|
|
|
|
# Whiptail dialog returns Continue for user prompt
|
2021-11-18 01:03:37 +00:00
|
|
|
mock_command('whiptail', {'*': ('', '0')}, host)
|
|
|
|
package_manager_detect = host.run('''
|
2020-12-01 10:02:31 +00:00
|
|
|
source /opt/pihole/basic-install.sh
|
2021-08-03 20:48:26 +00:00
|
|
|
package_manager_detect
|
2021-09-12 20:40:37 +00:00
|
|
|
select_rpm_php
|
2020-12-01 10:02:31 +00:00
|
|
|
''')
|
2021-08-03 20:48:26 +00:00
|
|
|
assert 'opt-out' not in package_manager_detect.stdout
|
2020-12-01 10:02:31 +00:00
|
|
|
unexpected_stdout = info_box + (' Enabling Remi\'s RPM repository '
|
|
|
|
'(https://rpms.remirepo.net)')
|
2021-08-03 20:48:26 +00:00
|
|
|
assert unexpected_stdout not in package_manager_detect.stdout
|
2020-12-01 10:02:31 +00:00
|
|
|
unexpected_stdout = tick_box + (' Remi\'s RPM repository has '
|
|
|
|
'been enabled for PHP7')
|
2021-08-03 20:48:26 +00:00
|
|
|
assert unexpected_stdout not in package_manager_detect.stdout
|
2021-11-18 01:03:37 +00:00
|
|
|
remi_package = host.package('remi-release')
|
2020-12-01 10:02:31 +00:00
|
|
|
assert not remi_package.is_installed
|