diff options
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/context-object/TestContextObject.py')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/expression_command/context-object/TestContextObject.py | 145 |
1 files changed, 0 insertions, 145 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/expression_command/context-object/TestContextObject.py b/lldb/packages/Python/lldbsuite/test/expression_command/context-object/TestContextObject.py deleted file mode 100644 index 02b8162aad6..00000000000 --- a/lldb/packages/Python/lldbsuite/test/expression_command/context-object/TestContextObject.py +++ /dev/null @@ -1,145 +0,0 @@ -""" -Tests expression evaluation in context of an object. -""" - -import lldb -import lldbsuite.test.lldbutil as lldbutil -from lldbsuite.test.lldbtest import * - -class ContextObjectTestCase(TestBase): - - mydir = TestBase.compute_mydir(__file__) - - def test_context_object(self): - """Tests expression evaluation in context of an object.""" - self.build() - - (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint(self, '// Break here', self.main_source_spec) - frame = thread.GetFrameAtIndex(0) - - # - # Test C++ struct variable - # - - obj_val = frame.FindVariable("cpp_struct") - self.assertTrue(obj_val.IsValid()) - - # Test an empty expression evaluation - value = obj_val.EvaluateExpression("") - self.assertFalse(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # Test retrieveing of a field (not a local with the same name) - value = obj_val.EvaluateExpression("field") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 1111) - - # Test functions evaluation - value = obj_val.EvaluateExpression("function()") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 2222) - - # Test that we retrieve the right global - value = obj_val.EvaluateExpression("global.field") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 1111) - - # - # Test C++ union variable - # - - obj_val = frame.FindVariable("cpp_union") - self.assertTrue(obj_val.IsValid()) - - # Test retrieveing of a field - value = obj_val.EvaluateExpression("field_int") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 5555) - - # - # Test C++ scalar - # - - obj_val = frame.FindVariable("cpp_scalar") - self.assertTrue(obj_val.IsValid()) - - # Test an expression evaluation - value = obj_val.EvaluateExpression("1") - self.assertFalse(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # - # Test C++ array - # - - obj_val = frame.FindVariable("cpp_array") - self.assertTrue(obj_val.IsValid()) - - # Test an expression evaluation - value = obj_val.EvaluateExpression("1") - self.assertFalse(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # Test retrieveing of an element's field - value = obj_val.GetValueForExpressionPath("[7]").EvaluateExpression("field") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 1111) - - # - # Test C++ pointer - # - - obj_val = frame.FindVariable("cpp_pointer") - self.assertTrue(obj_val.IsValid()) - - # Test an expression evaluation - value = obj_val.EvaluateExpression("1") - self.assertFalse(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # Test retrieveing of a dereferenced object's field - value = obj_val.Dereference().EvaluateExpression("field") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 1111) - - # - # Test C++ computation result - # - - obj_val = frame.EvaluateExpression("cpp_namespace::GetCppStruct()") - self.assertTrue(obj_val.IsValid()) - - # Test an expression evaluation - value = obj_val.EvaluateExpression("1") - self.assertTrue(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # - # Test C++ computation result located in debuggee memory - # - - obj_val = frame.EvaluateExpression("cpp_namespace::GetCppStructPtr()") - self.assertTrue(obj_val.IsValid()) - - # Test an expression evaluation - value = obj_val.EvaluateExpression("1") - self.assertFalse(value.IsValid()) - self.assertFalse(value.GetError().Success()) - - # Test retrieveing of a dereferenced object's field - value = obj_val.Dereference().EvaluateExpression("field") - self.assertTrue(value.IsValid()) - self.assertTrue(value.GetError().Success()) - self.assertEqual(value.GetValueAsSigned(), 1111) - - def setUp(self): - TestBase.setUp(self) - - self.main_source = "main.cpp" - self.main_source_spec = lldb.SBFileSpec(self.main_source) |