Author: Raphael Isemann Date: 2020-01-14T10:10:24+01:00 New Revision: d8ffd601d523fa0c0a55e25e62af9ffaa618629d
URL: https://github.com/llvm/llvm-project/commit/d8ffd601d523fa0c0a55e25e62af9ffaa618629d DIFF: https://github.com/llvm/llvm-project/commit/d8ffd601d523fa0c0a55e25e62af9ffaa618629d.diff LOG: [lldb][NFC] Rewrite python_api/rdar-12481949 test Summary: This renames the test `rdar-12481949` to `get-value-32bit-int` as it just tests that we return the correct result get calling GetValueAsSigned/GetValueAsUnsigned on 32-bit integers. It also deletes all the strange things going on in this test including resetting the data formatters (which are to my knowledge not used to calculate scalar values) and testing Python's long integers (let's just assume that our Python distribution works correctly). Also modernises the setup code. Reviewers: labath, aprantl Reviewed By: aprantl Subscribers: JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D72593 Added: lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/Makefile lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/TestGetValue32BitInt.py lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/main.cpp Modified: Removed: lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Makefile lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/main.cpp ################################################################################ diff --git a/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Makefile b/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/Makefile similarity index 100% rename from lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Makefile rename to lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/Makefile diff --git a/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/TestGetValue32BitInt.py b/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/TestGetValue32BitInt.py new file mode 100644 index 000000000000..025226471bd3 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/TestGetValue32BitInt.py @@ -0,0 +1,19 @@ +""" +Check that SBValue.GetValueAsSigned() does the right thing for a 32-bit -1. +""" + +import lldb +from lldbsuite.test.lldbtest import * +import lldbsuite.test.lldbutil as lldbutil + +class TestCase(TestBase): + + mydir = TestBase.compute_mydir(__file__) + NO_DEBUG_INFO_TESTCASE = True + + def test_with_run_command(self): + self.build() + lldbutil.run_to_source_breakpoint(self,"// break here", lldb.SBFileSpec("main.cpp")) + + self.assertEqual(self.frame().FindVariable("myvar").GetValueAsSigned(), -1) + self.assertEqual(self.frame().FindVariable("myvar").GetValueAsUnsigned(), 0xFFFFFFFF) diff --git a/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/main.cpp b/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/main.cpp new file mode 100644 index 000000000000..61f40fb2a78f --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/python_api/get-value-32bit-int/main.cpp @@ -0,0 +1,5 @@ +#include <cstdint> +int main () { + int32_t myvar = -1; + return myvar; // break here +} diff --git a/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py b/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py deleted file mode 100644 index fe52825c3ca2..000000000000 --- a/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/Test-rdar-12481949.py +++ /dev/null @@ -1,66 +0,0 @@ -""" -Check that SBValue.GetValueAsSigned() does the right thing for a 32-bit -1. -""" - - - -import lldb -from lldbsuite.test.lldbtest import * -import lldbsuite.test.lldbutil as lldbutil - - -class Radar12481949DataFormatterTestCase(TestBase): - - # test for rdar://problem/12481949 - mydir = TestBase.compute_mydir(__file__) - NO_DEBUG_INFO_TESTCASE = True - - def setUp(self): - # Call super's setUp(). - TestBase.setUp(self) - # Find the line number to break at. - self.line = line_number('main.cpp', '// Set break point at this line.') - - def test_with_run_command(self): - """Check that SBValue.GetValueAsSigned() does the right thing for a 32-bit -1.""" - self.build() - self.runCmd("file " + self.getBuildArtifact("a.out"), CURRENT_EXECUTABLE_SET) - - lldbutil.run_break_set_by_file_and_line( - self, "main.cpp", 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']) - - # This is the function to remove the custom formats in order to have a - # clean slate for the next test case. - def cleanup(): - self.runCmd('type format delete hex', check=False) - self.runCmd('type summary clear', check=False) - - # Execute the cleanup function during test case tear down. - self.addTearDownHook(cleanup) - - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsSigned() == -1, - "GetValueAsSigned() says -1") - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsSigned() != 0xFFFFFFFF, - "GetValueAsSigned() does not say 0xFFFFFFFF") - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsSigned() != 0xFFFFFFFFFFFFFFFF, - "GetValueAsSigned() does not say 0xFFFFFFFFFFFFFFFF") - - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsUnsigned() != -1, - "GetValueAsUnsigned() does not say -1") - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsUnsigned() == 0xFFFFFFFF, - "GetValueAsUnsigned() says 0xFFFFFFFF") - self.assertTrue( - self.frame().FindVariable("myvar").GetValueAsUnsigned() != 0xFFFFFFFFFFFFFFFF, - "GetValueAsUnsigned() does not says 0xFFFFFFFFFFFFFFFF") diff --git a/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/main.cpp b/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/main.cpp deleted file mode 100644 index f6ec2b860648..000000000000 --- a/lldb/packages/Python/lldbsuite/test/python_api/rdar-12481949/main.cpp +++ /dev/null @@ -1,16 +0,0 @@ -//===-- main.cpp ------------------------------------------------*- C++ -*-===// -// -// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. -// See https://llvm.org/LICENSE.txt for license information. -// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -// -//===----------------------------------------------------------------------===// - -#include <stdio.h> -#include <stdint.h> -int main () -{ - int32_t myvar = -1; - printf ("%d\n", myvar); // Set break point at this line. - return myvar+1; -} _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits