summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/settings
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2017-09-21 23:00:19 +0000
committerJason Molenda <jmolenda@apple.com>2017-09-21 23:00:19 +0000
commit182a8083c1e26577dfc52e78dbd95d221daed20d (patch)
treec713e1a2f372a60fa5c91a4c5e56e5de5229d245 /lldb/packages/Python/lldbsuite/test/settings
parent8f094c94fd62aaf82e5e6abb1cd8eaa1bd03284e (diff)
downloadbcm5719-llvm-182a8083c1e26577dfc52e78dbd95d221daed20d.tar.gz
bcm5719-llvm-182a8083c1e26577dfc52e78dbd95d221daed20d.zip
Initial patchset to get the testsuite running against armv7 and arm64 iOS devices.
Normal customer devices won't be able to run these devices, we're hoping to get a public facing bot set up at some point. There will be some smaller follow-on patches. The changes to tools/lldb-server are verbose and I'm not thrilled with having to skip all of these tests manually. There are a few places where I'm making the assumption that "armv7", "armv7k", "arm64" means it's an ios device, and I need to review & clean these up with an OS check as well. (Android will show up as "arm" and "aarch64" so by pure luck they shouldn't cause problems, but it's not an assumption I want to rely on). I'll be watching the bots for the rest of today; if any problems are introduced by this patch I'll revert it - if anyone sees a problem with their bot that I don't see, please do the same. I know it's a rather large patch. One change I had to make specifically for iOS devices was that debugserver can't create files. There were several tests that launch the inferior process redirecting its output to a file, then they retrieve the file. They were not trying to test file redirection in these tests, so I rewrote those to write their output to a file directly. llvm-svn: 313932
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/settings')
-rw-r--r--lldb/packages/Python/lldbsuite/test/settings/TestSettings.py2
-rw-r--r--lldb/packages/Python/lldbsuite/test/settings/quoting/TestQuoting.py10
-rw-r--r--lldb/packages/Python/lldbsuite/test/settings/quoting/main.c10
3 files changed, 16 insertions, 6 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py b/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py
index a8bd57341ed..36ca7d7e418 100644
--- a/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py
+++ b/lldb/packages/Python/lldbsuite/test/settings/TestSettings.py
@@ -215,6 +215,7 @@ class SettingsCommandTestCase(TestBase):
self.expect("disassemble -n numberfn",
substrs=["5ah"])
+ @skipIfDarwinEmbedded # debugserver on ios etc can't write files
def test_run_args_and_env_vars(self):
"""Test that run-args and env-vars are passed to the launched process."""
self.build()
@@ -286,6 +287,7 @@ class SettingsCommandTestCase(TestBase):
"The host environment variable 'MY_HOST_ENV_VAR1' successfully passed.",
"The host environment variable 'MY_HOST_ENV_VAR2' successfully passed."])
+ @skipIfDarwinEmbedded # debugserver on ios etc can't write files
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/packages/Python/lldbsuite/test/settings/quoting/TestQuoting.py b/lldb/packages/Python/lldbsuite/test/settings/quoting/TestQuoting.py
index b193c81e644..02110d1684f 100644
--- a/lldb/packages/Python/lldbsuite/test/settings/quoting/TestQuoting.py
+++ b/lldb/packages/Python/lldbsuite/test/settings/quoting/TestQuoting.py
@@ -82,16 +82,16 @@ class SettingsCommandTestCase(TestBase):
exe = os.path.join(os.getcwd(), "a.out")
self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)
- self.runCmd("process launch -o stdout.txt -- " + args_in)
+ self.runCmd("process launch -- " + args_in)
if lldb.remote_platform:
- src_file_spec = lldb.SBFileSpec('stdout.txt', False)
- dst_file_spec = lldb.SBFileSpec('stdout.txt', True)
+ src_file_spec = lldb.SBFileSpec('output.txt', False)
+ dst_file_spec = lldb.SBFileSpec('output.txt', True)
lldb.remote_platform.Get(src_file_spec, dst_file_spec)
- with open('stdout.txt', 'r') as f:
+ with open('output.txt', 'r') as f:
output = f.read()
- self.RemoveTempFile("stdout.txt")
+ self.RemoveTempFile("output.txt")
self.assertEqual(output, args_out)
diff --git a/lldb/packages/Python/lldbsuite/test/settings/quoting/main.c b/lldb/packages/Python/lldbsuite/test/settings/quoting/main.c
index 6e01c2d1cd8..5e3e34f84a6 100644
--- a/lldb/packages/Python/lldbsuite/test/settings/quoting/main.c
+++ b/lldb/packages/Python/lldbsuite/test/settings/quoting/main.c
@@ -1,13 +1,21 @@
#include <stdio.h>
#include <string.h>
+#include <stdlib.h>
/* This program writes its arguments (separated by '\0') to stdout. */
int
main(int argc, char const *argv[])
{
int i;
+
+ FILE *output = fopen ("output.txt", "w");
+ if (output == NULL)
+ exit (1);
+
for (i = 1; i < argc; ++i)
- fwrite(argv[i], strlen(argv[i])+1, 1, stdout);
+ fwrite(argv[i], strlen(argv[i])+1, 1, output);
+
+ fclose (output);
return 0;
}
OpenPOWER on IntegriCloud