mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-21 20:45:53 -04:00

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
59 lines
1.8 KiB
Python
59 lines
1.8 KiB
Python
"""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"])
|