25 lines
769 B
Python
25 lines
769 B
Python
import unittest
|
|
|
|
from nlprog.command_safety import assess_command
|
|
|
|
|
|
class CommandSafetyTests(unittest.TestCase):
|
|
def test_allows_safe_validation_command(self):
|
|
assessment = assess_command("python -m compileall src")
|
|
self.assertEqual(assessment.level, "allow")
|
|
self.assertFalse(assessment.blocked)
|
|
|
|
def test_confirms_package_install(self):
|
|
assessment = assess_command("pip install requests")
|
|
self.assertEqual(assessment.level, "confirm")
|
|
self.assertTrue(assessment.needs_confirmation)
|
|
|
|
def test_blocks_format(self):
|
|
assessment = assess_command("format C:")
|
|
self.assertEqual(assessment.level, "block")
|
|
self.assertTrue(assessment.blocked)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|