gvisor/test
Adin Scannell 7c6ab6a219 Implement splice methods for pipes and sockets.
This also allows the tee(2) implementation to be enabled, since dup can now be
properly supported via WriteTo.

Note that this change necessitated some minor restructoring with the
fs.FileOperations splice methods. If the *fs.File is passed through directly,
then only public API methods are accessible, which will deadlock immediately
since the locking is already done by fs.Splice. Instead, we pass through an
abstract io.Reader or io.Writer, which elide locks and use the underlying
fs.FileOperations directly.

PiperOrigin-RevId: 268805207
2019-09-12 17:43:27 -07:00
..
e2e Impose order on test scripts. 2019-09-03 22:02:43 -07:00
image Impose order on test scripts. 2019-09-03 22:02:43 -07:00
root Fix minor Kokoro issues. 2019-09-10 00:38:52 -07:00
runtimes Impose order on test scripts. 2019-09-03 22:02:43 -07:00
syscalls Implement splice methods for pipes and sockets. 2019-09-12 17:43:27 -07:00
util Load C++ rules from @rules_cc 2019-09-06 11:29:00 -07:00
BUILD Bump Bazel to v0.28.0 2019-08-13 11:21:55 -07:00
README.md Impose order on test scripts. 2019-09-03 22:02:43 -07:00

README.md

Tests

The tests defined under this path are verifying functionality beyond what unit tests can cover, e.g. integration and end to end tests. Due to their nature, they may need extra setup in the test machine and extra configuration to run.

  • syscalls: system call tests use a local runner, and do not require additional configuration in the machine.
  • integration: defines integration tests that uses docker run to test functionality.
  • image: basic end to end test for popular images. These require the same setup as integration tests.
  • root: tests that require to be run as root.
  • util: utilities library to support the tests.

For the above noted cases, the relevant runtime must be installed via runsc install before running. This is handled automatically by the test scripts in the kokoro directory.