1
0
Fork 0
devscripts/scripts/devscripts/test/test_suspicious_source.py
Daniel Baumann b543f2e88d
Adding upstream version 2.25.15.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-21 11:04:07 +02:00

41 lines
1.6 KiB
Python

# Copyright (C) 2023, Benjamin Drung <bdrung@debian.org>
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
# OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
"""Test suspicious-source script."""
import pathlib
import subprocess
import tempfile
import unittest
class TestSuspiciousSource(unittest.TestCase):
"""Test suspicious-source script."""
@staticmethod
def _run_suspicious_source(directory: str) -> str:
suspicious_source = subprocess.run(
["./suspicious-source", "-d", directory],
check=True,
stdout=subprocess.PIPE,
text=True,
)
return suspicious_source.stdout.strip()
def test_python_sript(self) -> None:
"""Test not complaining about Python code."""
with tempfile.TemporaryDirectory(prefix="devscripts-") as tmpdir:
python_file = pathlib.Path(tmpdir) / "example.py"
python_file.write_text("#!/usr/bin/python3\nprint('hello world')\n")
self.assertEqual(self._run_suspicious_source(tmpdir), "")