[python-bindings] Implemented the PassRegistry class and the calls to initialize...
[oota-llvm.git] / bindings / python / llvm / tests / test_core.py
1 from .base import TestBase
2 from ..core import OpCode
3 from ..core import MemoryBuffer
4 from ..core import PassRegistry
5
6 class TestCore(TestBase):
7     def test_opcode(self):
8         self.assertTrue(hasattr(OpCode, 'Ret'))
9         self.assertTrue(isinstance(OpCode.Ret, OpCode))
10         self.assertEqual(OpCode.Ret.value, 1)
11
12         op = OpCode.from_value(1)
13         self.assertTrue(isinstance(op, OpCode))
14         self.assertEqual(op, OpCode.Ret)
15
16     def test_memory_buffer_create_from_file(self):
17         source = self.get_test_file()
18
19         MemoryBuffer(filename=source)
20
21     def test_memory_buffer_failing(self):
22         with self.assertRaises(Exception):
23             MemoryBuffer(filename="/hopefully/this/path/doesnt/exist")
24
25     def test_memory_buffer_len(self):
26         source = self.get_test_file()
27         m = MemoryBuffer(filename=source)
28         self.assertEqual(len(m), 50)
29
30     def test_create_passregistry(self):
31         PassRegistry()