| # encoding: utf-8 | |
| """ | |
| Test lldb data formatter subsystem. | |
| """ | |
| import lldb | |
| from lldbsuite.test.decorators import * | |
| from lldbsuite.test.lldbtest import * | |
| from lldbsuite.test import lldbutil | |
| from ObjCDataFormatterTestCase import ObjCDataFormatterTestCase | |
| class ObjCDataFormatterNSData(ObjCDataFormatterTestCase): | |
| SHARED_BUILD_TESTCASE = False | |
| def test_nsdata_with_run_command(self): | |
| """Test formatters for NSData.""" | |
| self.appkit_tester_impl(self.nsdata_data_formatter_commands, True) | |
| @requireDarwin | |
| def test_nsdata_with_run_command_no_const(self): | |
| """Test formatters for NSData.""" | |
| self.appkit_tester_impl(self.nsdata_data_formatter_commands, False) | |
| def nsdata_data_formatter_commands(self): | |
| self.runCmd("settings set target.prefer-dynamic-value no-dynamic-values") | |
| self.expect( | |
| "frame variable immutableData mutableData data_ref mutable_data_ref mutable_string_ref concreteData concreteMutableData", | |
| substrs=[ | |
| "(NSData *) immutableData = ", | |
| " 5 bytes", | |
| "(NSData *) mutableData = ", | |
| " 14 bytes", | |
| "(CFDataRef) data_ref = ", | |
| '@"5 bytes"', | |
| "(CFMutableDataRef) mutable_data_ref = ", | |
| '@"5 bytes"', | |
| "(CFMutableStringRef) mutable_string_ref = ", | |
| ' @"Wish ya knew"', | |
| "(NSData *) concreteData = ", | |
| " 100000 bytes", | |
| "(NSMutableData *) concreteMutableData = ", | |
| " 100000 bytes", | |
| ], | |
| ) |