gvisor/test/runtimes
Brett Landau edcc60b931 Refactor proctor binaries to implement testRunner interface.
Shared code among proctor-*.go files has been refactored
into common/common.go. The common package is imported in
each proctor binary and a struct is created to implement
the testRunner interface defined in common.go. This allows
for the proctor binaries to be updated without having to
copy/paste the same code across all files. There are no
usage or functionality changes.

PiperOrigin-RevId: 260967080
2019-07-31 11:35:47 -07:00
..
common Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
go Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
java Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
nodejs Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
php Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
python Refactor proctor binaries to implement testRunner interface. 2019-07-31 11:35:47 -07:00
BUILD Move runtimes tests to appropriate directory. 2019-07-29 14:17:11 -07:00
README.md Move runtimes tests to appropriate directory. 2019-07-29 14:17:11 -07:00
runtimes.go Move runtimes tests to appropriate directory. 2019-07-29 14:17:11 -07:00
runtimes_test.go Move runtimes tests to appropriate directory. 2019-07-29 14:17:11 -07:00

README.md

Runtimes Tests Dockerfiles

The Dockerfiles defined under this path are configured to host the execution of the runtimes language tests. Each Dockerfile can support the language indicated by its directory.

The following runtimes are currently supported:

  • Go 1.12
  • Java 11
  • Node.js 12
  • PHP 7.3
  • Python 3.7

Prerequisites:

  1. Install and configure Docker

  2. Build each Docker container:

$ docker build -f $LANG/Dockerfile [-t $NAME] .

Testing:

If the prerequisites have been fulfilled, you can run the tests with the following command:

$ docker run --rm -it $NAME [FLAG]

Running the command with no flags will cause all the available tests to execute.

Flags can be added for additional functionality:

  • --list: Print a list of all available tests
  • --test <name>: Run a single test from the list of available tests
  • --v: Print the language version