Added timeout and limit to script entries

This commit is contained in:
Niels Geens
2024-11-13 17:48:39 +01:00
parent 65478e0b17
commit 834ce12e8f
21 changed files with 262 additions and 141 deletions

View File

@@ -28,7 +28,7 @@ class RepeatEntryTest(unittest.TestCase):
def test_initialization(self):
"""Test entry initialization"""
script = "echo test"
entry = RepeatEntry(script, self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, script, None, None)
self.assertEqual(entry.script, script)
self.assertEqual(entry.stdout, "")
@@ -40,7 +40,7 @@ class RepeatEntryTest(unittest.TestCase):
def test_successful_execution(self):
"""Test successful script execution"""
script = "echo 'test'"
entry = RepeatEntry(script, self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, script, None, None)
entry.update()
# Verify entry state
@@ -50,7 +50,7 @@ class RepeatEntryTest(unittest.TestCase):
def test_failed_execution(self):
"""Test failed script execution with invalid command"""
entry = RepeatEntry("nonexistentcommand", self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, "nonexistentcommand", None, None)
entry.update()
# Verify entry state
@@ -78,7 +78,7 @@ class RepeatEntryTest(unittest.TestCase):
f'"'
)
entry = RepeatEntry(script, self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, script, None, None)
# Run update multiple times
outputs = []
@@ -92,13 +92,13 @@ class RepeatEntryTest(unittest.TestCase):
def test_generate_context(self):
"""Test XML context generation"""
script = "echo 'test'"
entry = RepeatEntry(script, self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, script, None, None)
entry.update()
element = entry.generate_context()
# Verify XML structure
self.assertEqual(element.tag, "repeat")
self.assertEqual(element.get("id"), self.test_id)
self.assertEqual(element.text, f"{script}")
self.assertEqual(element.text, script)
self.assertEqual(element.get("exit_code"), "0")
stdout_text = element.find("stdout").text
self.assertEqual(stdout_text, "test\n")
@@ -124,7 +124,7 @@ class RepeatEntryTest(unittest.TestCase):
f'"'
)
entry = RepeatEntry(script, self.test_id, self.test_timestamp)
entry = RepeatEntry(self.test_id, self.test_timestamp, script, None, None)
# Execute multiple times and verify output changes
entry.update()