[Lldb-commits] [lldb] 914b551 - [lldb/test] Add test for CMTime data formatter
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Tue Jan 14 23:11:38 PST 2020
Author: Jonas Devlieghere
Date: 2020-01-14T23:11:15-08:00
New Revision: 914b551eeed159ba6051852c0aa63a1311ac4e40
URL: https://github.com/llvm/llvm-project/commit/914b551eeed159ba6051852c0aa63a1311ac4e40
DIFF: https://github.com/llvm/llvm-project/commit/914b551eeed159ba6051852c0aa63a1311ac4e40.diff
LOG: [lldb/test] Add test for CMTime data formatter
Add a test for the CMTime data formatter. The coverage report showed
that this code path was untested.
Added:
lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/Makefile
lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py
lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/main.m
Modified:
Removed:
################################################################################
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/Makefile b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/Makefile
new file mode 100644
index 000000000000..143997cf26e3
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/Makefile
@@ -0,0 +1,6 @@
+OBJC_SOURCES := main.m
+
+CFLAGS_EXTRAS := -w
+
+LD_EXTRAS := -framework CoreMedia
+include Makefile.rules
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py
new file mode 100644
index 000000000000..4c3935c851c5
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/TestDataFormatterCMTime.py
@@ -0,0 +1,39 @@
+# encoding: utf-8
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+
+class CMTimeDataFormatterTestCase(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+
+ @skipUnlessDarwin
+ def test_nsindexpath_with_run_command(self):
+ """Test formatters for CMTime."""
+ self.build()
+ self.runCmd("file " + self.getBuildArtifact("a.out"),
+ CURRENT_EXECUTABLE_SET)
+
+ line = line_number('main.m', '// break here')
+ lldbutil.run_break_set_by_file_and_line(
+ self, "main.m", line, num_expected_locations=1, loc_exact=True)
+
+ self.runCmd("run", RUN_SUCCEEDED)
+
+ self.expect(
+ "thread list",
+ STOPPED_DUE_TO_BREAKPOINT,
+ substrs=['stopped', 'stop reason = breakpoint'])
+
+ self.expect(
+ 'frame variable t1',
+ substrs=[
+ '1 10th of a second', 'value = 1', 'timescale = 10',
+ 'epoch = 0'
+ ])
+ self.expect(
+ 'frame variable t2',
+ substrs=['10 seconds', 'value = 10', 'timescale = 1', 'epoch = 0'])
diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/main.m b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/main.m
new file mode 100644
index 000000000000..ecf7648c3f98
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-objc/cmtime/main.m
@@ -0,0 +1,22 @@
+//===-- main.m ------------------------------------------------*- ObjC -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#import <CoreMedia/CoreMedia.h>
+
+int main(int argc, const char **argv)
+{
+ @autoreleasepool
+ {
+ CMTime t1 = CMTimeMake(1, 10);
+ CMTime t2 = CMTimeMake(10, 1);
+
+ CMTimeShow(t1); // break here
+ CMTimeShow(t2);
+ }
+ return 0;
+}
More information about the lldb-commits
mailing list