1import os 2import sys 3import unittest 4 5try: 6 from _testinternalcapi import perf_map_state_teardown, write_perf_map_entry 7except ImportError: 8 raise unittest.SkipTest("requires _testinternalcapi") 9 10 11if sys.platform != 'linux': 12 raise unittest.SkipTest('Linux only') 13 14 15class TestPerfMapWriting(unittest.TestCase): 16 def test_write_perf_map_entry(self): 17 self.assertEqual(write_perf_map_entry(0x1234, 5678, "entry1"), 0) 18 self.assertEqual(write_perf_map_entry(0x2345, 6789, "entry2"), 0) 19 with open(f"/tmp/perf-{os.getpid()}.map") as f: 20 perf_file_contents = f.read() 21 self.assertIn("1234 162e entry1", perf_file_contents) 22 self.assertIn("2345 1a85 entry2", perf_file_contents) 23 perf_map_state_teardown() 24