diff options
author | 2018-06-02 22:15:56 +0200 | |
---|---|---|
committer | 2018-06-02 22:15:56 +0200 | |
commit | efacd65041f6f4e0121348b2ede841329368416b (patch) | |
tree | 8f0a9a71ea1df8ca683e447522c46de1deb0203f | |
parent | faulty logic in config (diff) |
set dependency on rmq publish
-rw-r--r-- | tests/test_snekbox.py | 80 |
1 files changed, 41 insertions, 39 deletions
diff --git a/tests/test_snekbox.py b/tests/test_snekbox.py index f22e25f..addcf5d 100644 --- a/tests/test_snekbox.py +++ b/tests/test_snekbox.py @@ -13,45 +13,47 @@ snek = Snekbox(nsjail_binary=nsjail) class SnekTests(unittest.TestCase): - def test_nsjail(self): - result = snek.python3('print("test")') - self.assertEquals(result.strip(), 'test') - - def test_memory_error(self): - code = ('x = "*"\n' - 'while True:\n' - ' x = x * 99\n') - - result = snek.python3(code) - self.assertEquals(result.strip(), 'MemoryError') - - def test_timeout(self): - code = ('x = "*"\n' - 'while True:\n' - ' try:\n' - ' x = x * 99\n' - ' except:\n' - ' continue\n') - - result = snek.python3(code) - self.assertEquals(result.strip(), 'timed out or memory limit exceeded') - - def test_kill(self): - code = ('import subprocess\n' - 'print(subprocess.check_output("kill -9 6", shell=True).decode())') - result = snek.python3(code) - if 'ModuleNotFoundError' in result.strip(): - self.assertIn('ModuleNotFoundError', result.strip()) - else: - self.assertIn('returned non-zero exit status 1.', result.strip()) + def test_nsjail(self): + result = snek.python3('print("test")') + self.assertEquals(result.strip(), 'test') + + def test_memory_error(self): + code = ('x = "*"\n' + 'while True:\n' + ' x = x * 99\n') + + result = snek.python3(code) + self.assertEquals(result.strip(), 'MemoryError') + + def test_timeout(self): + code = ('x = "*"\n' + 'while True:\n' + ' try:\n' + ' x = x * 99\n' + ' except:\n' + ' continue\n') + + result = snek.python3(code) + self.assertEquals(result.strip(), 'timed out or memory limit exceeded') + + def test_kill(self): + code = ('import subprocess\n' + 'print(subprocess.check_output("kill -9 6", shell=True).decode())') + result = snek.python3(code) + if 'ModuleNotFoundError' in result.strip(): + self.assertIn('ModuleNotFoundError', result.strip()) + else: + self.assertIn('returned non-zero exit status 1.', result.strip()) class RMQTests(unittest.TestCase): - def test_a_publish(self): - message = json.dumps({"snekid": "test", "message": "print('test')"}) - result = r.publish(message) - self.assertTrue(result) - - def test_b_consume(self): - result = r.consume(callback=snek.message_handler, queue='input', run_once=True) - self.assertEquals(result[2], b'{"snekid": "test", "message": "print(\'test\')"}') + @pytest.mark.dependency() + def test_a_publish(self): + message = json.dumps({"snekid": "test", "message": "print('test')"}) + result = r.publish(message) + self.assertTrue(result) + + @pytest.mark.dependency(depends=["RMQTests::test_a_publish"]) + def test_b_consume(self): + result = r.consume(callback=snek.message_handler, queue='input', run_once=True) + self.assertEquals(result[2], b'{"snekid": "test", "message": "print(\'test\')"}') |