<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/lldb/test/python_api/process/io, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2015-10-28T17:43:26+00:00</updated>
<entry>
<title>Move lldb/test to lldb/packages/Python/lldbsuite/test.</title>
<updated>2015-10-28T17:43:26+00:00</updated>
<author>
<name>Zachary Turner</name>
<email>zturner@google.com</email>
</author>
<published>2015-10-28T17:43:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=c432c8f856e0bd84de980a9d9bb2d31b06fa95b1'/>
<id>urn:sha1:c432c8f856e0bd84de980a9d9bb2d31b06fa95b1</id>
<content type='text'>
This is the conclusion of an effort to get LLDB's Python code
structured into a bona-fide Python package.  This has a number
of benefits, but most notably the ability to more easily share
Python code between different but related pieces of LLDB's Python
infrastructure (for example, `scripts` can now share code with
`test`).

llvm-svn: 251532
</content>
</entry>
<entry>
<title>Rename `lldb_shared` to `use_lldb_suite`.</title>
<updated>2015-10-27T20:12:05+00:00</updated>
<author>
<name>Zachary Turner</name>
<email>zturner@google.com</email>
</author>
<published>2015-10-27T20:12:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=0a0490b1520e96b728448b8c43ca873fcaa809dc'/>
<id>urn:sha1:0a0490b1520e96b728448b8c43ca873fcaa809dc</id>
<content type='text'>
llvm-svn: 251444
</content>
</entry>
<entry>
<title>Port the python api decorator to use test categories</title>
<updated>2015-10-26T09:28:32+00:00</updated>
<author>
<name>Pavel Labath</name>
<email>labath@google.com</email>
</author>
<published>2015-10-26T09:28:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=dc8b2d3d3aa4cedd66ee5b113ee8cc535f2c5a04'/>
<id>urn:sha1:dc8b2d3d3aa4cedd66ee5b113ee8cc535f2c5a04</id>
<content type='text'>
Summary:
Per discussions on the mailing list, I have implemented a decorator which annotates individual
test methods with categories. I have used this framework to replace the '-a' and '+a'
command-line switches (now '-G pyapi' and '--skip-category pyapi') and the @python_api_test
decorator (now @add_test_categories('pyapi')). The test suite now gives an error message
suggesting the new options if the user specifies the deprecated +/-a switches. If the general
direction is good, I will follow this up with other switches.

Reviewers: tberghammer, tfiala, granata.enrico, zturner

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D14020

llvm-svn: 251277
</content>
</entry>
<entry>
<title>Add from __future__ import print_function everywhere.</title>
<updated>2015-10-23T17:04:29+00:00</updated>
<author>
<name>Zachary Turner</name>
<email>zturner@google.com</email>
</author>
<published>2015-10-23T17:04:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=35d017f0fc38b53e31f1a44d07c3c142f5d3620b'/>
<id>urn:sha1:35d017f0fc38b53e31f1a44d07c3c142f5d3620b</id>
<content type='text'>
Apparently there were tons of instances I missed last time, I
guess I accidentally ran 2to3 non-recursively.  This should be
every occurrence of a print statement fixed to use a print function
as well as from __future__ import print_function being added to
every file.

After this patch print statements will stop working everywhere in
the test suite, and the print function should be used instead.

llvm-svn: 251121
</content>
</entry>
<entry>
<title>Update every test to import `lldb_shared`.</title>
<updated>2015-10-22T20:06:20+00:00</updated>
<author>
<name>Zachary Turner</name>
<email>zturner@google.com</email>
</author>
<published>2015-10-22T20:06:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=77db4a855239049488e09f28c6665fdb3b51ef90'/>
<id>urn:sha1:77db4a855239049488e09f28c6665fdb3b51ef90</id>
<content type='text'>
This is necessary in order to allow third party modules to be
located under lldb/third_party rather than under the test
folder directly.

Since we're already touching every test file anyway, we also
go ahead and delete the unittest2 import and main block wherever
possible.  The ability to run a test as a standalone file has
already been broken for some time, and if we decide we want this
back, we should use unittest instead of unittest2.

A few places could not have the import of unittest2 removed,because
they depend on the unittest2.expectedFailure or skip decorators.
Removing all those was orthogonal in spirit to the purpose of this
CL, so the import of unittest2 remains in those files that were
using it for its test decorators.  Those can be addressed
separately.

llvm-svn: 251055
</content>
</entry>
<entry>
<title>Merge dwarf and dsym tests</title>
<updated>2015-09-30T10:12:40+00:00</updated>
<author>
<name>Tamas Berghammer</name>
<email>tberghammer@google.com</email>
</author>
<published>2015-09-30T10:12:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=c8fd130a2cbf7ade53d05e597f9d48e8c2f37442'/>
<id>urn:sha1:c8fd130a2cbf7ade53d05e597f9d48e8c2f37442</id>
<content type='text'>
Currently most of the test files have a separate dwarf and a separate
dsym test with almost identical content (only the build step is
different). With adding dwo symbol file handling to the test suit it
would increase this to a 3-way duplication. The purpose of this change
is to eliminate this redundancy with generating 2 test case (one dwarf
and one dsym) for each test function specified (dwo handling will be
added at a later commit).

