47 lines · python
1# encoding: utf-82"""3Test lldb data formatter subsystem.4"""5 6 7import lldb8from lldbsuite.test.decorators import *9from lldbsuite.test.lldbtest import *10from lldbsuite.test import lldbutil11 12from ObjCDataFormatterTestCase import ObjCDataFormatterTestCase13 14 15class ObjCDataFormatterNSData(ObjCDataFormatterTestCase):16 def test_nsdata_with_run_command(self):17 """Test formatters for NSData."""18 self.appkit_tester_impl(self.nsdata_data_formatter_commands, True)19 20 @skipUnlessDarwin21 def test_nsdata_with_run_command_no_const(self):22 """Test formatters for NSData."""23 self.appkit_tester_impl(self.nsdata_data_formatter_commands, False)24 25 def nsdata_data_formatter_commands(self):26 self.runCmd("settings set target.prefer-dynamic-value no-dynamic-values")27 28 self.expect(29 "frame variable immutableData mutableData data_ref mutable_data_ref mutable_string_ref concreteData concreteMutableData",30 substrs=[31 "(NSData *) immutableData = ",32 " 5 bytes",33 "(NSData *) mutableData = ",34 " 14 bytes",35 "(CFDataRef) data_ref = ",36 '@"5 bytes"',37 "(CFMutableDataRef) mutable_data_ref = ",38 '@"5 bytes"',39 "(CFMutableStringRef) mutable_string_ref = ",40 ' @"Wish ya knew"',41 "(NSData *) concreteData = ",42 " 100000 bytes",43 "(NSMutableData *) concreteMutableData = ",44 " 100000 bytes",45 ],46 )47