[Lldb-commits] [lldb] b505ed9 - [lldb] Remove support for replaying the test suite from a reproducer
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Thu Sep 30 10:47:54 PDT 2021
Author: Jonas Devlieghere
Date: 2021-09-30T10:47:19-07:00
New Revision: b505ed9d313653782b81bbc97979c98edb205558
URL: https://github.com/llvm/llvm-project/commit/b505ed9d313653782b81bbc97979c98edb205558
DIFF: https://github.com/llvm/llvm-project/commit/b505ed9d313653782b81bbc97979c98edb205558.diff
LOG: [lldb] Remove support for replaying the test suite from a reproducer
This patch removes the infrastructure to replay the test suite from a
reproducer, as well as the modifications made to the individual tests.
Added:
Modified:
lldb/packages/Python/lldbsuite/test/configuration.py
lldb/packages/Python/lldbsuite/test/decorators.py
lldb/packages/Python/lldbsuite/test/dotest.py
lldb/packages/Python/lldbsuite/test/dotest_args.py
lldb/packages/Python/lldbsuite/test/lldbtest.py
lldb/test/API/api/log/TestAPILog.py
lldb/test/API/commands/command/script/TestCommandScript.py
lldb/test/API/commands/expression/expr-in-syscall/TestExpressionInSyscall.py
lldb/test/API/commands/expression/issue_11588/Test11588.py
lldb/test/API/commands/expression/no-deadlock/TestExprDoesntBlock.py
lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
lldb/test/API/commands/log/basic/TestLogging.py
lldb/test/API/commands/platform/process/list/TestProcessList.py
lldb/test/API/commands/process/attach-resume/TestAttachResume.py
lldb/test/API/commands/process/attach/TestProcessAttach.py
lldb/test/API/commands/process/attach/attach_denied/TestAttachDenied.py
lldb/test/API/commands/process/launch/TestProcessLaunch.py
lldb/test/API/commands/session/save/TestSessionSave.py
lldb/test/API/commands/settings/TestSettings.py
lldb/test/API/commands/settings/quoting/TestQuoting.py
lldb/test/API/commands/target/basic/TestTargetCommand.py
lldb/test/API/commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py
lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/TestBreakpointSetRestart.py
lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
lldb/test/API/functionalities/breakpoint/scripted_bkpt/TestScriptedResolver.py
lldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py
lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
lldb/test/API/functionalities/completion/TestCompletion.py
lldb/test/API/functionalities/conditional_break/TestConditionalBreak.py
lldb/test/API/functionalities/deleted-executable/TestDeletedExecutable.py
lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py
lldb/test/API/functionalities/gdb_remote_client/TestIOSSimulator.py
lldb/test/API/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py
lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
lldb/test/API/functionalities/gdb_remote_client/TestRestartBug.py
lldb/test/API/functionalities/gdb_remote_client/TestWriteMemory.py
lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
lldb/test/API/functionalities/jitloader_gdb/TestJITLoaderGDB.py
lldb/test/API/functionalities/load_unload/TestLoadUnload.py
lldb/test/API/functionalities/load_using_paths/TestLoadUsingPaths.py
lldb/test/API/functionalities/memory/read/TestMemoryRead.py
lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpUUID.py
lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
lldb/test/API/functionalities/reproducers/attach/TestReproducerAttach.py
lldb/test/API/functionalities/reproducers/fs-case-sensitivity/TestReproducerFSCaseSensitivity.py
lldb/test/API/functionalities/signal/TestSendSignal.py
lldb/test/API/functionalities/step_scripted/TestStepScripted.py
lldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py
lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
lldb/test/API/lang/c/modules/TestCModules.py
lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
lldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
lldb/test/API/lang/objc/foundation/TestRuntimeTypes.py
lldb/test/API/lang/objc/foundation/TestSymbolTable.py
lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
lldb/test/API/lang/objc/modules-hash-mismatch/TestClangModulesHashMismatch.py
lldb/test/API/lang/objc/modules-update/TestClangModulesUpdate.py
lldb/test/API/lang/objc/modules/TestObjCModules.py
lldb/test/API/lang/objc/print-obj/TestPrintObj.py
lldb/test/API/lit.cfg.py
lldb/test/API/lit.site.cfg.py.in
lldb/test/API/lldbtest.py
lldb/test/API/macosx/dyld-trie-symbols/TestDyldTrieSymbols.py
lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
lldb/test/API/macosx/function-starts/TestFunctionStarts.py
lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
lldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py
lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py
lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
lldb/test/API/macosx/version_zero/TestGetVersionZeroVersion.py
lldb/test/API/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py
lldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py
lldb/test/API/python_api/file_handle/TestFileHandle.py
lldb/test/API/python_api/hello_world/TestHelloWorld.py
lldb/test/API/python_api/interpreter/TestRunCommandInterpreterAPI.py
lldb/test/API/python_api/process/TestProcessAPI.py
lldb/test/API/python_api/process/io/TestProcessIO.py
lldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py
lldb/test/API/python_api/sbdata/TestSBData.py
lldb/test/API/python_api/symbol-context/TestSymbolContext.py
lldb/test/API/python_api/target/TestTargetAPI.py
lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
lldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
lldb/test/API/source-manager/TestSourceManager.py
lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
lldb/test/API/types/AbstractBase.py
Removed:
################################################################################
diff --git a/lldb/packages/Python/lldbsuite/test/configuration.py b/lldb/packages/Python/lldbsuite/test/configuration.py
index 9b57666f92bc3..6b3da8f255230 100644
--- a/lldb/packages/Python/lldbsuite/test/configuration.py
+++ b/lldb/packages/Python/lldbsuite/test/configuration.py
@@ -117,10 +117,6 @@
# Test results handling globals
test_result = None
-# Reproducers
-capture_path = None
-replay_path = None
-
# The names of all tests. Used to assert we don't have two tests with the
# same base name.
all_tests = set()
@@ -158,18 +154,3 @@ def get_yaml2obj_path():
"""
if yaml2obj and os.path.lexists(yaml2obj):
return yaml2obj
-
-def is_reproducer_replay():
- """
- Returns true when dotest is being replayed from a reproducer. Never use
- this method to guard SB API calls as it will cause a divergence between
- capture and replay.
- """
- return replay_path is not None
-
-def is_reproducer():
- """
- Returns true when dotest is capturing a reproducer or is being replayed
- from a reproducer. Use this method to guard SB API calls.
- """
- return capture_path or replay_path
diff --git a/lldb/packages/Python/lldbsuite/test/decorators.py b/lldb/packages/Python/lldbsuite/test/decorators.py
index d67572e75ec59..972a98a13079b 100644
--- a/lldb/packages/Python/lldbsuite/test/decorators.py
+++ b/lldb/packages/Python/lldbsuite/test/decorators.py
@@ -908,9 +908,3 @@ def is_feature_enabled(self):
except subprocess.CalledProcessError:
return "%s is not supported on this system." % feature
return skipTestIfFn(is_feature_enabled)
-
-def skipIfReproducer(func):
- """Skip this test if the environment is set up to run LLDB with reproducers."""
- return unittest2.skipIf(
- configuration.capture_path or configuration.replay_path,
- "reproducers unsupported")(func)
diff --git a/lldb/packages/Python/lldbsuite/test/dotest.py b/lldb/packages/Python/lldbsuite/test/dotest.py
index 5c5583fb5706f..0815188d6cde8 100644
--- a/lldb/packages/Python/lldbsuite/test/dotest.py
+++ b/lldb/packages/Python/lldbsuite/test/dotest.py
@@ -393,16 +393,6 @@ def parseOptionsAndInitTestdirs():
if do_help:
usage(parser)
- # Reproducer arguments
- if args.capture_path and args.replay_path:
- logging.error('Cannot specify both a capture and a replay path.')
- sys.exit(-1)
-
- if args.capture_path:
- configuration.capture_path = args.capture_path
-
- if args.replay_path:
- configuration.replay_path = args.replay_path
if args.lldb_platform_name:
configuration.lldb_platform_name = args.lldb_platform_name
if args.lldb_platform_url:
@@ -888,19 +878,8 @@ def run_suite():
setupSysPath()
- import lldbconfig
- if configuration.capture_path or configuration.replay_path:
- lldbconfig.INITIALIZE = False
import lldb
-
- if configuration.capture_path:
- lldb.SBReproducer.Capture(configuration.capture_path)
- lldb.SBReproducer.SetAutoGenerate(True)
- elif configuration.replay_path:
- lldb.SBReproducer.PassiveReplay(configuration.replay_path)
-
- if not lldbconfig.INITIALIZE:
- lldb.SBDebugger.Initialize()
+ lldb.SBDebugger.Initialize()
# Use host platform by default.
lldb.selected_platform = lldb.SBPlatform.GetHostPlatform()
diff --git a/lldb/packages/Python/lldbsuite/test/dotest_args.py b/lldb/packages/Python/lldbsuite/test/dotest_args.py
index af45205ae3edc..aac2fecfe6994 100644
--- a/lldb/packages/Python/lldbsuite/test/dotest_args.py
+++ b/lldb/packages/Python/lldbsuite/test/dotest_args.py
@@ -189,17 +189,6 @@ def create_parser():
metavar='platform-working-dir',
help='The directory to use on the remote platform.')
- # Reproducer options
- group = parser.add_argument_group('Reproducer options')
- group.add_argument(
- '--capture-path',
- metavar='reproducer path',
- help='The reproducer capture path')
- group.add_argument(
- '--replay-path',
- metavar='reproducer path',
- help='The reproducer replay path')
-
# Test-suite behaviour
group = parser.add_argument_group('Runtime behaviour options')
X('-d', 'Suspend the process after launch to wait indefinitely for a debugger to attach')
diff --git a/lldb/packages/Python/lldbsuite/test/lldbtest.py b/lldb/packages/Python/lldbsuite/test/lldbtest.py
index db350aee4a182..d32b960ecd492 100644
--- a/lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ b/lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -746,14 +746,6 @@ def getBuildDir(self):
return os.path.join(configuration.test_build_dir, self.mydir,
self.getBuildDirBasename())
- def getReproducerDir(self):
- """Return the full path to the reproducer if enabled."""
- if configuration.capture_path:
- return configuration.capture_path
- if configuration.replay_path:
- return configuration.replay_path
- return None
-
def makeBuildDir(self):
"""Create the test-specific working directory, deleting any previous
contents."""
@@ -770,16 +762,6 @@ def getSourcePath(self, name):
"""Return absolute path to a file in the test's source directory."""
return os.path.join(self.getSourceDir(), name)
- def getReproducerArtifact(self, name):
- lldbutil.mkdir_p(self.getReproducerDir())
- return os.path.join(self.getReproducerDir(), name)
-
- def getReproducerRemappedPath(self, path):
- assert configuration.replay_path
- assert os.path.isabs(path)
- path = os.path.relpath(path, '/')
- return os.path.join(configuration.replay_path, 'root', path)
-
@classmethod
def setUpCommands(cls):
commands = [
@@ -1097,11 +1079,8 @@ def tearDown(self):
# the shared module cache.
lldb.SBModule.GarbageCollectAllocatedModules()
- # Modules are not orphaned during reproducer replay because they're
- # leaked on purpose.
- if not configuration.is_reproducer():
- # Assert that the global module cache is empty.
- self.assertEqual(lldb.SBModule.GetNumberAllocatedModules(), 0)
+ # Assert that the global module cache is empty.
+ self.assertEqual(lldb.SBModule.GetNumberAllocatedModules(), 0)
# =========================================================
@@ -2101,9 +2080,8 @@ def tearDown(self):
for target in targets:
self.dbg.DeleteTarget(target)
- if not configuration.is_reproducer():
- # Assert that all targets are deleted.
- self.assertEqual(self.dbg.GetNumTargets(), 0)
+ # Assert that all targets are deleted.
+ self.assertEqual(self.dbg.GetNumTargets(), 0)
# Do this last, to make sure it's in reverse order from how we setup.
Base.tearDown(self)
diff --git a/lldb/test/API/api/log/TestAPILog.py b/lldb/test/API/api/log/TestAPILog.py
index d5a2e4857e536..3c340f1cafc71 100644
--- a/lldb/test/API/api/log/TestAPILog.py
+++ b/lldb/test/API/api/log/TestAPILog.py
@@ -25,9 +25,6 @@ def test_api_log(self):
self.dbg.GetScriptingLanguage(None)
target = self.dbg.CreateTarget(None)
- if configuration.is_reproducer_replay():
- logfile = self.getReproducerRemappedPath(logfile)
-
self.assertTrue(os.path.isfile(logfile))
with open(logfile, 'r') as f:
log = f.read()
diff --git a/lldb/test/API/commands/command/script/TestCommandScript.py b/lldb/test/API/commands/command/script/TestCommandScript.py
index caf97ea8db979..b103298f24e10 100644
--- a/lldb/test/API/commands/command/script/TestCommandScript.py
+++ b/lldb/test/API/commands/command/script/TestCommandScript.py
@@ -14,7 +14,6 @@ class CmdPythonTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
NO_DEBUG_INFO_TESTCASE = True
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test(self):
self.build()
self.pycmd_tests()
diff --git a/lldb/test/API/commands/expression/expr-in-syscall/TestExpressionInSyscall.py b/lldb/test/API/commands/expression/expr-in-syscall/TestExpressionInSyscall.py
index 9083c51376f1b..d433e2e400ae3 100644
--- a/lldb/test/API/commands/expression/expr-in-syscall/TestExpressionInSyscall.py
+++ b/lldb/test/API/commands/expression/expr-in-syscall/TestExpressionInSyscall.py
@@ -14,7 +14,6 @@ class ExprSyscallTestCase(TestBase):
oslist=["windows"],
bugnumber="llvm.org/pr21765, getpid() does not exist on Windows")
@expectedFailureNetBSD
- @skipIfReproducer
def test_setpgid(self):
self.build()
self.expr_syscall()
diff --git a/lldb/test/API/commands/expression/issue_11588/Test11588.py b/lldb/test/API/commands/expression/issue_11588/Test11588.py
index eb5b86e96363d..626eef6f5511a 100644
--- a/lldb/test/API/commands/expression/issue_11588/Test11588.py
+++ b/lldb/test/API/commands/expression/issue_11588/Test11588.py
@@ -17,7 +17,6 @@ class Issue11581TestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
@expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24778")
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_11581_commands(self):
# This is the function to remove the custom commands in order to have a
# clean slate for the next test case.
diff --git a/lldb/test/API/commands/expression/no-deadlock/TestExprDoesntBlock.py b/lldb/test/API/commands/expression/no-deadlock/TestExprDoesntBlock.py
index 5cf39d304da84..280236688f043 100644
--- a/lldb/test/API/commands/expression/no-deadlock/TestExprDoesntBlock.py
+++ b/lldb/test/API/commands/expression/no-deadlock/TestExprDoesntBlock.py
@@ -16,7 +16,6 @@ class ExprDoesntDeadlockTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
@add_test_categories(["basic_process"])
- @skipIfReproducer # Timeouts are not currently modeled.
def test_with_run_command(self):
"""Test that expr will time out and allow other threads to run if it blocks."""
self.build()
diff --git a/lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py b/lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
index 733c9921487eb..e6dcec3df9b86 100644
--- a/lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
+++ b/lldb/test/API/commands/expression/timeout/TestCallWithTimeout.py
@@ -26,7 +26,6 @@ def setUp(self):
oslist=[
"windows"],
bugnumber="llvm.org/pr21765")
- @skipIfReproducer # Timeouts are not currently modeled.
def test(self):
"""Test calling std::String member function."""
self.build()
diff --git a/lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py b/lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
index 17424551fd834..e21edef4d8064 100644
--- a/lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
+++ b/lldb/test/API/commands/expression/unwind_expression/TestUnwindExpression.py
@@ -51,7 +51,6 @@ def test_conditional_bktp(self):
@add_test_categories(['pyapi'])
@expectedFlakeyNetBSD
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test_unwind_expression(self):
"""Test unwinding from an expression."""
self.build_and_run_to_bkpt()
diff --git a/lldb/test/API/commands/log/basic/TestLogging.py b/lldb/test/API/commands/log/basic/TestLogging.py
index 4ba67f8794b64..21d92fe92d8ed 100644
--- a/lldb/test/API/commands/log/basic/TestLogging.py
+++ b/lldb/test/API/commands/log/basic/TestLogging.py
@@ -20,8 +20,6 @@ def setUp(self):
super(LogTestCase, self).setUp()
self.log_file = self.getBuildArtifact("log-file.txt")
- if configuration.is_reproducer_replay():
- self.log_file = self.getReproducerRemappedPath(self.log_file)
def test_file_writing(self):
self.build()
diff --git a/lldb/test/API/commands/platform/process/list/TestProcessList.py b/lldb/test/API/commands/platform/process/list/TestProcessList.py
index fe2ed74916ebe..5d83512a73a57 100644
--- a/lldb/test/API/commands/platform/process/list/TestProcessList.py
+++ b/lldb/test/API/commands/platform/process/list/TestProcessList.py
@@ -29,9 +29,4 @@ def test_process_list_with_args(self):
substrs = [str(popen.pid), "TestProcess arg1 --arg2 arg3"]
- # Because LLDB isn't the one spawning the subprocess, the PID will be
- #
diff erent during replay.
- if configuration.is_reproducer_replay():
- substrs.pop(0)
-
self.expect("platform process list -v", substrs=substrs)
diff --git a/lldb/test/API/commands/process/attach-resume/TestAttachResume.py b/lldb/test/API/commands/process/attach-resume/TestAttachResume.py
index a73b6566c747a..11d9ab26fa248 100644
--- a/lldb/test/API/commands/process/attach-resume/TestAttachResume.py
+++ b/lldb/test/API/commands/process/attach-resume/TestAttachResume.py
@@ -20,7 +20,6 @@ class AttachResumeTestCase(TestBase):
@skipIfRemote
@expectedFailureNetBSD
@skipIfWindows # llvm.org/pr24778, llvm.org/pr21753
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_attach_continue_interrupt_detach(self):
"""Test attach/continue/interrupt/detach"""
self.build()
diff --git a/lldb/test/API/commands/process/attach/TestProcessAttach.py b/lldb/test/API/commands/process/attach/TestProcessAttach.py
index 4738ee5851e7a..265e9e1a5687d 100644
--- a/lldb/test/API/commands/process/attach/TestProcessAttach.py
+++ b/lldb/test/API/commands/process/attach/TestProcessAttach.py
@@ -60,7 +60,6 @@ def test_attach_to_process_by_id_autocontinue(self):
self.assertTrue(process, PROCESS_IS_VALID)
self.assertTrue(process.GetState(), lldb.eStateRunning)
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
@skipIfWindows # This is flakey on Windows AND when it fails, it hangs: llvm.org/pr48806
def test_attach_to_process_from_
diff erent_dir_by_id(self):
"""Test attach by process id"""
diff --git a/lldb/test/API/commands/process/attach/attach_denied/TestAttachDenied.py b/lldb/test/API/commands/process/attach/attach_denied/TestAttachDenied.py
index 4a2b0b7cf817d..1072529e31141 100644
--- a/lldb/test/API/commands/process/attach/attach_denied/TestAttachDenied.py
+++ b/lldb/test/API/commands/process/attach/attach_denied/TestAttachDenied.py
@@ -21,7 +21,6 @@ class AttachDeniedTestCase(TestBase):
@skipIfWindows
@skipIfiOSSimulator
@skipIfDarwinEmbedded # ptrace(ATTACH_REQUEST...) won't work on ios/tvos/etc
- @skipIfReproducer
def test_attach_to_process_by_id_denied(self):
"""Test attach by process id denied"""
self.build()
diff --git a/lldb/test/API/commands/process/launch/TestProcessLaunch.py b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
index b36a137557477..3f0791a2bd06b 100644
--- a/lldb/test/API/commands/process/launch/TestProcessLaunch.py
+++ b/lldb/test/API/commands/process/launch/TestProcessLaunch.py
@@ -29,7 +29,6 @@ def tearDown(self):
TestBase.tearDown(self)
@skipIfRemote
- @skipIfReproducer
def test_io(self):
"""Test that process launch I/O redirection flags work properly."""
self.build()
@@ -85,7 +84,6 @@ def test_io(self):
@skipIfRemote
@expectedFailureAll(oslist=["freebsd", "linux"], bugnumber="llvm.org/pr20265")
@expectedFailureNetBSD
- @skipIfReproducer
def test_set_working_dir_nonexisting(self):
"""Test that '-w dir' fails to set the working dir when running the inferior with a dir which doesn't exist."""
d = {'CXX_SOURCES': 'print_cwd.cpp'}
@@ -113,7 +111,6 @@ def test_set_working_dir_nonexisting(self):
invalid_dir_path])
@skipIfRemote
- @skipIfReproducer
def test_set_working_dir_existing(self):
"""Test that '-w dir' sets the working dir when running the inferior."""
d = {'CXX_SOURCES': 'print_cwd.cpp'}
@@ -173,7 +170,6 @@ def test_set_working_dir_existing(self):
if not success:
self.fail(err_msg)
- @skipIfReproducer
def test_environment_with_special_char(self):
"""Test that environment variables containing '*' and '}' are handled correctly by the inferior."""
source = 'print_env.cpp'
diff --git a/lldb/test/API/commands/session/save/TestSessionSave.py b/lldb/test/API/commands/session/save/TestSessionSave.py
index 2e25047e501a7..04dddc5cab55e 100644
--- a/lldb/test/API/commands/session/save/TestSessionSave.py
+++ b/lldb/test/API/commands/session/save/TestSessionSave.py
@@ -24,7 +24,6 @@ def raw_transcript_builder(self, cmd, res):
@skipIfWindows
- @skipIfReproducer
@no_debug_info_test
def test_session_save(self):
raw = ""
@@ -92,7 +91,6 @@ def test_session_save(self):
self.assertIn(line, content)
@skipIfWindows
- @skipIfReproducer
@no_debug_info_test
def test_session_save_on_quit(self):
raw = ""
diff --git a/lldb/test/API/commands/settings/TestSettings.py b/lldb/test/API/commands/settings/TestSettings.py
index 7eab23a195bb4..83c5b10f51abd 100644
--- a/lldb/test/API/commands/settings/TestSettings.py
+++ b/lldb/test/API/commands/settings/TestSettings.py
@@ -239,12 +239,10 @@ def test_disassembler_settings(self):
substrs=["5ah"])
@skipIfDarwinEmbedded # <rdar://problem/34446098> debugserver on ios etc can't write files
- @skipIfReproducer
def test_run_args_and_env_vars(self):
self.do_test_run_args_and_env_vars(use_launchsimple=False)
@skipIfDarwinEmbedded # <rdar://problem/34446098> debugserver on ios etc can't write files
- @skipIfReproducer
def test_launchsimple_args_and_env_vars(self):
self.do_test_run_args_and_env_vars(use_launchsimple=True)
@@ -329,7 +327,6 @@ def do_test_run_args_and_env_vars(self, use_launchsimple):
"Environment variable 'MY_ENV_VAR' successfully passed."])
@skipIfRemote # it doesn't make sense to send host env to remote target
- @skipIfReproducer
def test_pass_host_env_vars(self):
"""Test that the host env vars are passed to the launched process."""
self.build()
@@ -426,7 +423,6 @@ def unset_env_variables():
"The host environment variable 'MY_HOST_ENV_VAR2' successfully passed."])
@skipIfDarwinEmbedded # <rdar://problem/34446098> debugserver on ios etc can't write files
- @skipIfReproducer
def test_set_error_output_path(self):
"""Test that setting target.error/output-path for the launched process works."""
self.build()
diff --git a/lldb/test/API/commands/settings/quoting/TestQuoting.py b/lldb/test/API/commands/settings/quoting/TestQuoting.py
index a64c34a6ff386..04b57c8fbd767 100644
--- a/lldb/test/API/commands/settings/quoting/TestQuoting.py
+++ b/lldb/test/API/commands/settings/quoting/TestQuoting.py
@@ -18,7 +18,6 @@ def classCleanup(cls):
"""Cleanup the test byproducts."""
cls.RemoveTempFile(SettingsCommandTestCase.output_file_name)
- @skipIfReproducer # Reproducers don't know about output.txt
@no_debug_info_test
def test(self):
self.build()
diff --git a/lldb/test/API/commands/target/basic/TestTargetCommand.py b/lldb/test/API/commands/target/basic/TestTargetCommand.py
index 74b6c1fdcaed7..15b226b4d3bf2 100644
--- a/lldb/test/API/commands/target/basic/TestTargetCommand.py
+++ b/lldb/test/API/commands/target/basic/TestTargetCommand.py
@@ -358,7 +358,6 @@ def test_target_create_nonexistent_core_file(self):
# Write only files don't seem to be supported on Windows.
@skipIfWindows
- @skipIfReproducer # Cannot be captured in the VFS.
@no_debug_info_test
def test_target_create_unreadable_core_file(self):
tf = tempfile.NamedTemporaryFile()
@@ -383,7 +382,6 @@ def test_target_create_invalid_core_file(self):
# Write only files don't seem to be supported on Windows.
@skipIfWindows
@no_debug_info_test
- @skipIfReproducer # Cannot be captured in the VFS.
def test_target_create_unreadable_sym_file(self):
tf = tempfile.NamedTemporaryFile()
os.chmod(tf.name, stat.S_IWRITE)
diff --git a/lldb/test/API/commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py b/lldb/test/API/commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py
index 5d8eb3e8c01bc..c99c44d098d5c 100644
--- a/lldb/test/API/commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py
+++ b/lldb/test/API/commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py
@@ -94,7 +94,6 @@ def test_watchpoint_command(self):
self.expect("frame variable --show-globals cookie",
substrs=['(int32_t)', 'cookie = 777'])
- @skipIfReproducer
def test_continue_in_watchpoint_command(self):
"""Test continue in a watchpoint command."""
self.build(dictionary=self.d)
diff --git a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
index 3fc21ad7eed9f..be2e1426d580a 100644
--- a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
+++ b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
@@ -17,14 +17,12 @@ class BreakpointCommandTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
@expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24528")
- @skipIfReproducer # side_effect bypasses reproducer
def test_breakpoint_command_sequence(self):
"""Test a sequence of breakpoint command add, list, and delete."""
self.build()
self.breakpoint_command_sequence()
@skipIf(oslist=["windows"], bugnumber="llvm.org/pr44431")
- @skipIfReproducer # side_effect bypasses reproducer
def test_script_parameters(self):
"""Test a sequence of breakpoint command add, list, and delete."""
self.build()
diff --git a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
index f8575cf9f04ab..b5ff89a6fd060 100644
--- a/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
+++ b/lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommandsFromPython.py
@@ -18,13 +18,11 @@ class PythonBreakpointCommandSettingTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
@add_test_categories(['pyapi'])
- @skipIfReproducer # side_effect bypasses reproducer
def test_step_out_python(self):
"""Test stepping out using a python breakpoint command."""
self.build()
self.do_set_python_command_from_python()
- @skipIfReproducer # side_effect bypasses reproducer
def test_bkpt_cmd_bad_arguments(self):
"""Test what happens when pass structured data to a command:"""
self.build()
diff --git a/lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/TestBreakpointSetRestart.py b/lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/TestBreakpointSetRestart.py
index f9d5aeeeb3b24..40a20a04b76b1 100644
--- a/lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/TestBreakpointSetRestart.py
+++ b/lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/TestBreakpointSetRestart.py
@@ -13,7 +13,6 @@ class BreakpointSetRestart(TestBase):
BREAKPOINT_TEXT = 'Set a breakpoint here'
@skipIfNetBSD
- @skipIfReproducer
def test_breakpoint_set_restart(self):
self.build()
diff --git a/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py b/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
index 7bf1f34b5fe14..3a6d663913801 100644
--- a/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
+++ b/lldb/test/API/functionalities/breakpoint/objc/TestObjCBreakpoints.py
@@ -120,10 +120,6 @@ def check_objc_breakpoints(self, have_dsym):
self.check_category_breakpoints()
- # Stop here for reproducers. They don't capture file system changes.
- if configuration.is_reproducer():
- return
-
if have_dsym:
shutil.rmtree(exe + ".dSYM")
self.assertEqual(subprocess.call(
diff --git a/lldb/test/API/functionalities/breakpoint/scripted_bkpt/TestScriptedResolver.py b/lldb/test/API/functionalities/breakpoint/scripted_bkpt/TestScriptedResolver.py
index f4bbde755e690..02c0aab9149e9 100644
--- a/lldb/test/API/functionalities/breakpoint/scripted_bkpt/TestScriptedResolver.py
+++ b/lldb/test/API/functionalities/breakpoint/scripted_bkpt/TestScriptedResolver.py
@@ -16,7 +16,6 @@ class TestScriptedResolver(TestBase):
NO_DEBUG_INFO_TESTCASE = True
@expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24528")
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_scripted_resolver(self):
"""Use a scripted resolver to set a by symbol name breakpoint"""
self.build()
diff --git a/lldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py b/lldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py
index 12290411fb5dc..f209dbedcf1cc 100644
--- a/lldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py
+++ b/lldb/test/API/functionalities/breakpoint/serialize/TestBreakpointSerialization.py
@@ -16,42 +16,36 @@ class BreakpointSerialization(TestBase):
NO_DEBUG_INFO_TESTCASE = True
@add_test_categories(['pyapi'])
- @skipIfReproducer # side_effect bypasses reproducer
def test_resolvers(self):
"""Use Python APIs to test that we serialize resolvers."""
self.build()
self.setup_targets_and_cleanup()
self.do_check_resolvers()
- @skipIfReproducer # side_effect bypasses reproducer
def test_filters(self):
"""Use Python APIs to test that we serialize search filters correctly."""
self.build()
self.setup_targets_and_cleanup()
self.do_check_filters()
- @skipIfReproducer # side_effect bypasses reproducer
def test_options(self):
"""Use Python APIs to test that we serialize breakpoint options correctly."""
self.build()
self.setup_targets_and_cleanup()
self.do_check_options()
- @skipIfReproducer # side_effect bypasses reproducer
def test_appending(self):
"""Use Python APIs to test that we serialize breakpoint options correctly."""
self.build()
self.setup_targets_and_cleanup()
self.do_check_appending()
- @skipIfReproducer # side_effect bypasses reproducer
def test_name_filters(self):
"""Use python APIs to test that reading in by name works correctly."""
self.build()
self.setup_targets_and_cleanup()
self.do_check_names()
- @skipIfReproducer # side_effect bypasses reproducer
def test_scripted_extra_args(self):
self.build()
self.setup_targets_and_cleanup()
diff --git a/lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py b/lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
index 931326b322911..b20490f3cefdc 100644
--- a/lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
+++ b/lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
@@ -51,7 +51,6 @@ def setUp(self):
self.thread = lldbutil.get_one_thread_stopped_at_breakpoint(self.process, self.breakpoint1)
self.assertIsNotNone(self.thread, "Didn't stop at breakpoint 1.")
- @skipIfReproducer
def test_step_instruction(self):
# Count instructions between breakpoint_1 and breakpoint_4
contextList = self.target.FindFunctions('main', lldb.eFunctionNameTypeAuto)
diff --git a/lldb/test/API/functionalities/completion/TestCompletion.py b/lldb/test/API/functionalities/completion/TestCompletion.py
index 11f0e387245e0..2bba1bfcb7dd6 100644
--- a/lldb/test/API/functionalities/completion/TestCompletion.py
+++ b/lldb/test/API/functionalities/completion/TestCompletion.py
@@ -131,7 +131,6 @@ def completions_contain_str(self, input, needle):
@skipIfRemote
- @skipIfReproducer
def test_common_completion_process_pid_and_name(self):
# The LLDB process itself and the process already attached to are both
# ignored by the process discovery mechanism, thus we need a process known
diff --git a/lldb/test/API/functionalities/conditional_break/TestConditionalBreak.py b/lldb/test/API/functionalities/conditional_break/TestConditionalBreak.py
index a2c8b42a9a105..56ae6a5ade914 100644
--- a/lldb/test/API/functionalities/conditional_break/TestConditionalBreak.py
+++ b/lldb/test/API/functionalities/conditional_break/TestConditionalBreak.py
@@ -26,7 +26,6 @@ def test_with_python(self):
self.build()
self.do_conditional_break()
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_with_command(self):
"""Simulate a user using lldb commands to break on c() if called from a()."""
self.build()
diff --git a/lldb/test/API/functionalities/deleted-executable/TestDeletedExecutable.py b/lldb/test/API/functionalities/deleted-executable/TestDeletedExecutable.py
index 51681d65d210e..0de7645844435 100644
--- a/lldb/test/API/functionalities/deleted-executable/TestDeletedExecutable.py
+++ b/lldb/test/API/functionalities/deleted-executable/TestDeletedExecutable.py
@@ -19,7 +19,6 @@ class TestDeletedExecutable(TestBase):
@expectedFailureAll(oslist=["linux"],
triple=no_match('aarch64-.*-android'))
# determining the architecture of the process fails
- @skipIfReproducer # File synchronization is not supported during replay.
def test(self):
self.build()
exe = self.getBuildArtifact("a.out")
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py b/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
index 03ef4a73af506..497c5cbbbcdac 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteClient.py
@@ -12,14 +12,12 @@ class gPacketResponder(MockGDBServerResponder):
def readRegisters(self):
return '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
- @skipIfReproducer # Packet log is not populated during replay.
def test_connect(self):
"""Test connecting to a remote gdb server"""
target = self.createTarget("a.yaml")
process = self.connect(target)
self.assertPacketLogContains(["qProcessInfo", "qfThreadInfo"])
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_attach_fail(self):
error_msg = "mock-error-msg"
@@ -69,7 +67,6 @@ def A(self, packet):
None, 0, True, error)
self.assertEquals("'A' packet returned an error: 71", error.GetCString())
- @skipIfReproducer # Packet log is not populated during replay.
def test_read_registers_using_g_packets(self):
"""Test reading registers using 'g' packets (default behavior)"""
self.dbg.HandleCommand(
@@ -87,7 +84,6 @@ def test_read_registers_using_g_packets(self):
self.assertEquals(
0, len([p for p in self.server.responder.packetLog if p.startswith("p")]))
- @skipIfReproducer # Packet log is not populated during replay.
def test_read_registers_using_p_packets(self):
"""Test reading registers using 'p' packets"""
self.dbg.HandleCommand(
@@ -100,7 +96,6 @@ def test_read_registers_using_p_packets(self):
self.assertGreater(
len([p for p in self.server.responder.packetLog if p.startswith("p")]), 0)
- @skipIfReproducer # Packet log is not populated during replay.
def test_write_registers_using_P_packets(self):
"""Test writing registers using 'P' packets (default behavior)"""
self.server.responder = self.gPacketResponder()
@@ -113,7 +108,6 @@ def test_write_registers_using_P_packets(self):
self.assertGreater(
len([p for p in self.server.responder.packetLog if p.startswith("P")]), 0)
- @skipIfReproducer # Packet log is not populated during replay.
def test_write_registers_using_G_packets(self):
"""Test writing registers using 'G' packets"""
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py b/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py
index 19f2824a18f28..33f6581976c13 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestGDBRemoteLoad.py
@@ -19,7 +19,6 @@ def test_module_load_address(self):
self.assertTrue(address.IsValid())
self.assertEqual(".data", address.GetSection().GetName())
- @skipIfReproducer # Packet log is not populated during replay.
@expectedFailureAll(archs=["aarch64"], oslist=["freebsd"],
bugnumber="llvm.org/pr49414")
def test_ram_load(self):
@@ -33,7 +32,6 @@ def test_ram_load(self):
])
@skipIfXmlSupportMissing
- @skipIfReproducer # Packet log is not populated during replay.
@expectedFailureAll(archs=["aarch64"], oslist=["freebsd"],
bugnumber="llvm.org/pr49414")
def test_flash_load(self):
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestIOSSimulator.py b/lldb/test/API/functionalities/gdb_remote_client/TestIOSSimulator.py
index a3eceaf95e070..f196f1cc09d38 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestIOSSimulator.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestIOSSimulator.py
@@ -3,7 +3,6 @@
from lldbsuite.test.decorators import *
from gdbclientutils import *
- at skipIfReproducer
class TestIOSSimulator(GDBRemoteTestBase):
"""
Test that an ios simulator process is recognized as such.
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py b/lldb/test/API/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py
index 754ed44ce8d81..27b2ece6785e8 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestJLink6Armv7RegisterDefinition.py
@@ -184,15 +184,13 @@ def QListThreadsInStopReply(self):
err = msp_valobj.GetError()
self.assertTrue(err.Fail(), "lldb should not be able to fetch the msp register")
- # Reproducers don't support SetData (yet) because it takes a void*.
- if not configuration.is_reproducer():
- val = b'\x11\x22\x33\x44'
- error = lldb.SBError()
- data = lldb.SBData()
- data.SetData(error, val, lldb.eByteOrderBig, 4)
- self.assertEqual(r1_valobj.SetData(data, error), True)
- self.assertTrue(error.Success())
-
- r1_valobj = process.GetThreadAtIndex(0).GetFrameAtIndex(0).FindRegister("r1")
- self.assertEqual(r1_valobj.GetValueAsUnsigned(), 0x11223344)
+ val = b'\x11\x22\x33\x44'
+ error = lldb.SBError()
+ data = lldb.SBData()
+ data.SetData(error, val, lldb.eByteOrderBig, 4)
+ self.assertEqual(r1_valobj.SetData(data, error), True)
+ self.assertTrue(error.Success())
+
+ r1_valobj = process.GetThreadAtIndex(0).GetFrameAtIndex(0).FindRegister("r1")
+ self.assertEqual(r1_valobj.GetValueAsUnsigned(), 0x11223344)
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py b/lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
index 80b83fbe29191..9ad498de15d6e 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
@@ -20,7 +20,6 @@ def test_gdb_remote_sync(self):
finally:
self.dbg.GetSelectedPlatform().DisconnectRemote()
- @skipIfReproducer # Reproducer don't support async.
def test_gdb_remote_async(self):
"""Test the gdb-remote command in asynchronous mode"""
try:
@@ -47,7 +46,6 @@ def test_process_connect_sync(self):
self.dbg.GetSelectedPlatform().DisconnectRemote()
@skipIfWindows
- @skipIfReproducer # Reproducer don't support async.
def test_process_connect_async(self):
"""Test the gdb-remote command in asynchronous mode"""
try:
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestRestartBug.py b/lldb/test/API/functionalities/gdb_remote_client/TestRestartBug.py
index f66f58379890d..142861a37dff2 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestRestartBug.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestRestartBug.py
@@ -8,7 +8,6 @@
class TestRestartBug(GDBRemoteTestBase):
@expectedFailureAll(bugnumber="llvm.org/pr24530")
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test(self):
"""
Test auto-continue behavior when a process is interrupted to deliver
diff --git a/lldb/test/API/functionalities/gdb_remote_client/TestWriteMemory.py b/lldb/test/API/functionalities/gdb_remote_client/TestWriteMemory.py
index 83fa197c2fe3e..73bd292463f0f 100644
--- a/lldb/test/API/functionalities/gdb_remote_client/TestWriteMemory.py
+++ b/lldb/test/API/functionalities/gdb_remote_client/TestWriteMemory.py
@@ -6,7 +6,6 @@
class TestWriteMemory(GDBRemoteTestBase):
- @skipIfReproducer # SBProcess::WriteMemory is not instrumented.
def test(self):
class MyResponder(MockGDBServerResponder):
diff --git a/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py b/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
index 16ab1aaeb5932..95cdfb5591fa0 100644
--- a/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
+++ b/lldb/test/API/functionalities/inferior-changed/TestInferiorChanged.py
@@ -16,7 +16,6 @@ class ChangedInferiorTestCase(TestBase):
@skipIf(hostoslist=["windows"])
@no_debug_info_test
- @skipIfReproducer # VFS is a snapshot.
def test_inferior_crashing(self):
"""Test lldb reloads the inferior after it was changed during the session."""
self.build()
diff --git a/lldb/test/API/functionalities/jitloader_gdb/TestJITLoaderGDB.py b/lldb/test/API/functionalities/jitloader_gdb/TestJITLoaderGDB.py
index 4a1118c2a292e..d7f4f8399baf4 100644
--- a/lldb/test/API/functionalities/jitloader_gdb/TestJITLoaderGDB.py
+++ b/lldb/test/API/functionalities/jitloader_gdb/TestJITLoaderGDB.py
@@ -72,10 +72,9 @@ def cleanup():
self.assertEqual(process.GetState(), lldb.eStateExited)
self.assertEqual(process.GetExitStatus(), 0)
- if not configuration.is_reproducer():
- self.assertTrue(os.path.exists(logfile))
- logcontent = open(logfile).read()
- self.assertIn("SetJITBreakpoint setting JIT breakpoint", logcontent)
+ self.assertTrue(os.path.exists(logfile))
+ logcontent = open(logfile).read()
+ self.assertIn("SetJITBreakpoint setting JIT breakpoint", logcontent)
@skipIfWindows # This test fails on Windows during C code build
def test_jit_int_off(self):
@@ -101,7 +100,6 @@ def cleanup():
self.assertEqual(process.GetState(), lldb.eStateExited)
self.assertEqual(process.GetExitStatus(), 0)
- if not configuration.is_reproducer():
- self.assertTrue(os.path.exists(logfile))
- logcontent = open(logfile).read()
- self.assertNotIn("SetJITBreakpoint setting JIT breakpoint", logcontent)
+ self.assertTrue(os.path.exists(logfile))
+ logcontent = open(logfile).read()
+ self.assertNotIn("SetJITBreakpoint setting JIT breakpoint", logcontent)
diff --git a/lldb/test/API/functionalities/load_unload/TestLoadUnload.py b/lldb/test/API/functionalities/load_unload/TestLoadUnload.py
index 913265549c81c..488a6922b231f 100644
--- a/lldb/test/API/functionalities/load_unload/TestLoadUnload.py
+++ b/lldb/test/API/functionalities/load_unload/TestLoadUnload.py
@@ -93,7 +93,6 @@ def setSvr4Support(self, enabled):
@expectedFailureAll(oslist=["freebsd", "linux", "netbsd"])
@skipIfRemote
@skipIfWindows # Windows doesn't have dlopen and friends, dynamic libraries work
diff erently
- @skipIfReproducer # VFS is a snapshot.
def test_modules_search_paths(self):
"""Test target modules list after loading a
diff erent copy of the library libd.dylib, and verifies that it works with 'target modules search-paths add'."""
if self.platformIsDarwin():
@@ -217,7 +216,6 @@ def test_lldb_process_load_and_unload_commands_with_svr4(self):
self.setSvr4Support(True)
self.run_lldb_process_load_and_unload_commands()
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def run_lldb_process_load_and_unload_commands(self):
"""Test that lldb process load/unload command work correctly."""
self.copy_shlibs_to_remote()
diff --git a/lldb/test/API/functionalities/load_using_paths/TestLoadUsingPaths.py b/lldb/test/API/functionalities/load_using_paths/TestLoadUsingPaths.py
index b54435e7338e2..cfa55c4055a56 100644
--- a/lldb/test/API/functionalities/load_using_paths/TestLoadUsingPaths.py
+++ b/lldb/test/API/functionalities/load_using_paths/TestLoadUsingPaths.py
@@ -40,7 +40,6 @@ def setUp(self):
@skipIfWindows # Windows doesn't have dlopen and friends, dynamic libraries work
diff erently
@expectedFlakeyNetBSD
@expectedFailureAll(oslist=["linux"], archs=['arm'], bugnumber="llvm.org/pr45894")
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test_load_using_paths(self):
"""Test that we can load a module by providing a set of search paths."""
if self.platformIsDarwin():
diff --git a/lldb/test/API/functionalities/memory/read/TestMemoryRead.py b/lldb/test/API/functionalities/memory/read/TestMemoryRead.py
index 3efda021584b5..ceea4ab2f067a 100644
--- a/lldb/test/API/functionalities/memory/read/TestMemoryRead.py
+++ b/lldb/test/API/functionalities/memory/read/TestMemoryRead.py
@@ -150,8 +150,6 @@ def test_memory_read_file(self):
golden_output = res.GetOutput()
memory_read_file = self.getBuildArtifact("memory-read-output")
- if configuration.is_reproducer_replay():
- memory_read_file = self.getReproducerRemappedPath(memory_read_file)
def check_file_content(expected):
with open(memory_read_file) as f:
diff --git a/lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py b/lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
index 3dfc7a0d4405b..aadb6f63fb5e8 100644
--- a/lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
+++ b/lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
@@ -33,41 +33,35 @@ class LinuxCoreTestCase(TestBase):
_ppc64le_regions = 2
@skipIfLLVMTargetMissing("AArch64")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_aarch64(self):
"""Test that lldb can read the process information from an aarch64 linux core file."""
self.do_test("linux-aarch64", self._aarch64_pid,
self._aarch64_regions, "a.out")
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_i386(self):
"""Test that lldb can read the process information from an i386 linux core file."""
self.do_test("linux-i386", self._i386_pid, self._i386_regions, "a.out")
@skipIfLLVMTargetMissing("PowerPC")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_ppc64le(self):
"""Test that lldb can read the process information from an ppc64le linux core file."""
self.do_test("linux-ppc64le", self._ppc64le_pid, self._ppc64le_regions,
"linux-ppc64le.ou")
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_x86_64(self):
"""Test that lldb can read the process information from an x86_64 linux core file."""
self.do_test("linux-x86_64", self._x86_64_pid, self._x86_64_regions,
"a.out")
@skipIfLLVMTargetMissing("SystemZ")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_s390x(self):
"""Test that lldb can read the process information from an s390x linux core file."""
self.do_test("linux-s390x", self._s390x_pid, self._s390x_regions,
"a.out")
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_same_pid_running(self):
"""Test that we read the information from the core correctly even if we have a running
process with the same PID around"""
@@ -95,7 +89,6 @@ def test_same_pid_running(self):
self._x86_64_regions, "a.out")
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_two_cores_same_pid(self):
"""Test that we handle the situation if we have two core files with the same PID
around"""
@@ -127,7 +120,6 @@ def test_two_cores_same_pid(self):
@skipIfLLVMTargetMissing("X86")
@skipIfWindows
- @skipIfReproducer
def test_read_memory(self):
"""Test that we are able to read as many bytes as available"""
target = self.dbg.CreateTarget("linux-x86_64.out")
@@ -192,7 +184,6 @@ def test_FPR_SSE(self):
substrs=["{} = {}".format(regname, value)])
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_i386_sysroot(self):
"""Test that lldb can find the exe for an i386 linux core file using the sysroot."""
@@ -219,7 +210,6 @@ def test_i386_sysroot(self):
@skipIfLLVMTargetMissing("X86")
@skipIfWindows
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_x86_64_sysroot(self):
"""Test that sysroot has more priority then local filesystem."""
diff --git a/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py b/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
index 39e96a65f7389..1acd2262d9074 100644
--- a/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
+++ b/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
@@ -29,7 +29,6 @@ def process_from_yaml(self, yaml_file):
self.process = self.target.LoadCore(minidump_path)
return self.process
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def check_state(self):
with open(os.devnull) as devnul:
# sanitize test output
@@ -345,7 +344,6 @@ def test_deeper_stack_in_minidump(self):
"linux-x86_64_not_crashed.dmp",
self._linux_x86_64_not_crashed_pid)
- @skipIfReproducer # VFS is a snapshot.
def do_change_pid_in_minidump(self, core, newcore, offset, oldpid, newpid):
""" This assumes that the minidump is breakpad generated on Linux -
meaning that the PID in the file will be an ascii string part of
diff --git a/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpUUID.py b/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpUUID.py
index dc28ec6d7accb..bb4e61ba70b46 100644
--- a/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpUUID.py
+++ b/lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpUUID.py
@@ -12,7 +12,6 @@
from lldbsuite.test import lldbutil
- at skipIfReproducer # Modules are not orphaned and it finds the module with the same UUID from test_partial_uuid_match.
class MiniDumpUUIDTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
diff --git a/lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py b/lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
index 6ecd267353447..f967a57e4ea71 100644
--- a/lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
+++ b/lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
@@ -159,13 +159,11 @@ def check_stack(self, process, pid, filename):
self.check_backtrace(thread, filename, backtrace)
@skipIfLLVMTargetMissing("AArch64")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_aarch64(self):
"""Test single-threaded aarch64 core dump."""
self.do_test("1lwp_SIGSEGV.aarch64", pid=8339, region_count=32)
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_amd64(self):
"""Test single-threaded amd64 core dump."""
self.do_test("1lwp_SIGSEGV.amd64", pid=693, region_count=21)
@@ -191,13 +189,11 @@ def check_stack(self, process, pid, filename):
self.assertEqual(thread.GetStopReasonDataAtIndex(0), 0)
@skipIfLLVMTargetMissing("AArch64")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_aarch64(self):
"""Test double-threaded aarch64 core dump where thread 2 is signalled."""
self.do_test("2lwp_t2_SIGSEGV.aarch64", pid=14142, region_count=31)
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_amd64(self):
"""Test double-threaded amd64 core dump where thread 2 is signalled."""
self.do_test("2lwp_t2_SIGSEGV.amd64", pid=622, region_count=24)
@@ -223,13 +219,11 @@ def check_stack(self, process, pid, filename):
self.assertEqual(thread.GetStopReasonDataAtIndex(0), signal.SIGSEGV)
@skipIfLLVMTargetMissing("AArch64")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_aarch64(self):
"""Test double-threaded aarch64 core dump where process is signalled."""
self.do_test("2lwp_process_SIGSEGV.aarch64", pid=1403, region_count=30)
@skipIfLLVMTargetMissing("X86")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_amd64(self):
"""Test double-threaded amd64 core dump where process is signalled."""
self.do_test("2lwp_process_SIGSEGV.amd64", pid=665, region_count=24)
diff --git a/lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py b/lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
index 75e0b9332fbe1..dc75d4fa4020a 100644
--- a/lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
+++ b/lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
@@ -24,7 +24,6 @@ def setUp(self):
@skipIfWindows # setpgid call does not exist on Windows
@expectedFailureAndroid("http://llvm.org/pr23762", api_levels=[16])
@expectedFailureNetBSD
- @skipIfReproducer # File synchronization is not supported during replay.
@skipIftvOS # fork not available on tvOS.
@skipIfwatchOS # fork not available on watchOS.
def test_setpgid(self):
diff --git a/lldb/test/API/functionalities/reproducers/attach/TestReproducerAttach.py b/lldb/test/API/functionalities/reproducers/attach/TestReproducerAttach.py
index a1cfcd20013e4..8e6dcea957f0d 100644
--- a/lldb/test/API/functionalities/reproducers/attach/TestReproducerAttach.py
+++ b/lldb/test/API/functionalities/reproducers/attach/TestReproducerAttach.py
@@ -19,7 +19,6 @@ class ReproducerAttachTestCase(TestBase):
@skipIfWindows
@skipIfRemote
@skipIfiOSSimulator
- @skipIfReproducer
def test_reproducer_attach(self):
"""Test thread creation after process attach."""
exe = '%s_%d' % (self.testMethodName, os.getpid())
diff --git a/lldb/test/API/functionalities/reproducers/fs-case-sensitivity/TestReproducerFSCaseSensitivity.py b/lldb/test/API/functionalities/reproducers/fs-case-sensitivity/TestReproducerFSCaseSensitivity.py
index c4f8329675537..e6bcd4418bb84 100644
--- a/lldb/test/API/functionalities/reproducers/fs-case-sensitivity/TestReproducerFSCaseSensitivity.py
+++ b/lldb/test/API/functionalities/reproducers/fs-case-sensitivity/TestReproducerFSCaseSensitivity.py
@@ -19,7 +19,6 @@ class ReproducerFileSystemSensitivityTestCase(TestBase):
@skipIfWindows
@skipIfRemote
@skipIfiOSSimulator
- @skipIfReproducer
def test_reproducer_attach(self):
# The reproducer output path. Note that this is on purpose a lower-case
# file name. See the case-sensitivity check below.
diff --git a/lldb/test/API/functionalities/signal/TestSendSignal.py b/lldb/test/API/functionalities/signal/TestSendSignal.py
index 555338050081b..f1ccc6d024fb3 100644
--- a/lldb/test/API/functionalities/signal/TestSendSignal.py
+++ b/lldb/test/API/functionalities/signal/TestSendSignal.py
@@ -20,7 +20,6 @@ def setUp(self):
@expectedFailureNetBSD(bugnumber='llvm.org/pr43959')
@skipIfWindows # Windows does not support signals
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_with_run_command(self):
"""Test that lldb command 'process signal SIGUSR1' sends a signal to the inferior process."""
self.build()
diff --git a/lldb/test/API/functionalities/step_scripted/TestStepScripted.py b/lldb/test/API/functionalities/step_scripted/TestStepScripted.py
index de91105e3f617..419e46f05a254 100644
--- a/lldb/test/API/functionalities/step_scripted/TestStepScripted.py
+++ b/lldb/test/API/functionalities/step_scripted/TestStepScripted.py
@@ -7,7 +7,6 @@
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
- at skipIfReproducer # FIXME: Unexpected packet during (active) replay
class StepScriptedTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
diff --git a/lldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py b/lldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py
index 97bf151b60a74..63b11f9e8fe1e 100644
--- a/lldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py
+++ b/lldb/test/API/functionalities/thread/exit_during_expression/TestExitDuringExpression.py
@@ -45,7 +45,6 @@ def setUp(self):
self.main_source_file = lldb.SBFileSpec("main.c")
self.build()
- @skipIfReproducer # Timeouts are not currently modeled.
def exiting_expression_test(self, before_one_thread_timeout , unwind):
"""function_to_call sleeps for g_timeout microseconds, then calls pthread_exit.
This test calls function_to_call with an overall timeout of 500
diff --git a/lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py b/lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
index 9f0d562e8afcf..724a4236a7c53 100644
--- a/lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
+++ b/lldb/test/API/iohandler/resize/TestIOHandlerResizeNoEditline.py
@@ -8,7 +8,6 @@ class TestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
@no_debug_info_test
- @skipIfReproducer
@skipIfWindows
def test_resize_no_editline(self):
""" Tests terminal resizing if the editline isn't used. """
diff --git a/lldb/test/API/lang/c/modules/TestCModules.py b/lldb/test/API/lang/c/modules/TestCModules.py
index c7f0781ecb6e5..7c85f613eca59 100644
--- a/lldb/test/API/lang/c/modules/TestCModules.py
+++ b/lldb/test/API/lang/c/modules/TestCModules.py
@@ -44,8 +44,6 @@ def test_expr(self):
# Enable logging of the imported AST.
log_file = self.getBuildArtifact("lldb-ast-log.txt")
- if configuration.is_reproducer_replay():
- log_file = self.getReproducerRemappedPath(log_file)
self.runCmd("log enable lldb ast -f '%s'" % log_file)
self.expect(
diff --git a/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py b/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
index c48ecfe97b485..3600de758ff3a 100644
--- a/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
+++ b/lldb/test/API/lang/cpp/accelerator-table/TestCPPAccelerator.py
@@ -15,8 +15,6 @@ def test(self):
self.build()
logfile = self.getBuildArtifact('dwarf.log')
- if configuration.is_reproducer_replay():
- logfile = self.getReproducerRemappedPath(logfile)
self.expect('log enable dwarf lookups -f' + logfile)
target, process, thread, bkpt = lldbutil.run_to_source_breakpoint(
diff --git a/lldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py b/lldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
index ba3215d67254b..ac2b3b0171af6 100644
--- a/lldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
+++ b/lldb/test/API/lang/cpp/member-and-local-vars-with-same-name/TestMembersAndLocalsWithSameName.py
@@ -266,14 +266,10 @@ def _test_globals(self):
def enable_expression_log(self):
log_file = self.getBuildArtifact("expr.log")
- if configuration.is_reproducer_replay():
- log_file = self.getReproducerRemappedPath(log_file)
self.runCmd("log enable -f '%s' lldb expr" % (log_file))
def disable_expression_log_and_check_for_locals(self, variables):
log_file = self.getBuildArtifact("expr.log")
- if configuration.is_reproducer_replay():
- log_file = self.getReproducerRemappedPath(log_file)
self.runCmd("log disable lldb expr")
local_var_regex = re.compile(r".*__lldb_local_vars::(.*);")
matched = []
diff --git a/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py b/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
index 765bf3b2b492e..38b8cb5f0b61a 100644
--- a/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
+++ b/lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
@@ -30,19 +30,9 @@ def test_thread_local(self):
self.expect_expr("*tl_global_ptr",
result_type="int", result_value="45")
- # Create the filespec by which to locate our a.out module.
- #
- # - Use the absolute path to get the module for the current variant.
- # - Use the relative path for reproducers. The modules are never
- # orphaned because the SB objects are leaked intentionally. This
- # causes LLDB to reuse the same module for every variant, because the
- # UUID is the same for all the inferiors. FindModule below only
- # compares paths and is oblivious to the fact that the UUIDs are the
- # same.
- if configuration.is_reproducer():
- filespec = lldb.SBFileSpec('a.out', False)
- else:
- filespec = lldb.SBFileSpec(exe, False)
+ # Create the filespec by which to locate our a.out module. Use the
+ # absolute path to get the module for the current variant.
+ filespec = lldb.SBFileSpec(exe, False)
# Now see if we emit the correct error when the TLS is not yet
# initialized. Let's set a breakpoint on the first instruction
diff --git a/lldb/test/API/lang/objc/foundation/TestRuntimeTypes.py b/lldb/test/API/lang/objc/foundation/TestRuntimeTypes.py
index 0bd9fbe50a386..9115d5a0685f3 100644
--- a/lldb/test/API/lang/objc/foundation/TestRuntimeTypes.py
+++ b/lldb/test/API/lang/objc/foundation/TestRuntimeTypes.py
@@ -18,7 +18,6 @@ class RuntimeTypesTestCase(TestBase):
oslist=["macosx"],
debug_info="gmodules",
bugnumber="llvm.org/pr27862")
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_break(self):
"""Test setting objc breakpoints using '_regexp-break' and 'breakpoint set'."""
self.build()
diff --git a/lldb/test/API/lang/objc/foundation/TestSymbolTable.py b/lldb/test/API/lang/objc/foundation/TestSymbolTable.py
index 63482a52f6b75..7434258baa465 100644
--- a/lldb/test/API/lang/objc/foundation/TestSymbolTable.py
+++ b/lldb/test/API/lang/objc/foundation/TestSymbolTable.py
@@ -37,19 +37,9 @@ def test_with_python_api(self):
None, None, self.get_process_working_directory())
self.assertTrue(process, PROCESS_IS_VALID)
- # Create the filespec by which to locate our a.out module.
- #
- # - Use the absolute path to get the module for the current variant.
- # - Use the relative path for reproducers. The modules are never
- # orphaned because the SB objects are leaked intentionally. This
- # causes LLDB to reuse the same module for every variant, because the
- # UUID is the same for all the inferiors. FindModule below only
- # compares paths and is oblivious to the fact that the UUIDs are the
- # same.
- if configuration.is_reproducer():
- filespec = lldb.SBFileSpec('a.out', False)
- else:
- filespec = lldb.SBFileSpec(exe, False)
+ # Create the filespec by which to locate our a.out module. Use the
+ # absolute path to get the module for the current variant.
+ filespec = lldb.SBFileSpec(exe, False)
module = target.FindModule(filespec)
self.assertTrue(module, VALID_MODULE)
diff --git a/lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py b/lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
index 9fcd31cebf7e9..f52c73030409c 100644
--- a/lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
+++ b/lldb/test/API/lang/objc/hidden-ivars/TestHiddenIvars.py
@@ -29,7 +29,6 @@ def setUp(self):
@skipIf(
debug_info=no_match("dsym"),
bugnumber="This test requires a stripped binary and a dSYM")
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test_expr_stripped(self):
if self.getArchitecture() == 'i386':
self.skipTest("requires modern objc runtime")
@@ -37,7 +36,6 @@ def test_expr_stripped(self):
self.build()
self.expr(True)
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test_expr(self):
if self.getArchitecture() == 'i386':
self.skipTest("requires modern objc runtime")
diff --git a/lldb/test/API/lang/objc/modules-hash-mismatch/TestClangModulesHashMismatch.py b/lldb/test/API/lang/objc/modules-hash-mismatch/TestClangModulesHashMismatch.py
index 4dd8a7ad7eb17..bb5dd366b377a 100644
--- a/lldb/test/API/lang/objc/modules-hash-mismatch/TestClangModulesHashMismatch.py
+++ b/lldb/test/API/lang/objc/modules-hash-mismatch/TestClangModulesHashMismatch.py
@@ -31,8 +31,6 @@ def test_expr(self):
self.assertTrue(os.path.isdir(mod_cache), "module cache exists")
logfile = self.getBuildArtifact("host.log")
- if configuration.is_reproducer_replay():
- logfile = self.getReproducerRemappedPath(logfile)
self.runCmd("log enable -v -f %s lldb host" % logfile)
target, _, _, _ = lldbutil.run_to_source_breakpoint(
self, "break here", lldb.SBFileSpec("main.m"))
diff --git a/lldb/test/API/lang/objc/modules-update/TestClangModulesUpdate.py b/lldb/test/API/lang/objc/modules-update/TestClangModulesUpdate.py
index 593b696706783..82adfd954e89b 100644
--- a/lldb/test/API/lang/objc/modules-update/TestClangModulesUpdate.py
+++ b/lldb/test/API/lang/objc/modules-update/TestClangModulesUpdate.py
@@ -13,7 +13,6 @@ class TestClangModuleUpdate(TestBase):
mydir = TestBase.compute_mydir(__file__)
@skipIf(debug_info=no_match(["gmodules"]))
- @skipIfReproducer # VFS is a snapshot.
@skipIfDarwin # rdar://76540904
def test_expr(self):
with open(self.getBuildArtifact("module.modulemap"), "w") as f:
diff --git a/lldb/test/API/lang/objc/modules/TestObjCModules.py b/lldb/test/API/lang/objc/modules/TestObjCModules.py
index e80705f4ebce6..072b306c191af 100644
--- a/lldb/test/API/lang/objc/modules/TestObjCModules.py
+++ b/lldb/test/API/lang/objc/modules/TestObjCModules.py
@@ -21,7 +21,6 @@ def setUp(self):
self.line = line_number('main.m', '// Set breakpoint 0 here.')
@skipIf(macos_version=["<", "10.12"])
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_expr(self):
self.build()
exe = self.getBuildArtifact("a.out")
diff --git a/lldb/test/API/lang/objc/print-obj/TestPrintObj.py b/lldb/test/API/lang/objc/print-obj/TestPrintObj.py
index d46bd01f5fd33..6e32a6711016f 100644
--- a/lldb/test/API/lang/objc/print-obj/TestPrintObj.py
+++ b/lldb/test/API/lang/objc/print-obj/TestPrintObj.py
@@ -23,7 +23,6 @@ def setUp(self):
# Find the line numbers to break at.
self.line = line_number(self.source, '// Set a breakpoint here.')
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_print_obj(self):
"""
Test "print object" where another thread blocks the print object from making progress.
diff --git a/lldb/test/API/lit.cfg.py b/lldb/test/API/lit.cfg.py
index 9f63dc144a07e..44d5028717b28 100644
--- a/lldb/test/API/lit.cfg.py
+++ b/lldb/test/API/lit.cfg.py
@@ -129,18 +129,6 @@ def delete_module_cache(path):
lit_config.warning("unable to inject shared library path on '{}'".format(
platform.system()))
-# Support running the test suite under the lldb-repro wrapper. This makes it
-# possible to capture a test suite run and then rerun all the test from the
-# just captured reproducer.
-lldb_repro_mode = lit_config.params.get('lldb-run-with-repro', None)
-if lldb_repro_mode:
- lit_config.note("Running API tests in {} mode.".format(lldb_repro_mode))
- mkdir_p(config.lldb_reproducer_directory)
- if lldb_repro_mode == 'capture':
- config.available_features.add('lldb-repro-capture')
- elif lldb_repro_mode == 'replay':
- config.available_features.add('lldb-repro-replay')
-
lldb_use_simulator = lit_config.params.get('lldb-run-with-simulator', None)
if lldb_use_simulator:
if lldb_use_simulator == "ios":
diff --git a/lldb/test/API/lit.site.cfg.py.in b/lldb/test/API/lit.site.cfg.py.in
index 49ea94aacd119..82cde5c252f77 100644
--- a/lldb/test/API/lit.site.cfg.py.in
+++ b/lldb/test/API/lit.site.cfg.py.in
@@ -18,7 +18,6 @@ config.shared_libs = @LLVM_ENABLE_SHARED_LIBS@
config.llvm_use_sanitizer = "@LLVM_USE_SANITIZER@"
config.target_triple = "@TARGET_TRIPLE@"
config.lldb_build_directory = "@LLDB_TEST_BUILD_DIRECTORY@"
-config.lldb_reproducer_directory = os.path.join("@LLDB_TEST_BUILD_DIRECTORY@", "reproducers")
config.python_executable = "@Python3_EXECUTABLE@"
config.dotest_args_str = "@LLDB_DOTEST_ARGS@"
config.lldb_enable_python = @LLDB_ENABLE_PYTHON@
diff --git a/lldb/test/API/lldbtest.py b/lldb/test/API/lldbtest.py
index a03390ee38787..847f9535d22c5 100644
--- a/lldb/test/API/lldbtest.py
+++ b/lldb/test/API/lldbtest.py
@@ -55,15 +55,6 @@ def execute(self, test, litConfig):
# python exe as the first parameter of the command.
cmd = [executable] + self.dotest_cmd + [testPath, '-p', testFile]
- if 'lldb-repro-capture' in test.config.available_features or \
- 'lldb-repro-replay' in test.config.available_features:
- reproducer_path = os.path.join(
- test.config.lldb_reproducer_directory, testFile)
- if 'lldb-repro-capture' in test.config.available_features:
- cmd.extend(['--capture-path', reproducer_path])
- else:
- cmd.extend(['--replay-path', reproducer_path])
-
timeoutInfo = None
try:
out, err, exitCode = lit.util.executeCommand(
diff --git a/lldb/test/API/macosx/dyld-trie-symbols/TestDyldTrieSymbols.py b/lldb/test/API/macosx/dyld-trie-symbols/TestDyldTrieSymbols.py
index d4073a9ed02d9..3455f21392dc4 100644
--- a/lldb/test/API/macosx/dyld-trie-symbols/TestDyldTrieSymbols.py
+++ b/lldb/test/API/macosx/dyld-trie-symbols/TestDyldTrieSymbols.py
@@ -90,23 +90,20 @@ def test_dyld_trie_symbols(self):
syms_ctx = stripped_target.FindSymbols("SourceBase")
self.assertEqual(syms_ctx.GetSize(), 2)
- # The next part if not deterministic and potentially causes replay to
- # fail when the order is
diff erent during capture and replay.
- if not configuration.is_reproducer():
- sym1 = syms_ctx.GetContextAtIndex(0).GetSymbol()
- sym2 = syms_ctx.GetContextAtIndex(1).GetSymbol()
-
- # one of these should be a lldb.eSymbolTypeObjCClass, the other
- # should be lldb.eSymbolTypeObjCMetaClass.
- if sym1.GetType() == lldb.eSymbolTypeObjCMetaClass:
- self.assertEqual(sym2.GetType(), lldb.eSymbolTypeObjCClass)
+ sym1 = syms_ctx.GetContextAtIndex(0).GetSymbol()
+ sym2 = syms_ctx.GetContextAtIndex(1).GetSymbol()
+
+ # one of these should be a lldb.eSymbolTypeObjCClass, the other
+ # should be lldb.eSymbolTypeObjCMetaClass.
+ if sym1.GetType() == lldb.eSymbolTypeObjCMetaClass:
+ self.assertEqual(sym2.GetType(), lldb.eSymbolTypeObjCClass)
+ else:
+ if sym1.GetType() == lldb.eSymbolTypeObjCClass:
+ self.assertEqual(sym2.GetType(), lldb.eSymbolTypeObjCMetaClass)
else:
- if sym1.GetType() == lldb.eSymbolTypeObjCClass:
- self.assertEqual(sym2.GetType(), lldb.eSymbolTypeObjCMetaClass)
- else:
- self.assertTrue(sym1.GetType() == lldb.eSymbolTypeObjCMetaClass or sym1.GetType() == lldb.eSymbolTypeObjCClass)
-
- syms_ctx = stripped_target.FindSymbols("SourceDerived._derivedValue")
- self.assertEqual(syms_ctx.GetSize(), 1)
- sym = syms_ctx.GetContextAtIndex(0).GetSymbol()
- self.assertEqual(sym.GetType(), lldb.eSymbolTypeObjCIVar)
+ self.assertTrue(sym1.GetType() == lldb.eSymbolTypeObjCMetaClass or sym1.GetType() == lldb.eSymbolTypeObjCClass)
+
+ syms_ctx = stripped_target.FindSymbols("SourceDerived._derivedValue")
+ self.assertEqual(syms_ctx.GetSize(), 1)
+ sym = syms_ctx.GetContextAtIndex(0).GetSymbol()
+ self.assertEqual(sym.GetType(), lldb.eSymbolTypeObjCIVar)
diff --git a/lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py b/lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
index e12a638f9c03f..76f7ee85f5013 100644
--- a/lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
+++ b/lldb/test/API/macosx/find-dsym/bundle-with-dot-in-filename/TestBundleWithDotInFilename.py
@@ -32,7 +32,6 @@ def tearDown(self):
@skipUnlessDarwin
# This test is explicitly a dSYM test, it doesn't need to run for any other config.
@skipIf(debug_info=no_match(["dsym"]))
- @skipIfReproducer # File synchronization is not supported during replay.
def test_attach_and_check_dsyms(self):
"""Test attach to binary, see if the bundle dSYM is found"""
exe = self.getBuildArtifact(exe_name)
diff --git a/lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py b/lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
index 358a4b70d2f5e..bb32a90e09814 100644
--- a/lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
+++ b/lldb/test/API/macosx/find-dsym/deep-bundle/TestDeepBundle.py
@@ -31,7 +31,6 @@ def tearDown(self):
@skipUnlessDarwin
# This test is explicitly a dSYM test, it doesn't need to run for any other config.
@skipIf(debug_info=no_match(["dsym"]))
- @skipIfReproducer # File synchronization is not supported during replay.
def test_attach_and_check_dsyms(self):
"""Test attach to binary, see if the framework dSYM is found"""
exe = self.getBuildArtifact(exe_name)
diff --git a/lldb/test/API/macosx/function-starts/TestFunctionStarts.py b/lldb/test/API/macosx/function-starts/TestFunctionStarts.py
index e8f540b5a5fc7..5ef06f4ab568f 100644
--- a/lldb/test/API/macosx/function-starts/TestFunctionStarts.py
+++ b/lldb/test/API/macosx/function-starts/TestFunctionStarts.py
@@ -19,7 +19,6 @@ class FunctionStartsTestCase(TestBase):
@skipIfRemote
@skipUnlessDarwin
- @skipIfReproducer # File synchronization is not supported during replay.
def test_function_starts_binary(self):
"""Test that we make synthetic symbols when we have the binary."""
self.build(dictionary={'CODESIGN': ''}) # Binary is getting stripped later.
@@ -27,7 +26,6 @@ def test_function_starts_binary(self):
@skipIfRemote
@skipUnlessDarwin
- @skipIfReproducer # File synchronization is not supported during replay.
def test_function_starts_no_binary(self):
"""Test that we make synthetic symbols when we don't have the binary"""
self.build(dictionary={'CODESIGN': ''}) # Binary is getting stripped later.
diff --git a/lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py b/lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
index 534be5594051c..4114f4c941687 100644
--- a/lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
+++ b/lldb/test/API/macosx/macCatalyst/TestMacCatalyst.py
@@ -13,7 +13,6 @@ class TestMacCatalyst(TestBase):
@skipIf(macos_version=["<", "10.15"])
@skipUnlessDarwin
@skipIfDarwinEmbedded
- @skipIfReproducer # This is hitting https://bugs.python.org/issue22393
def test_macabi(self):
"""Test the x86_64-apple-ios-macabi target linked against a macos dylib"""
self.build()
diff --git a/lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py b/lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
index d02707b581efd..989bf6d6e3301 100644
--- a/lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
+++ b/lldb/test/API/macosx/macCatalystAppMacOSFramework/TestMacCatalystAppWithMacOSFramework.py
@@ -15,7 +15,6 @@ class TestMacCatalystAppWithMacOSFramework(TestBase):
@skipIfDarwinEmbedded
# There is a Clang driver change missing on llvm.org.
@expectedFailureAll(bugnumber="rdar://problem/54986190>")
- @skipIfReproducer # This is hitting https://bugs.python.org/issue22393
def test(self):
"""Test the x86_64-apple-ios-macabi target linked against a macos dylib"""
self.build()
diff --git a/lldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py b/lldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py
index 1215570a1290f..4893c137c3227 100644
--- a/lldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py
+++ b/lldb/test/API/macosx/posix_spawn/TestLaunchProcessPosixSpawn.py
@@ -42,7 +42,6 @@ def run_arch(self, exe, arch):
@skipUnlessDarwin
@skipIfDarwinEmbedded
@skipTestIfFn(no_haswell)
- @skipIfReproducer # Test relies on inferior output
def test_haswell(self):
self.build()
exe = self.getBuildArtifact("fat.out")
@@ -52,7 +51,6 @@ def test_haswell(self):
@skipUnlessDarwin
@skipIfDarwinEmbedded
@skipTestIfFn(no_apple_silicon)
- @skipIfReproducer # Test relies on inferior output
def test_apple_silicon(self):
self.build()
exe = self.getBuildArtifact("fat.out")
diff --git a/lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py b/lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py
index cfb6e24726532..95d73de9d6577 100644
--- a/lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py
+++ b/lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py
@@ -23,7 +23,6 @@ class TestDetachVrsProfile(TestBase):
@skipUnlessDarwin
@skipIfOutOfTreeDebugserver
- @skipIfReproducer
def test_profile_and_detach(self):
"""There can be many tests in a test case - describe this test here."""
self.build()
diff --git a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
index 301919dea3b2a..4b925ad5f77d5 100644
--- a/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
+++ b/lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
@@ -6,7 +6,6 @@
import unittest2
- at skipIfReproducer
class TestSimulatorPlatformLaunching(TestBase):
mydir = TestBase.compute_mydir(__file__)
diff --git a/lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py b/lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
index f01a9fdc61c56..98e6aff5b4023 100644
--- a/lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
+++ b/lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
@@ -14,7 +14,6 @@ class TestInterruptThreadNames(TestBase):
@skipUnlessDarwin
@add_test_categories(['pyapi'])
- @skipIfReproducer # While loop with non fixed number of iterations.
def test_with_python_api(self):
"""Test that we get thread names when interrupting a process."""
self.build()
diff --git a/lldb/test/API/macosx/version_zero/TestGetVersionZeroVersion.py b/lldb/test/API/macosx/version_zero/TestGetVersionZeroVersion.py
index 5f9772b8fb20e..af69425db683f 100644
--- a/lldb/test/API/macosx/version_zero/TestGetVersionZeroVersion.py
+++ b/lldb/test/API/macosx/version_zero/TestGetVersionZeroVersion.py
@@ -19,7 +19,6 @@ class TestGetVersionForZero(TestBase):
# each debug info format.
NO_DEBUG_INFO_TESTCASE = True
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test_get_version_zero(self):
"""Read in a library with a version of 0.0.0. Test SBModule::GetVersion"""
self.yaml2obj("libDylib.dylib.yaml", self.getBuildArtifact("libDylib.dylib"))
diff --git a/lldb/test/API/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py b/lldb/test/API/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
index d69e13f1009c6..cbfc5667a0152 100644
--- a/lldb/test/API/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
+++ b/lldb/test/API/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
@@ -104,7 +104,6 @@ def test_SBCompileUnit(self):
import sb_compileunit
sb_compileunit.fuzz_obj(obj)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_SBDebugger(self):
obj = lldb.SBDebugger()
if self.TraceOn():
@@ -165,7 +164,6 @@ def test_SBFunction(self):
import sb_function
sb_function.fuzz_obj(obj)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_SBFile(self):
sbf = lldb.SBFile()
self.assertFalse(sbf.IsValid())
diff --git a/lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py b/lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py
index d6e0b32f133ea..3dbb090ffe5c3 100644
--- a/lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py
+++ b/lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py
@@ -18,7 +18,6 @@ class DisassembleRawDataTestCase(TestBase):
@no_debug_info_test
@skipIfRemote
- @skipIfReproducer # GetInstructions is not instrumented.
def test_disassemble_raw_data(self):
"""Test disassembling raw bytes with the API."""
# Create a target from the debugger.
diff --git a/lldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py b/lldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py
index 9260b720a83f4..27bd64c080472 100644
--- a/lldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py
+++ b/lldb/test/API/python_api/disassemble-raw-data/TestDisassemble_VST1_64.py
@@ -19,7 +19,6 @@ class Disassemble_VST1_64(TestBase):
@no_debug_info_test
@skipIfLLVMTargetMissing("ARM")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_disassemble_invalid_vst_1_64_raw_data(self):
"""Test disassembling invalid vst1.64 raw bytes with the API."""
# Create a target from the debugger.
diff --git a/lldb/test/API/python_api/file_handle/TestFileHandle.py b/lldb/test/API/python_api/file_handle/TestFileHandle.py
index 286b3ee6d7ee4..142fce28309cc 100644
--- a/lldb/test/API/python_api/file_handle/TestFileHandle.py
+++ b/lldb/test/API/python_api/file_handle/TestFileHandle.py
@@ -119,7 +119,6 @@ def handleCmd(self, cmd, check=True, collect_result=True):
return ret.GetOutput()
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_legacy_file_out_script(self):
with open(self.out_filename, 'w') as f:
self.dbg.SetOutputFileHandle(f, False)
@@ -134,7 +133,6 @@ def test_legacy_file_out_script(self):
self.assertEqual(readStrippedLines(f), ['2', 'FOO'])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_legacy_file_out(self):
with open(self.out_filename, 'w') as f:
self.dbg.SetOutputFileHandle(f, False)
@@ -142,7 +140,6 @@ def test_legacy_file_out(self):
with open(self.out_filename, 'r') as f:
self.assertIn('deadbeef', f.read())
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_legacy_file_err_with_get(self):
with open(self.out_filename, 'w') as f:
self.dbg.SetErrorFileHandle(f, False)
@@ -156,7 +153,6 @@ def test_legacy_file_err_with_get(self):
self.assertTrue(re.search(r'FOOBAR', errors))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_legacy_file_err(self):
with open(self.out_filename, 'w') as f:
self.dbg.SetErrorFileHandle(f, False)
@@ -165,7 +161,6 @@ def test_legacy_file_err(self):
self.assertIn("is not a valid command", f.read())
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_legacy_file_error(self):
with open(self.out_filename, 'w') as f:
self.dbg.SetErrorFileHandle(f, False)
@@ -174,7 +169,6 @@ def test_legacy_file_error(self):
errors = f.read()
self.assertTrue(re.search(r'error:.*lolwut', errors))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_type_errors(self):
sbf = lldb.SBFile()
self.assertRaises(Exception, sbf.Write, None)
@@ -184,7 +178,6 @@ def test_sbfile_type_errors(self):
self.assertRaises(Exception, sbf.Read, u"ham sandwich")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_fileno(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f.fileno(), "w", False)
@@ -198,7 +191,6 @@ def test_sbfile_write_fileno(self):
self.assertEqual(readStrippedLines(f), ['FOO', 'BAR'])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f)
@@ -211,7 +203,6 @@ def test_sbfile_write(self):
self.assertEqual(f.read().strip(), 'FOO')
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_read_fileno(self):
with open(self.out_filename, 'w') as f:
f.write('FOO')
@@ -224,7 +215,6 @@ def test_sbfile_read_fileno(self):
self.assertEqual(buffer[:n], b'FOO')
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_read(self):
with open(self.out_filename, 'w') as f:
f.write('foo')
@@ -239,7 +229,6 @@ def test_sbfile_read(self):
self.assertTrue(f.closed)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_fileno_out(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f.fileno(), "w", False)
@@ -253,7 +242,6 @@ def test_fileno_out(self):
self.assertEqual(readStrippedLines(f), ['3', 'quux'])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_fileno_help(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f.fileno(), "w", False)
@@ -264,7 +252,6 @@ def test_fileno_help(self):
self.assertTrue(re.search(r'Show a list of all debugger commands', f.read()))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_help(self):
with open(self.out_filename, 'w') as f:
status = self.dbg.SetOutputFile(lldb.SBFile(f))
@@ -274,7 +261,6 @@ def test_help(self):
self.assertIn('Show a list of all debugger commands', f.read())
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_immediate(self):
with open(self.out_filename, 'w') as f:
ret = lldb.SBCommandReturnObject()
@@ -291,7 +277,6 @@ def test_immediate(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_immediate_string(self):
f = io.StringIO()
ret = lldb.SBCommandReturnObject()
@@ -307,7 +292,6 @@ def test_immediate_string(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_immediate_sbfile_string(self):
f = io.StringIO()
ret = lldb.SBCommandReturnObject()
@@ -321,7 +305,6 @@ def test_immediate_sbfile_string(self):
self.assertTrue(re.search(r'Show a list of all debugger commands', output))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_fileno_inout(self):
with open(self.in_filename, 'w') as f:
f.write("help help\n")
@@ -344,7 +327,6 @@ def test_fileno_inout(self):
self.assertTrue(re.search(r'Show a list of all debugger commands', f.read()))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_inout(self):
with open(self.in_filename, 'w') as f:
f.write("help help\n")
@@ -362,7 +344,6 @@ def test_inout(self):
self.assertIn('Show a list of all debugger commands', output)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_binary_inout(self):
with open(self.in_filename, 'w') as f:
f.write("help help\n")
@@ -381,7 +362,6 @@ def test_binary_inout(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_string_inout(self):
inf = io.StringIO("help help\np/x ~0\n")
outf = io.StringIO()
@@ -398,7 +378,6 @@ def test_string_inout(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_bytes_inout(self):
inf = io.BytesIO(b"help help\nhelp b\n")
outf = io.BytesIO()
@@ -414,7 +393,6 @@ def test_bytes_inout(self):
self.assertIn(b'Set a breakpoint', output)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_fileno_error(self):
with open(self.out_filename, 'w') as f:
@@ -432,7 +410,6 @@ def test_fileno_error(self):
self.assertTrue(re.search(r'zork', errors))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_replace_stdout(self):
f = io.StringIO()
with replace_stdout(f):
@@ -442,7 +419,6 @@ def test_replace_stdout(self):
self.assertEqual(sys.stdout, f)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_replace_stdout_with_nonfile(self):
f = io.StringIO()
with replace_stdout(f):
@@ -457,7 +433,6 @@ class Nothing():
self.assertEqual(f.getvalue(), "FOO")
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_borrowed(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile.Create(f, borrow=True)
@@ -473,7 +448,6 @@ def test_sbfile_write_borrowed(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_forced(self):
with open(self.out_filename, 'w') as f:
written = MutableBool(False)
@@ -494,7 +468,6 @@ def mywrite(x):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_forced_borrowed(self):
with open(self.out_filename, 'w') as f:
written = MutableBool(False)
@@ -515,7 +488,6 @@ def mywrite(x):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_string(self):
f = io.StringIO()
sbf = lldb.SBFile(f)
@@ -528,7 +500,6 @@ def test_sbfile_write_string(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_string_out(self):
f = io.StringIO()
status = self.dbg.SetOutputFile(f)
@@ -538,7 +509,6 @@ def test_string_out(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_string_error(self):
f = io.StringIO()
status = self.dbg.SetErrorFile(f)
@@ -549,7 +519,6 @@ def test_string_error(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_write_bytes(self):
f = io.BytesIO()
sbf = lldb.SBFile(f)
@@ -561,7 +530,6 @@ def test_sbfile_write_bytes(self):
self.assertTrue(f.closed)
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_read_string(self):
f = io.StringIO('zork')
sbf = lldb.SBFile(f)
@@ -572,7 +540,6 @@ def test_sbfile_read_string(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_read_string_one_byte(self):
f = io.StringIO('z')
sbf = lldb.SBFile(f)
@@ -584,7 +551,6 @@ def test_sbfile_read_string_one_byte(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_read_bytes(self):
f = io.BytesIO(b'zork')
sbf = lldb.SBFile(f)
@@ -595,7 +561,6 @@ def test_sbfile_read_bytes(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_out(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f)
@@ -607,7 +572,6 @@ def test_sbfile_out(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_file_out(self):
with open(self.out_filename, 'w') as f:
status = self.dbg.SetOutputFile(f)
@@ -617,7 +581,6 @@ def test_file_out(self):
self.assertEqual(f.read().strip(), '4')
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbfile_error(self):
with open(self.out_filename, 'w') as f:
sbf = lldb.SBFile(f)
@@ -629,7 +592,6 @@ def test_sbfile_error(self):
self.assertTrue(re.search(r'error:.*lolwut', errors))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_file_error(self):
with open(self.out_filename, 'w') as f:
status = self.dbg.SetErrorFile(f)
@@ -640,7 +602,6 @@ def test_file_error(self):
self.assertTrue(re.search(r'error:.*lolwut', errors))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_exceptions(self):
self.assertRaises(Exception, lldb.SBFile, None)
self.assertRaises(Exception, lldb.SBFile, "ham sandwich")
@@ -659,7 +620,6 @@ def test_exceptions(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_exceptions_logged(self):
messages = list()
self.dbg.SetLoggingCallback(messages.append)
@@ -670,7 +630,6 @@ def test_exceptions_logged(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_flush(self):
flushed = MutableBool(False)
closed = MutableBool(False)
@@ -699,7 +658,6 @@ def test_flush(self):
self.assertFalse(f.closed)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_fileno_flush(self):
with open(self.out_filename, 'w') as f:
f.write("foo")
@@ -720,7 +678,6 @@ def test_fileno_flush(self):
self.assertEqual(f.read(), 'foobar')
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_close(self):
with open(self.out_filename, 'w') as f:
status = self.dbg.SetOutputFile(f)
@@ -739,7 +696,6 @@ def test_close(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_stdout(self):
f = io.StringIO()
status = self.dbg.SetOutputFile(f)
@@ -748,7 +704,6 @@ def test_stdout(self):
self.assertEqual(f.getvalue().strip().split(), ["foobar", "7"])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_stdout_file(self):
with open(self.out_filename, 'w') as f:
status = self.dbg.SetOutputFile(f)
@@ -764,7 +719,6 @@ def test_stdout_file(self):
@skipIf(py_version=['<', (3,)])
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_identity(self):
f = io.StringIO()
@@ -819,7 +773,6 @@ def test_identity(self):
self.assertEqual("foobar", f.read().strip())
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_back_and_forth(self):
with open(self.out_filename, 'w') as f:
# at each step here we're borrowing the file, so we have to keep
@@ -838,7 +791,6 @@ def i(sbf):
self.assertEqual(list(range(10)), list(map(int, f.read().strip().split())))
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_set_filehandle_none(self):
self.assertRaises(Exception, self.dbg.SetOutputFile, None)
self.assertRaises(Exception, self.dbg.SetOutputFile, "ham sandwich")
@@ -876,7 +828,6 @@ def test_set_filehandle_none(self):
self.assertEqual(sbf.GetFile().fileno(), 0)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def test_sbstream(self):
with open(self.out_filename, 'w') as f:
diff --git a/lldb/test/API/python_api/hello_world/TestHelloWorld.py b/lldb/test/API/python_api/hello_world/TestHelloWorld.py
index 0f616f44a7214..dd9245db62702 100644
--- a/lldb/test/API/python_api/hello_world/TestHelloWorld.py
+++ b/lldb/test/API/python_api/hello_world/TestHelloWorld.py
@@ -72,7 +72,6 @@ def test_with_process_launch_api(self):
self.assertEqual(breakpoint.GetHitCount(), 1, BREAKPOINT_HIT_ONCE)
@skipIfiOSSimulator
- @skipIfReproducer # File synchronization is not supported during replay.
def test_with_attach_to_process_with_id_api(self):
"""Create target, spawn a process, and attach to it with process id."""
exe = '%s_%d'%(self.testMethodName, os.getpid())
@@ -104,7 +103,6 @@ def test_with_attach_to_process_with_id_api(self):
@skipIfiOSSimulator
@skipIfAsan # FIXME: Hangs indefinitely.
- @skipIfReproducer # FIXME: Unexpected packet during (active) replay
def test_with_attach_to_process_with_name_api(self):
"""Create target, spawn a process, and attach to it with process name."""
exe = '%s_%d'%(self.testMethodName, os.getpid())
diff --git a/lldb/test/API/python_api/interpreter/TestRunCommandInterpreterAPI.py b/lldb/test/API/python_api/interpreter/TestRunCommandInterpreterAPI.py
index 2db7fdd661337..ea3350f602ecb 100644
--- a/lldb/test/API/python_api/interpreter/TestRunCommandInterpreterAPI.py
+++ b/lldb/test/API/python_api/interpreter/TestRunCommandInterpreterAPI.py
@@ -10,7 +10,6 @@ class CommandRunInterpreterLegacyAPICase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
mydir = TestBase.compute_mydir(__file__)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def setUp(self):
TestBase.setUp(self)
@@ -47,7 +46,6 @@ class CommandRunInterpreterAPICase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
mydir = TestBase.compute_mydir(__file__)
- @skipIfReproducer # lldb::FileSP used in typemap cannot be instrumented.
def setUp(self):
TestBase.setUp(self)
diff --git a/lldb/test/API/python_api/process/TestProcessAPI.py b/lldb/test/API/python_api/process/TestProcessAPI.py
index 790d794890d60..bfa1a22b9184d 100644
--- a/lldb/test/API/python_api/process/TestProcessAPI.py
+++ b/lldb/test/API/python_api/process/TestProcessAPI.py
@@ -23,7 +23,6 @@ def setUp(self):
"main.cpp",
"// Set break point at this line and check variable 'my_char'.")
- @skipIfReproducer # SBProcess::ReadMemory is not instrumented.
def test_read_memory(self):
"""Test Python SBProcess.ReadMemory() API."""
self.build()
@@ -121,7 +120,6 @@ def test_read_memory(self):
self.fail(
"Result from SBProcess.ReadUnsignedFromMemory() does not match our expected output")
- @skipIfReproducer # SBProcess::WriteMemory is not instrumented.
def test_write_memory(self):
"""Test Python SBProcess.WriteMemory() API."""
self.build()
@@ -180,7 +178,6 @@ def test_write_memory(self):
exe=False,
startstr=b'a')
- @skipIfReproducer # SBProcess::WriteMemory is not instrumented.
def test_access_my_int(self):
"""Test access 'my_int' using Python SBProcess.GetByteOrder() and other APIs."""
self.build()
diff --git a/lldb/test/API/python_api/process/io/TestProcessIO.py b/lldb/test/API/python_api/process/io/TestProcessIO.py
index 312cc28aaa0ec..aae1dfe0be83f 100644
--- a/lldb/test/API/python_api/process/io/TestProcessIO.py
+++ b/lldb/test/API/python_api/process/io/TestProcessIO.py
@@ -15,7 +15,6 @@ class ProcessIOTestCase(TestBase):
mydir = TestBase.compute_mydir(__file__)
NO_DEBUG_INFO_TESTCASE = True
- @skipIfReproducer
def setup_test(self):
# Get the full path to our executable to be debugged.
self.exe = self.getBuildArtifact("process_io")
diff --git a/lldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py b/lldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py
index 0e5aa0ba97ba6..484baf5d75d1d 100644
--- a/lldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py
+++ b/lldb/test/API/python_api/process/read-mem-cstring/TestReadMemCString.py
@@ -13,7 +13,6 @@ class TestReadMemCString(TestBase):
mydir = TestBase.compute_mydir(__file__)
NO_DEBUG_INFO_TESTCASE = True
- @skipIfReproducer # SBProcess::ReadCStringFromMemory is not instrumented.
def test_read_memory_c_string(self):
"""Test corner case behavior of SBProcess::ReadCStringFromMemory"""
self.build()
diff --git a/lldb/test/API/python_api/sbdata/TestSBData.py b/lldb/test/API/python_api/sbdata/TestSBData.py
index 258ce519c880a..b845c0abd734d 100644
--- a/lldb/test/API/python_api/sbdata/TestSBData.py
+++ b/lldb/test/API/python_api/sbdata/TestSBData.py
@@ -20,7 +20,6 @@ def setUp(self):
# Find the line number to break on inside main.cpp.
self.line = line_number('main.cpp', '// set breakpoint here')
- @skipIfReproducer # SBData::SetData is not instrumented.
def test_byte_order_and_address_byte_size(self):
"""Test the SBData::SetData() to ensure the byte order and address
byte size are obeyed"""
@@ -40,7 +39,6 @@ def test_byte_order_and_address_byte_size(self):
addr = data.GetAddress(error, 0)
self.assertEqual(addr, 0x8877665544332211);
- @skipIfReproducer # SBData::SetData is not instrumented.
def test_with_run_command(self):
"""Test the SBData APIs."""
self.build()
diff --git a/lldb/test/API/python_api/symbol-context/TestSymbolContext.py b/lldb/test/API/python_api/symbol-context/TestSymbolContext.py
index c02e1bf8768e6..69abb8fa4863f 100644
--- a/lldb/test/API/python_api/symbol-context/TestSymbolContext.py
+++ b/lldb/test/API/python_api/symbol-context/TestSymbolContext.py
@@ -22,7 +22,6 @@ def setUp(self):
'main.c', '// Find the line number of function "c" here.')
@expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24778")
- @skipIfReproducer # FIXME: Unexpected packet during (passive) replay
def test(self):
"""Exercise SBSymbolContext API extensively."""
self.build()
diff --git a/lldb/test/API/python_api/target/TestTargetAPI.py b/lldb/test/API/python_api/target/TestTargetAPI.py
index c53f6002c3c2c..29e368224e813 100644
--- a/lldb/test/API/python_api/target/TestTargetAPI.py
+++ b/lldb/test/API/python_api/target/TestTargetAPI.py
@@ -112,7 +112,6 @@ def test_resolve_file_address(self):
self.assertIsNotNone(data_section2)
self.assertEqual(data_section.name, data_section2.name)
- @skipIfReproducer # SBTarget::ReadMemory is not instrumented.
def test_read_memory(self):
d = {'EXE': 'b.out'}
self.build(dictionary=d)
@@ -143,7 +142,6 @@ def test_read_memory(self):
@skipIfWindows # stdio manipulation unsupported on Windows
@skipIfRemote # stdio manipulation unsupported on remote iOS devices<rdar://problem/54581135>
- @skipIfReproducer # stdout not captured by reproducers
@skipIf(oslist=["linux"], archs=["arm", "aarch64"])
@no_debug_info_test
def test_launch_simple(self):
@@ -248,18 +246,16 @@ def find_global_variables(self, exe_name):
self.expect(my_global_var.GetValue(), exe=False,
startstr="'X'")
-
- if not configuration.is_reproducer():
- # While we are at it, let's also exercise the similar
- # SBModule.FindGlobalVariables() API.
- for m in target.module_iter():
- if os.path.normpath(m.GetFileSpec().GetDirectory()) == self.getBuildDir() and m.GetFileSpec().GetFilename() == exe_name:
- value_list = m.FindGlobalVariables(
- target, 'my_global_var_of_char_type', 3)
- self.assertEqual(value_list.GetSize(), 1)
- self.assertEqual(
- value_list.GetValueAtIndex(0).GetValue(), "'X'")
- break
+ # While we are at it, let's also exercise the similar
+ # SBModule.FindGlobalVariables() API.
+ for m in target.module_iter():
+ if os.path.normpath(m.GetFileSpec().GetDirectory()) == self.getBuildDir() and m.GetFileSpec().GetFilename() == exe_name:
+ value_list = m.FindGlobalVariables(
+ target, 'my_global_var_of_char_type', 3)
+ self.assertEqual(value_list.GetSize(), 1)
+ self.assertEqual(
+ value_list.GetValueAtIndex(0).GetValue(), "'X'")
+ break
def find_compile_units(self, exe):
"""Exercise SBTarget.FindCompileUnits() API."""
@@ -324,7 +320,6 @@ def get_description(self):
@skipIfRemote
@no_debug_info_test
- @skipIfReproducer # Inferior doesn't run during replay.
def test_launch_new_process_and_redirect_stdout(self):
"""Exercise SBTaget.Launch() API with redirected stdout."""
self.build()
diff --git a/lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py b/lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
index ec162f65e2096..3ffa5bfb67fab 100644
--- a/lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
+++ b/lldb/test/API/python_api/value/change_values/TestChangeValueAPI.py
@@ -143,14 +143,11 @@ def test_change_value(self):
thread.IsValid(),
"There should be a thread stopped due to breakpoint condition")
- # Grab the stdout and make sure we changed the real values as well.
- # This doesn't work for reproducers as the inferior doesn't run.
- if not configuration.is_reproducer():
- expected_value = "Val - 12345 Mine - 55, 98765, 55555555. Ptr - 66, 98765, 66666666"
- stdout = process.GetSTDOUT(1000)
- self.assertTrue(
- expected_value in stdout,
- "STDOUT showed changed values.")
+ expected_value = "Val - 12345 Mine - 55, 98765, 55555555. Ptr - 66, 98765, 66666666"
+ stdout = process.GetSTDOUT(1000)
+ self.assertTrue(
+ expected_value in stdout,
+ "STDOUT showed changed values.")
# Finally, change the stack pointer to 0, and we should not make it to
# our end breakpoint.
diff --git a/lldb/test/API/python_api/watchpoint/TestSetWatchpoint.py b/lldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
index f135ed6700f14..b1a41a4a709cd 100644
--- a/lldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
+++ b/lldb/test/API/python_api/watchpoint/TestSetWatchpoint.py
@@ -102,9 +102,4 @@ def test_watch_val(self):
PROCESS_EXITED)
self.dbg.DeleteTarget(target)
-
- # The next check relies on the watchpoint being destructed, which does
- # not happen during replay because objects are intentionally kept alive
- # forever.
- if not configuration.is_reproducer():
- self.assertFalse(watchpoint.IsValid())
+ self.assertFalse(watchpoint.IsValid())
diff --git a/lldb/test/API/source-manager/TestSourceManager.py b/lldb/test/API/source-manager/TestSourceManager.py
index 3ce056f2d0294..fc91d3c445b9a 100644
--- a/lldb/test/API/source-manager/TestSourceManager.py
+++ b/lldb/test/API/source-manager/TestSourceManager.py
@@ -172,7 +172,6 @@ def test_move_and_then_display_source(self):
substrs=['Hello world'])
@skipIf(oslist=["windows"], bugnumber="llvm.org/pr44431")
- @skipIfReproducer # VFS is a snapshot.
def test_modify_source_file_while_debugging(self):
"""Modify a source file while debugging the executable."""
self.build()
diff --git a/lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py b/lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
index 01942344e0e10..31fe282c7d910 100644
--- a/lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
+++ b/lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
@@ -8,7 +8,6 @@
import platform
import re
- at skipIfReproducer
class TestAppleSimulatorOSType(gdbremote_testcase.GdbRemoteTestCaseBase):
mydir = TestBase.compute_mydir(__file__)
diff --git a/lldb/test/API/types/AbstractBase.py b/lldb/test/API/types/AbstractBase.py
index 537c1826d2a43..fe304e19ca66b 100644
--- a/lldb/test/API/types/AbstractBase.py
+++ b/lldb/test/API/types/AbstractBase.py
@@ -34,14 +34,11 @@ def setUp(self):
# used for all the test cases.
self.exe_name = self.testMethodName
golden = "{}-golden-output.txt".format(self.testMethodName)
- if configuration.is_reproducer():
- self.golden_filename = self.getReproducerArtifact(golden)
- else:
- self.golden_filename = self.getBuildArtifact(golden)
+ self.golden_filename = self.getBuildArtifact(golden)
def tearDown(self):
"""Cleanup the test byproducts."""
- if os.path.exists(self.golden_filename) and not configuration.is_reproducer():
+ if os.path.exists(self.golden_filename):
os.remove(self.golden_filename)
TestBase.tearDown(self)
@@ -104,9 +101,6 @@ def process_launch_o(self):
# copy remote_path to local host
self.runCmd('platform get-file {remote} "{local}"'.format(
remote=remote_path, local=self.golden_filename))
- elif configuration.is_reproducer_replay():
- # Don't overwrite the golden file generated at capture time.
- self.runCmd('process launch')
else:
self.runCmd(
'process launch -o "{local}"'.format(local=self.golden_filename))
More information about the lldb-commits
mailing list