davide created this revision. davide added reviewers: JDevlieghere, friss, zturner, labath, jingham. Herald added a reviewer: serge-sans-paille. Herald added a project: LLVM. Herald added a subscriber: llvm-commits.
[testsuite] Convert a pexpect test to lit. Repository: rL LLVM https://reviews.llvm.org/D57840 Files: lldb/lit/Commands/command-regex-2.test lldb/lit/Commands/command-regex.test lldb/packages/Python/lldbsuite/test/functionalities/command_regex/.categories lldb/packages/Python/lldbsuite/test/functionalities/command_regex/TestCommandRegex.py lldb/packages/Python/lldbsuite/test/tools/lldb-server/TestAppleSimulatorOSType.py
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-server/TestAppleSimulatorOSType.py =================================================================== --- lldb/packages/Python/lldbsuite/test/tools/lldb-server/TestAppleSimulatorOSType.py +++ lldb/packages/Python/lldbsuite/test/tools/lldb-server/TestAppleSimulatorOSType.py @@ -15,7 +15,7 @@ def check_simulator_ostype(self, sdk, platform, arch='x86_64'): sim_devices_str = subprocess.check_output(['xcrun', 'simctl', 'list', - '-j', 'devices']) + '-j', 'devices']).decode("utf-8") sim_devices = json.loads(sim_devices_str)['devices'] # Find an available simulator for the requested platform deviceUDID = None Index: lldb/packages/Python/lldbsuite/test/functionalities/command_regex/TestCommandRegex.py =================================================================== --- lldb/packages/Python/lldbsuite/test/functionalities/command_regex/TestCommandRegex.py +++ /dev/null @@ -1,63 +0,0 @@ -""" -Test lldb 'commands regex' command which allows the user to create a regular expression command. -""" - -from __future__ import print_function - - -import os -import lldb -from lldbsuite.test.decorators import * -from lldbsuite.test.lldbtest import * -from lldbsuite.test import lldbutil - - -class CommandRegexTestCase(TestBase): - - mydir = TestBase.compute_mydir(__file__) - - @expectedFailureAll( - hostoslist=["windows"], - bugnumber="llvm.org/pr22274: need a pexpect replacement for windows") - @no_debug_info_test - def test_command_regex(self): - """Test a simple scenario of 'command regex' invocation and subsequent use.""" - import pexpect - prompt = "(lldb) " - regex_prompt = "Enter one of more sed substitution commands in the form: 's/<regex>/<subst>/'.\r\nTerminate the substitution list with an empty line.\r\n" - regex_prompt1 = "\r\n" - - child = pexpect.spawn('%s %s' % - (lldbtest_config.lldbExec, self.lldbOption)) - # Turn on logging for what the child sends back. - if self.TraceOn(): - child.logfile_read = sys.stdout - # So that the spawned lldb session gets shutdown durng teardown. - self.child = child - - # Substitute 'Help!' for 'help' using the 'commands regex' mechanism. - child.expect_exact(prompt) - child.sendline("command regex 'Help__'") - child.expect_exact(regex_prompt) - child.sendline('s/^$/help/') - child.expect_exact(regex_prompt1) - child.sendline('') - child.expect_exact(prompt) - # Help! - child.sendline('Help__') - # If we see the familiar 'help' output, the test is done. - child.expect('Debugger commands:') - # Try and incorrectly remove "Help__" using "command unalias" and - # verify we fail - child.sendline('command unalias Help__') - child.expect_exact( - "error: 'Help__' is not an alias, it is a debugger command which can be removed using the 'command delete' command") - child.expect_exact(prompt) - - # Delete the regex command using "command delete" - child.sendline('command delete Help__') - child.expect_exact(prompt) - # Verify the command was removed - child.sendline('Help__') - child.expect_exact("error: 'Help__' is not a valid command") - child.expect_exact(prompt) Index: lldb/packages/Python/lldbsuite/test/functionalities/command_regex/.categories =================================================================== --- lldb/packages/Python/lldbsuite/test/functionalities/command_regex/.categories +++ /dev/null @@ -1 +0,0 @@ -cmdline Index: lldb/lit/Commands/command-regex.test =================================================================== --- /dev/null +++ lldb/lit/Commands/command-regex.test @@ -0,0 +1,14 @@ +# Check basic functionality of command regex. +# RUN: %lldb -s %s 2>&1 | FileCheck %s + +command regex 'Help__' +# CHECK: Enter one of more sed substitution commands in the form +# We need to leave a new line after to end the regex. +s/^$/help/ + +Help__ +# CHECK: Debugger commands: + +command delete Help__ +Help__ +# CHECK: error: 'Help__' is not a valid command Index: lldb/lit/Commands/command-regex-2.test =================================================================== --- /dev/null +++ lldb/lit/Commands/command-regex-2.test @@ -0,0 +1,11 @@ +# Check that commands created with command regex cannot be unaliased +# RUN: %lldb -s %s 2>&1 | FileCheck %s + +command regex 'Help__' +# CHECK: Enter one of more sed substitution commands in the form +# We need to leave a new line after to end the regex. +s/^$/help/ + +command unalias Help__ +Help__ +# CHECK: error: 'Help__' is not an alias
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits