Changeset View
Changeset View
Standalone View
Standalone View
tests/testing/cPerf.py
Show First 20 Lines • Show All 169 Lines • ▼ Show 20 Lines | class CPerfTest(unittest.TestCase): | ||||
def _getInput(self, fname): | def _getInput(self, fname): | ||||
return os.path.join(self.inputs, fname) | return os.path.join(self.inputs, fname) | ||||
def test_check_file(self): | def test_check_file(self): | ||||
self.assertTrue(LinuxPerfProfile.checkFile(self._getInput('fib-aarch64.perf_data'))) | self.assertTrue(LinuxPerfProfile.checkFile(self._getInput('fib-aarch64.perf_data'))) | ||||
def test_aarch64_fib(self): | def test_aarch64_fib(self): | ||||
perf_data = self._getInput('fib-aarch64.perf_data') | perf_data = self._getInput('fib-aarch64.perf_data') | ||||
p = LinuxPerfProfile.deserialize(open(perf_data), | p = LinuxPerfProfile.deserialize(open(perf_data, 'rb'), | ||||
nm=self._getNm(perf_data), | |||||
objdump=self._getObjdump(perf_data), | objdump=self._getObjdump(perf_data), | ||||
propagateExceptions=True) | propagateExceptions=True) | ||||
self.assertEqual(p.data, self.expected_data['fib-aarch64']) | self.assertEqual(p.data, self.expected_data['fib-aarch64']) | ||||
def test_aarch64_fib2(self): | def test_aarch64_fib2(self): | ||||
perf_data = self._getInput('fib2-aarch64.perf_data') | perf_data = self._getInput('fib2-aarch64.perf_data') | ||||
p = LinuxPerfProfile.deserialize(open(perf_data), | p = LinuxPerfProfile.deserialize(open(perf_data, 'rb'), | ||||
nm=self._getNm(perf_data), | |||||
objdump=self._getObjdump(perf_data), | objdump=self._getObjdump(perf_data), | ||||
propagateExceptions=True) | propagateExceptions=True) | ||||
self.assertEqual(p.data, self.expected_data['fib2-aarch64']) | self.assertEqual(p.data, self.expected_data['fib2-aarch64']) | ||||
def test_aarch64_fib2_nondynamic(self): | def test_aarch64_fib2_nondynamic(self): | ||||
perf_data = self._getInput('fib2-aarch64.perf_data') | perf_data = self._getInput('fib2-aarch64.perf_data') | ||||
p = LinuxPerfProfile.deserialize(open(perf_data), | p = LinuxPerfProfile.deserialize(open(perf_data, 'rb'), | ||||
nm=self._getNm(perf_data, True), | |||||
objdump=self._getObjdump(perf_data), | objdump=self._getObjdump(perf_data), | ||||
propagateExceptions=True) | propagateExceptions=True) | ||||
self.assertEqual(p.data, self.expected_data['fib2-aarch64']) | self.assertEqual(p.data, self.expected_data['fib2-aarch64']) | ||||
def test_random_guff(self): | def test_random_guff(self): | ||||
# Create complete rubbish and throw it at cPerf, expecting an | # Create complete rubbish and throw it at cPerf, expecting an | ||||
# AssertionError. | # AssertionError. | ||||
data = '6492gbiajng295akgjowj210441' | data = b'6492gbiajng295akgjowj210441' | ||||
with tempfile.NamedTemporaryFile() as fd: | with tempfile.NamedTemporaryFile() as fd: | ||||
open(fd.name, 'w').write(data) | fd.write(data) | ||||
fd.seek(0) | |||||
with self.assertRaises(AssertionError): | with self.assertRaises(AssertionError): | ||||
LinuxPerfProfile.deserialize(open(fd.name), | LinuxPerfProfile.deserialize(fd, propagateExceptions=True) | ||||
propagateExceptions=True) | |||||
""" | |||||
This test causes a Bus Error (SIGBUS) which cannot be handled correctly. | |||||
def test_random_guff2(self): | def test_random_guff2(self): | ||||
# Create complete rubbish and throw it at cPerf, expecting an | # Create complete rubbish and throw it at cPerf, expecting an | ||||
# AssertionError. This version contains the correct magic number. | # AssertionError. This version contains the correct magic number. | ||||
data = 'PERFILE28620k hshjsjhs&6362kkjh25090nnjh' | data = b'PERFILE28620k hshjsjhs&6362kkjh25090nnjh' | ||||
with tempfile.NamedTemporaryFile() as fd: | with tempfile.NamedTemporaryFile() as fd: | ||||
open(fd.name, 'w').write(data) | fd.write(data) | ||||
fd.seek(0) | |||||
with self.assertRaises(AssertionError): | with self.assertRaises(AssertionError): | ||||
LinuxPerfProfile.deserialize(open(fd.name), | LinuxPerfProfile.deserialize(fd, propagateExceptions=True) | ||||
propagateExceptions=True) | """ | ||||
thopre: ./tests/testing/cPerf.py:223:1: E305 expected 2 blank lines after class or function definition… | |||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
unittest.main(argv=[sys.argv[0], ]) | unittest.main(argv=[sys.argv[0], ]) |
./tests/testing/cPerf.py:223:1: E305 expected 2 blank lines after class or function definition, found 1
Add a newline after the end of the docstring.