Main design goals:
* There should be no boilerplate code in each test file to support the
  multiple debug info in most of the tests (custom scenarios are
  acceptable in special cases) so adding a new test case is easier and
  we can't miss one of the debug info type.
* In case of a test failure, the debug symbols used during the test run
  have to be cleanly visible from the output of dotest.py to make
  debugging easier both from build bot logs and from local test runs
* Each test case should have a unique, fully qualified name so we can
  run exactly 1 test with "-f &lt;test-case&gt;.&lt;test-function&gt;" syntax
* Test output should be grouped based on test files the same way as it
  happens now (displaying dwarf/dsym results separately isn't
  preferable)

Proposed solution (main logic in lldbtest.py, rest of them are test
cases fixed up for the new style):
* Have only 1 test fuction in the test files what will run for all
  debug info separately and this test function should call just
  "self.build(...)" to build an inferior with the right debug info
* When a class is created by python (the class object, not the class
  instance), we will generate a new test method for each debug info
  format in the test class with the name "&lt;test-function&gt;_&lt;debug-info&gt;"
  and remove the original test method. This way unittest2 see multiple
  test methods (1 for each debug info, pretty much as of now) and will
  handle the test selection and the failure reporting correctly (the
  debug info will be visible from the end of the test name)
* Add new annotation @no_debug_info_test to disable the generation of
  multiple tests for each debug info format when the test don't have an
  inferior

Differential revision: http://reviews.llvm.org/D13028

llvm-svn: 248883
</content>
</entry>
<entry>
<title>Replace sys.platform skips in tests with @skip decorators which check against remote platform.</title>
<updated>2015-03-30T14:12:17+00:00</updated>
<author>
<name>Robert Flack</name>
<email>flackr@gmail.com</email>
</author>
<published>2015-03-30T14:12:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=13c7ad9cd245fca52773ac47e53da1cb46b38320'/>
<id>urn:sha1:13c7ad9cd245fca52773ac47e53da1cb46b38320</id>
<content type='text'>
Adds @skipIfPlatform and @skipUnlessPlatform decorators which will skip if /
unless the target platform is in the provided platform list.

Test Plan:
ninja check-lldb shows no regressions.
When running cross platform, tests which cannot run on the target platform are
skipped.

Differential Revision: http://reviews.llvm.org/D8665

llvm-svn: 233547
</content>
</entry>
<entry>
<title>Fix ProcessIO test failures</title>
<updated>2015-03-12T10:12:41+00:00</updated>
<author>
<name>Pavel Labath</name>
<email>labath@google.com</email>
</author>
<published>2015-03-12T10:12:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3f5df53fdef2593662cca8d274566e761cb8a91d'/>
<id>urn:sha1:3f5df53fdef2593662cca8d274566e761cb8a91d</id>
<content type='text'>
Summary:
There was a race condition regarding the output of the inferior process. The reading of the
output is performed on a separate thread, and there was no guarantee that the output will get
eventually consumed. Because of that, it was happening that calling Process::GetSTDOUT was not
returning anything even though the process was terminated and would definitely not produce any
further output. This was usually happening only under very heavy system load, but it can be
reproduced by placing an usleep in the stdio thread (Process::STDIOReadThreadBytesReceived).

This patch addresses this by adding synchronization capabilities to the Communication thread.
After calling Communication::SynchronizeWithReadThread one can be sure that all pending input has
been processed by the read thread. This function is then called after every public event which
stops the process to obtain the entire process output.

Test Plan: TestProcessIO.py should now succeed every time instead of flaking in and out.

Reviewers: clayborg, jingham

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D8246

llvm-svn: 232023
</content>
</entry>
<entry>
<title>XFAIL tests that are known to fail occasionally on Linux</title>
<updated>2015-03-05T21:35:28+00:00</updated>
<author>
<name>Vince Harron</name>
<email>vharron@google.com</email>
</author>
<published>2015-03-05T21:35:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=6caca38f684299d11f80ec4b3c5dfee5cc8f5785'/>
<id>urn:sha1:6caca38f684299d11f80ec4b3c5dfee5cc8f5785</id>
<content type='text'>
Trying to get the build green so we can notice new failures easier.

Differential Revision: http://reviews.llvm.org/D8039

llvm-svn: 231407
</content>
</entry>
<entry>
<title>Fix TestProcessIO.py when run against a remote target</title>
<updated>2015-02-13T19:15:24+00:00</updated>
<author>
<name>Vince Harron</name>
<email>vharron@google.com</email>
</author>
<published>2015-02-13T19:15:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=4a8abd3f944dfa15b505e665366c9f06b10e667d'/>
<id>urn:sha1:4a8abd3f944dfa15b505e665366c9f06b10e667d</id>
<content type='text'>
Fixed test case to copy redirected stdout/stderr files from remote
target to host

llgs wasn't bothering to put the pty master file handle in the right
place if stdout/stderr were redirected to a file. It is still needed
for stdin.

Corrected some log message text

llvm-svn: 229141
</content>
</entry>
</feed>
