Python Tests¶
Below is a simple example of a Python test. It is strongly recommended that you use unittest for your test cases. It has some nice features.
#!/usr/bin/env python3
""" I3Time tests """
import unittest
from icecube.dataclasses import I3Time
class I3TimeTest(unittest.TestCase):
def test_print(self):
t = I3Time(2012, 116640000117197235)
print(t)
print(t.__repr__())
s = str(t)
subsecond = int(s.split(" ")[-2].split(".")[-1].replace(",", ""))
self.assertEqual(subsecond, 117197235)
if __name__ == "__main__":
unittest.main()
Common pitfalls:
Not Executable
Before adding to git :
chmod +x path/to/the/test.py
Not registered
Edit your project’s
CMakeList.txt
file and add it toi3_test_scripts
.Many projects just do something like
i3_test_scripts(resources/test/*.py)
which automatically registers all python scripts inresources/test
as tests.