summaryrefslogtreecommitdiff
path: root/Documentation/building/unix-test-instructions.md
diff options
context:
space:
mode:
authorKoundinya Veluri <kouvel@microsoft.com>2015-10-13 12:58:48 -0700
committerKoundinya Veluri <kouvel@microsoft.com>2015-10-13 13:57:52 -0700
commit80479e2aefa72ea6b5e39d6e910fb6d0465e4978 (patch)
tree27110d5fdd046ea139fff48cfd365b619b630286 /Documentation/building/unix-test-instructions.md
parent1a729f8c93d03e305a1d830c9e65ca05185adcd1 (diff)
downloadcoreclr-80479e2aefa72ea6b5e39d6e910fb6d0465e4978.tar.gz
coreclr-80479e2aefa72ea6b5e39d6e910fb6d0465e4978.tar.bz2
coreclr-80479e2aefa72ea6b5e39d6e910fb6d0465e4978.zip
Add some instructions (tests, new APIs)
- Instructions for running CoreCLR and PAL tests outside Windows - Brief instructions for running CoreFX tests with a private build of CoreCLR outside Windows - Adding new public APIs to mscorlib
Diffstat (limited to 'Documentation/building/unix-test-instructions.md')
-rw-r--r--Documentation/building/unix-test-instructions.md68
1 files changed, 68 insertions, 0 deletions
diff --git a/Documentation/building/unix-test-instructions.md b/Documentation/building/unix-test-instructions.md
new file mode 100644
index 0000000000..d89133119c
--- /dev/null
+++ b/Documentation/building/unix-test-instructions.md
@@ -0,0 +1,68 @@
+Building and running tests on Linux, OS X, and FreeBSD
+======================================================
+
+CoreCLR tests
+-------------
+
+**Building**
+
+Build CoreCLR and CoreFX. Refer to building instructions in the respective repository.
+
+To build only the tests, on the Windows machine:
+
+> `C:\coreclr>tests\buildtest.cmd clean`
+
+**Running tests**
+
+The following instructions assume that on the Unix machine:
+- The CoreCLR repo is cloned at `~/coreclr`
+- The CoreFX repo is cloned at `~/corefx`
+- The Windows clone of the CoreCLR repo is mounted at `/media/coreclr`
+- The Windows clone of the CoreFX repo is mounted at `/media/corefx`
+
+Tests currently need to be built on Windows and copied over to the Unix machine for testing. Copy the test build over to the Unix machine:
+
+> `cp --recursive /media/coreclr/bin/tests/Windows_NT.x64.Debug ~/test/`
+
+See runtest.sh usage information:
+
+> `~/coreclr$ tests/runtest.sh --help`
+
+Run tests:
+
+> ```bash
+> ~/coreclr$ tests/runtest.sh
+> --testRootDir="~/test/Windows_NT.x64.Debug"
+> --testNativeBinDir="~/coreclr/bin/obj/Linux.x64.Debug/tests"
+> --coreClrBinDir="~/coreclr/bin/Product/Linux.x64.Debug"
+> --mscorlibDir="/media/coreclr/bin/Product/Linux.x64.Debug"
+> --coreFxBinDir="~/corefx/bin/Linux.AnyCPU.Debug"
+> --coreFxNativeBinDir="~/corefx/bin/Linux.x64.Debug"
+> ```
+
+Test results will go into:
+
+> `~/test/Windows_NT.x64.Debug/coreclrtests.xml`
+
+**Unsupported and temporarily disabled tests**
+
+These tests are skipped by default:
+- Tests that are not supported outside Windows, are listed in:
+>> `~/coreclr/tests/testsUnsupportedOutsideWindows.txt`
+- Tests that are temporarily disabled outside Windows due to unexpected failures (pending investigation), are listed in:
+>> `~/coreclr/tests/testsFailingOutsideWindows.txt`
+
+To run only the set of temporarily disabled tests, pass in the `--runFailingTestsOnly` argument to `runtest.sh`.
+
+PAL tests
+---------
+
+Build CoreCLR on the Unix machine.
+
+Run tests:
+
+> `~/coreclr$ src/pal/tests/palsuite/runpaltests.sh ~/coreclr/bin/obj/Linux.x64.Debug`
+
+Test results will go into:
+
+> `/tmp/PalTestOutput/default/pal_tests.xml`