Skip to content

Commit

Permalink
[tests] add test for #3292
Browse files Browse the repository at this point in the history
Add a test that cleaner keeps permissions of a sanitised file

Relevant to: #3292

Signed-off-by: Pavel Moravec <[email protected]>
  • Loading branch information
pmoravec committed Jun 29, 2023
1 parent 719d750 commit 2fc7da7
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions tests/cleaner_tests/basic_function_tests/report_with_mask.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
from sos_tests import StageOneReportTest, StageTwoReportTest

import re
from os import stat


class ReportWithMask(StageOneReportTest):
Expand All @@ -18,6 +19,17 @@ class ReportWithMask(StageOneReportTest):
"""

sos_cmd = '--mask -o host,networking'
hosts_obfuscated = None

def pre_sos_setup(self):
# obfuscate a random word from /etc/hosts and ensure the updated
# sanitised file has same permissions (a+r)
try:
self.hosts_obfuscated = open('/etc/hosts').read().strip('#\n').split()[-1]
except (FileNotFoundError, IndexError) as e:
self.warning(f"Unable to process /etc/hosts: {e}")
if self.hosts_obfuscated:
self.sos_cmd += f' --keywords={self.hosts_obfuscated}'

def test_mask_was_run(self):
self.assertOutputContains('Beginning obfuscation')
Expand Down Expand Up @@ -53,6 +65,12 @@ def test_mac_addrs_were_obfuscated(self):
mac = line.strip().split()[1]
assert mac.startswith('53:4f:53'), "Found unobfuscated mac addr %s" % mac

def test_perms_unchanged_on_modified_file(self):
if self.hosts_obfuscated:
imode_orig = stat('/etc/hosts').st_mode
imode_obfuscated = stat(self.get_name_in_archive('etc/hosts')).st_mode
self.assertEqual(imode_orig, imode_obfuscated)


class ReportWithCleanedKeywords(StageOneReportTest):
"""Testing for obfuscated keywords provided by the user
Expand Down

0 comments on commit 2fc7da7

Please sign in to comment.