diff --git a/test/binary/logrotate-0-0.x86_64.rpm b/test/binary/logrotate-0-0.x86_64.rpm deleted file mode 100644 index 34da83530..000000000 Binary files a/test/binary/logrotate-0-0.x86_64.rpm and /dev/null differ diff --git a/test/mockdata/mock_logrotate.py b/test/mockdata/mock_logrotate.py index 5a5a3d5eb..3ccb995b0 100644 --- a/test/mockdata/mock_logrotate.py +++ b/test/mockdata/mock_logrotate.py @@ -1,3 +1,5 @@ +import stat + from rpm import RPMFILE_CONFIG, RPMFILE_NOREPLACE from Testing import get_tested_mock_package @@ -6,9 +8,45 @@ LogrotatePackage = get_tested_mock_package( lazyload=True, files={ - 'tmp/foo/my.log': {}, - 'tmp/foo2/my.log': {}, - 'etc/logrotate.d/logrotate.conf': { 'content-path': 'files/logrotate/logrotate.conf' }, - 'etc/logrotate.d/logrotate2.conf': { 'content-path': 'files/logrotate/logrotate2.conf' }, + '/tmp/foo': { + 'create_dirs': True, + 'is_dir': True, + 'metadata': { + 'mode': stat.S_IFDIR | 0o755, + 'user': 'marxin', + 'group': 'users', + }, + }, + '/tmp/foo2': { + 'create_dirs': True, + 'is_dir': True, + 'metadata': { + 'mode': stat.S_IFREG | stat.S_ISUID | 0o777, + 'user': 'root', + 'group': 'users2', + }, + }, + '/tmp/foo/my.log': { + 'metadata': { + 'mode': 0o644 | stat.S_IFREG, + 'user': 'root', + 'group': 'users2', + }, + }, + '/tmp/foo2/my.log': { + 'metadata': { + 'mode': stat.S_IFREG | stat.S_ISUID | 0o777, + 'user': 'root', + 'group': 'users2', + }, + }, + '/etc/logrotate.d/logrotate.conf': { + 'create_dirs': True, + 'content-path': 'files/logrotate/logrotate.conf', + }, + '/etc/logrotate.d/logrotate2.conf': { + 'create_dirs': True, + 'content-path': 'files/logrotate/logrotate2.conf', + }, } ) diff --git a/test/test_logrotate.py b/test/test_logrotate.py index 7d4759c6f..a94413fa2 100644 --- a/test/test_logrotate.py +++ b/test/test_logrotate.py @@ -1,4 +1,5 @@ import pytest +from mockdata.mock_logrotate import LogrotatePackage from rpmlint.checks.LogrotateCheck import LogrotateCheck from rpmlint.filter import Filter @@ -13,10 +14,10 @@ def logrotatecheck(): return output, test -@pytest.mark.parametrize('package', ['binary/logrotate']) -def test_logrotate(tmp_path, package, logrotatecheck): +@pytest.mark.parametrize('package', [LogrotatePackage]) +def test_logrotate(package, logrotatecheck): output, test = logrotatecheck - test.check(get_tested_package(package, tmp_path)) + test.check(package) out = output.print_results(output.results) assert 'E: logrotate-log-dir-not-packaged /var/log/myapp' in out assert 'E: logrotate-duplicate /var/log/myapp' in out