| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from common.dependency import Dependency | 5 from common.dependency import Dependency |
| 6 from crash import parse_util | 6 from crash import parse_util |
| 7 from crash.type_enums import CallStackFormatType, CallStackLanguageType | 7 from crash.type_enums import CallStackFormatType, CallStackLanguageType |
| 8 | 8 |
| 9 from testing_utils import testing | 9 from testing_utils import testing |
| 10 | 10 |
| 11 | 11 |
| 12 class ParseUtilTest(testing.AppengineTestCase): | 12 class ParseUtilTest(testing.AppengineTestCase): |
| 13 | 13 |
| 14 def testGetFullPathForJavaFrame(self): | 14 def testGetFullPathForJavaFrame(self): |
| 15 self.assertEqual(parse_util.GetFullPathForJavaFrame( | 15 self.assertEqual(parse_util.GetFullPathForJavaFrame( |
| 16 'classA.classB.function'), 'classA/classB.java') | 16 'classA.classB.function'), 'classA/classB.java') |
| 17 | 17 |
| 18 def testGetCrashedLineRange(self): | 18 def testGetCrashedLineRange(self): |
| 19 self.assertEqual(parse_util.GetCrashedLineRange('23'), | 19 self.assertEqual(parse_util.GetCrashedLineRange('23'), |
| 20 [23]) | 20 [23]) |
| 21 self.assertEqual(parse_util.GetCrashedLineRange('23:2'), | 21 self.assertEqual(parse_util.GetCrashedLineRange('23:2'), |
| 22 [23, 24, 25]) | 22 [23, 24, 25]) |
| 23 | 23 |
| 24 def testGetDepPathAndNormalizedFilePath(self): | 24 def testGetDepPathAndNormalizedFilePath(self): |
| 25 deps = {'src/': Dependency('src/', 'https://repo', '1'), | 25 deps = {'src/': Dependency('src/', 'https://repo', '1'), |
| 26 'src/Upper/': Dependency('src/Upper', 'https://repo', '2')} | 26 'src/Upper/': Dependency('src/Upper', 'https://repo', '2')} |
| 27 | 27 |
| 28 self.assertEqual( | 28 self.assertEqual( |
| 29 parse_util.GetDepPathAndNormalizedFilePath('out/r/gen/b.cc', deps), | 29 parse_util.GetDepPathAndNormalizedFilePath('out/r/gen/b.cc', deps), |
| 30 ('', 'out/r/gen/b.cc')) | 30 ('', 'out/r/gen/b.cc', None)) |
| 31 self.assertEqual( | 31 self.assertEqual( |
| 32 parse_util.GetDepPathAndNormalizedFilePath('src/a/b.cc', deps), | 32 parse_util.GetDepPathAndNormalizedFilePath('src/a/b.cc', deps), |
| 33 ('src/', 'a/b.cc')) | 33 ('src/', 'a/b.cc', 'https://repo')) |
| 34 | 34 |
| 35 self.assertEqual( | 35 self.assertEqual( |
| 36 parse_util.GetDepPathAndNormalizedFilePath('src/Upper/a/b.cc', deps), | 36 parse_util.GetDepPathAndNormalizedFilePath('src/Upper/a/b.cc', deps), |
| 37 ('src/Upper/', 'a/b.cc')) | 37 ('src/Upper/', 'a/b.cc', 'https://repo')) |
| 38 self.assertEqual( | 38 self.assertEqual( |
| 39 parse_util.GetDepPathAndNormalizedFilePath('src/upper/a/b.cc', deps), | 39 parse_util.GetDepPathAndNormalizedFilePath('src/upper/a/b.cc', deps), |
| 40 ('src/Upper/', 'a/b.cc')) | 40 ('src/Upper/', 'a/b.cc', 'https://repo')) |
| 41 self.assertEqual( | 41 self.assertEqual( |
| 42 parse_util.GetDepPathAndNormalizedFilePath('Upper/a/b.cc', deps), | 42 parse_util.GetDepPathAndNormalizedFilePath('Upper/a/b.cc', deps), |
| 43 ('src/Upper/', 'a/b.cc')) | 43 ('src/Upper/', 'a/b.cc', 'https://repo')) |
| 44 self.assertEqual( | 44 self.assertEqual( |
| 45 parse_util.GetDepPathAndNormalizedFilePath('upper/a/b.cc', deps), | 45 parse_util.GetDepPathAndNormalizedFilePath('upper/a/b.cc', deps), |
| 46 ('src/Upper/', 'a/b.cc')) | 46 ('src/Upper/', 'a/b.cc', 'https://repo')) |
| 47 | 47 |
| 48 self.assertEqual( | 48 self.assertEqual( |
| 49 parse_util.GetDepPathAndNormalizedFilePath('dummy/path/b.cc', deps), | 49 parse_util.GetDepPathAndNormalizedFilePath('dummy/path/b.cc', deps), |
| 50 ('src/', 'dummy/path/b.cc')) | 50 ('src/', 'dummy/path/b.cc', parse_util.CHROMIUM_REPO_URL)) |
| 51 | 51 |
| 52 def testGetLanguageTypeFromFormatType(self): | 52 def testGetLanguageTypeFromFormatType(self): |
| 53 self.assertEqual( | 53 self.assertEqual( |
| 54 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.JAVA), | 54 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.JAVA), |
| 55 CallStackLanguageType.JAVA) | 55 CallStackLanguageType.JAVA) |
| 56 | 56 |
| 57 self.assertEqual( | 57 self.assertEqual( |
| 58 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.SYZYASAN), | 58 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.SYZYASAN), |
| 59 CallStackLanguageType.CPP) | 59 CallStackLanguageType.CPP) |
| 60 | 60 |
| 61 self.assertEqual( | 61 self.assertEqual( |
| 62 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.DEFAULT), | 62 parse_util.GetLanguageTypeFromFormatType(CallStackFormatType.DEFAULT), |
| 63 CallStackLanguageType.CPP) | 63 CallStackLanguageType.CPP) |
| OLD | NEW |