summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2019-04-05 22:06:53 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2019-04-05 22:06:53 +0000
commit9388c4703ba84f7a76472492e6424fa3b64e5331 (patch)
tree337999925a1483ea9e58e9531cbe230be15ae2d7 /lldb/packages/Python/lldbsuite
parent1dfd74ac4a16a9b18b1c34ec427f5545e1645c13 (diff)
downloadbcm5719-llvm-9388c4703ba84f7a76472492e6424fa3b64e5331.tar.gz
bcm5719-llvm-9388c4703ba84f7a76472492e6424fa3b64e5331.zip
[testsuite] Split Objective-C new syntax test
This splits the second longest test into separate test cases. Similar to what we did for the Objective-C data formatters in r357786. llvm-svn: 357824
Diffstat (limited to 'lldb/packages/Python/lldbsuite')
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/ObjCNewSyntaxTest.py29
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntax.py204
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxArray.py59
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxDictionary.py58
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxLiteral.py79
5 files changed, 225 insertions, 204 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/ObjCNewSyntaxTest.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/ObjCNewSyntaxTest.py
new file mode 100644
index 00000000000..5fa9336b731
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/ObjCNewSyntaxTest.py
@@ -0,0 +1,29 @@
+"""Test that the Objective-C syntax for dictionary/array literals and indexing works"""
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+
+class ObjCNewSyntaxTest(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+
+ def runToBreakpoint(self):
+ self.build()
+ self.target, process, thread, bkpt = lldbutil.run_to_source_breakpoint(
+ self, '// Set breakpoint 0 here.', lldb.SBFileSpec(
+ 'main.m', False))
+
+ # The stop reason of the thread should be breakpoint.
+ self.expect(
+ "thread list",
+ STOPPED_DUE_TO_BREAKPOINT,
+ substrs=['stopped', 'stop reason = breakpoint'])
+
+ # The breakpoint should have a hit count of 1.
+ self.expect(
+ "breakpoint list -f",
+ BREAKPOINT_HIT_ONCE,
+ substrs=[' resolved, hit count = 1'])
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntax.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntax.py
deleted file mode 100644
index 74256345a0d..00000000000
--- a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntax.py
+++ /dev/null
@@ -1,204 +0,0 @@
-"""Test that the Objective-C syntax for dictionary/array literals and indexing works"""
-
-from __future__ import print_function
-
-
-import unittest2
-import os
-import time
-import platform
-
-from distutils.version import StrictVersion
-
-import lldb
-from lldbsuite.test.decorators import *
-from lldbsuite.test.lldbtest import *
-from lldbsuite.test import lldbutil
-
-
-class ObjCNewSyntaxTestCase(TestBase):
-
- mydir = TestBase.compute_mydir(__file__)
-
- def setUp(self):
- # Call super's setUp().
- TestBase.setUp(self)
- # Find the line number to break inside main().
- self.line = line_number('main.m', '// Set breakpoint 0 here.')
-
- def runToBreakpoint(self):
- self.build()
- exe = self.getBuildArtifact("a.out")
- self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)
-
- # Break inside the foo function which takes a bar_ptr argument.
- lldbutil.run_break_set_by_file_and_line(
- self, "main.m", self.line, num_expected_locations=1, loc_exact=True)
-
- self.runCmd("run", RUN_SUCCEEDED)
-
- # The stop reason of the thread should be breakpoint.
- self.expect("thread list", STOPPED_DUE_TO_BREAKPOINT,
- substrs=['stopped',
- 'stop reason = breakpoint'])
-
- # The breakpoint should have a hit count of 1.
- self.expect("breakpoint list -f", BREAKPOINT_HIT_ONCE,
- substrs=[' resolved, hit count = 1'])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_read_array(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- immutable_array[0]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["foo"])
-
- self.expect(
- "expr --object-description -- mutable_array[0]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["foo"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_update_array(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- mutable_array[0] = @\"bar\"",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["bar"])
-
- self.expect(
- "expr --object-description -- mutable_array[0]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["bar"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_read_dictionary(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- immutable_dictionary[@\"key\"]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["value"])
-
- self.expect(
- "expr --object-description -- mutable_dictionary[@\"key\"]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["value"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_update_dictionary(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- mutable_dictionary[@\"key\"] = @\"object\"",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["object"])
-
- self.expect(
- "expr --object-description -- mutable_dictionary[@\"key\"]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["object"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_array_literal(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- @[ @\"foo\", @\"bar\" ]",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=[
- "NSArray",
- "foo",
- "bar"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_dictionary_literal(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- @{ @\"key\" : @\"object\" }",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=[
- "key",
- "object"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_char_literal(self):
- self.runToBreakpoint()
-
- self.expect("expr --object-description -- @'a'",
- VARIABLES_DISPLAYED_CORRECTLY, substrs=[str(ord('a'))])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_integer_literals(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- @1",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["1"])
-
- self.expect(
- "expr --object-description -- @1l",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["1"])
-
- self.expect(
- "expr --object-description -- @1ul",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["1"])
-
- self.expect(
- "expr --object-description -- @1ll",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["1"])
-
- self.expect(
- "expr --object-description -- @1ull",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["1"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_float_literal(self):
- self.runToBreakpoint()
-
- self.expect("expr -- @123.45", VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["NSNumber", "123.45"])
-
- @skipUnlessDarwin
- @skipIf(macos_version=["<", "10.12"])
- @expectedFailureAll(archs=["i[3-6]86"])
- def test_expressions_in_literals(self):
- self.runToBreakpoint()
-
- self.expect(
- "expr --object-description -- @( 1 + 3 )",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=["4"])
- self.expect(
- "expr -- @((char*)\"Hello world\" + 6)",
- VARIABLES_DISPLAYED_CORRECTLY,
- substrs=[
- "NSString",
- "world"])
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxArray.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxArray.py
new file mode 100644
index 00000000000..95deaf6eb09
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxArray.py
@@ -0,0 +1,59 @@
+"""Test that the Objective-C syntax for dictionary/array literals and indexing works"""
+
+from __future__ import print_function
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+from ObjCNewSyntaxTest import ObjCNewSyntaxTest
+
+
+class ObjCNewSyntaxTestCaseArray(ObjCNewSyntaxTest):
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_read_array(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- immutable_array[0]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["foo"])
+
+ self.expect(
+ "expr --object-description -- mutable_array[0]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["foo"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_update_array(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- mutable_array[0] = @\"bar\"",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["bar"])
+
+ self.expect(
+ "expr --object-description -- mutable_array[0]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["bar"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_array_literal(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- @[ @\"foo\", @\"bar\" ]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=[
+ "NSArray",
+ "foo",
+ "bar"])
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxDictionary.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxDictionary.py
new file mode 100644
index 00000000000..0cb26bb033f
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxDictionary.py
@@ -0,0 +1,58 @@
+"""Test that the Objective-C syntax for dictionary/array literals and indexing works"""
+
+from __future__ import print_function
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+from ObjCNewSyntaxTest import ObjCNewSyntaxTest
+
+
+class ObjCNewSyntaxTestCaseDictionary(ObjCNewSyntaxTest):
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_read_dictionary(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- immutable_dictionary[@\"key\"]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["value"])
+
+ self.expect(
+ "expr --object-description -- mutable_dictionary[@\"key\"]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["value"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_update_dictionary(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- mutable_dictionary[@\"key\"] = @\"object\"",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["object"])
+
+ self.expect(
+ "expr --object-description -- mutable_dictionary[@\"key\"]",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["object"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_dictionary_literal(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- @{ @\"key\" : @\"object\" }",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=[
+ "key",
+ "object"])
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxLiteral.py b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxLiteral.py
new file mode 100644
index 00000000000..6516530b807
--- /dev/null
+++ b/lldb/packages/Python/lldbsuite/test/lang/objc/objc-new-syntax/TestObjCNewSyntaxLiteral.py
@@ -0,0 +1,79 @@
+"""Test that the Objective-C syntax for dictionary/array literals and indexing works"""
+
+from __future__ import print_function
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+from ObjCNewSyntaxTest import ObjCNewSyntaxTest
+
+
+class ObjCNewSyntaxTestCaseLiteral(ObjCNewSyntaxTest):
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_char_literal(self):
+ self.runToBreakpoint()
+
+ self.expect("expr --object-description -- @'a'",
+ VARIABLES_DISPLAYED_CORRECTLY, substrs=[str(ord('a'))])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_integer_literals(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- @1",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["1"])
+
+ self.expect(
+ "expr --object-description -- @1l",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["1"])
+
+ self.expect(
+ "expr --object-description -- @1ul",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["1"])
+
+ self.expect(
+ "expr --object-description -- @1ll",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["1"])
+
+ self.expect(
+ "expr --object-description -- @1ull",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["1"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_float_literal(self):
+ self.runToBreakpoint()
+
+ self.expect("expr -- @123.45", VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["NSNumber", "123.45"])
+
+ @skipUnlessDarwin
+ @skipIf(macos_version=["<", "10.12"])
+ @expectedFailureAll(archs=["i[3-6]86"])
+ def test_expressions_in_literals(self):
+ self.runToBreakpoint()
+
+ self.expect(
+ "expr --object-description -- @( 1 + 3 )",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=["4"])
+ self.expect(
+ "expr -- @((char*)\"Hello world\" + 6)",
+ VARIABLES_DISPLAYED_CORRECTLY,
+ substrs=[
+ "NSString",
+ "world"])
OpenPOWER on IntegriCloud