Skip to content

Commit

Permalink
doc: added info how to run single tests to BUILDING.md
Browse files Browse the repository at this point in the history
The information on how to run single tests was missing in BUILDING.md.

Fixes: nodejs#23491
  • Loading branch information
fastereder committed Oct 12, 2018
1 parent e2425de commit f371b60
Showing 1 changed file with 75 additions and 47 deletions.
122 changes: 75 additions & 47 deletions BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,40 +10,42 @@ file a new issue.

## Table of Contents

* [Supported platforms](#supported-platforms)
* [Input](#input)
* [Strategy](#strategy)
* [Supported platforms](#supported-platforms-1)
* [Supported toolchains](#supported-toolchains)
* [Unix](#unix)
* [AIX](#aix)
* [Windows](#windows)
* [OpenSSL asm support](#openssl-asm-support)
* [Building Node.js on supported platforms](#building-nodejs-on-supported-platforms)
* [Unix/macOS](#unixmacos)
* [Prerequisites](#prerequisites)
* [Building Node.js](#building-nodejs-1)
* [Running Tests](#running-tests)
* [Building the documentation](#building-the-documentation)
* [Building a debug build](#building-a-debug-build)
* [Windows](#windows-1)
* [Android/Android-based devices (e.g. Firefox OS)](#androidandroid-based-devices-eg-firefox-os)
* [`Intl` (ECMA-402) support](#intl-ecma-402-support)
* [Default: `small-icu` (English only) support](#default-small-icu-english-only-support)
* [Build with full ICU support (all locales supported by ICU)](#build-with-full-icu-support-all-locales-supported-by-icu)
* [Unix/macOS](#unixmacos-1)
* [Windows](#windows-2)
* [Building without Intl support](#building-without-intl-support)
* [Unix/macOS](#unixmacos-2)
* [Windows](#windows-3)
* [Use existing installed ICU (Unix/macOS only)](#use-existing-installed-icu-unixmacos-only)
* [Build with a specific ICU](#build-with-a-specific-icu)
* [Unix/macOS](#unixmacos-3)
* [Windows](#windows-4)
* [Building Node.js with FIPS-compliant OpenSSL](#building-nodejs-with-fips-compliant-openssl)
* [Building Node.js with external core modules](#building-nodejs-with-external-core-modules)
* [Unix/macOS](#unixmacos-4)
* [Windows](#windows-5)
- [Building Node.js](#building-nodejs)
- [Table of Contents](#table-of-contents)
- [Supported platforms](#supported-platforms)
- [Input](#input)
- [Strategy](#strategy)
- [Supported platforms](#supported-platforms)
- [Supported toolchains](#supported-toolchains)
- [Unix](#unix)
- [AIX](#aix)
- [Windows](#windows)
- [OpenSSL asm support](#openssl-asm-support)
- [Building Node.js on supported platforms](#building-nodejs-on-supported-platforms)
- [Unix/macOS](#unixmacos)
- [Prerequisites](#prerequisites)
- [Building Node.js](#building-nodejs)
- [Running Tests](#running-tests)
- [Building the documentation](#building-the-documentation)
- [Building a debug build](#building-a-debug-build)
- [Windows](#windows)
- [Android/Android-based devices (e.g. Firefox OS)](#androidandroid-based-devices-eg-firefox-os)
- [`Intl` (ECMA-402) support:](#intl-ecma-402-support)
- [Default: `small-icu` (English only) support](#default-small-icu-english-only-support)
- [Build with full ICU support (all locales supported by ICU):](#build-with-full-icu-support-all-locales-supported-by-icu)
- [Unix/macOS:](#unixmacos)
- [Windows:](#windows)
- [Building without Intl support](#building-without-intl-support)
- [Unix/macOS:](#unixmacos)
- [Windows:](#windows)
- [Use existing installed ICU (Unix/macOS only):](#use-existing-installed-icu-unixmacos-only)
- [Build with a specific ICU:](#build-with-a-specific-icu)
- [Unix/macOS](#unixmacos)
- [Windows](#windows)
- [Building Node.js with FIPS-compliant OpenSSL](#building-nodejs-with-fips-compliant-openssl)
- [Building Node.js with external core modules](#building-nodejs-with-external-core-modules)
- [Unix/macOS](#unixmacos)
- [Windows](#windows)

## Supported platforms

Expand Down Expand Up @@ -74,19 +76,19 @@ The community does not build or test against end-of-life distributions (EoL).
Thus, we do not recommend that you use Node on end-of-life or unsupported
platforms in production.

| System | Support type | Version | Architectures | Notes |
|--------------|--------------|----------------------------------|----------------------|------------------|
| GNU/Linux | Tier 1 | kernel >= 2.6.32, glibc >= 2.12 | x64, arm | |
| GNU/Linux | Tier 1 | kernel >= 3.10, glibc >= 2.17 | arm64 | |
| macOS/OS X | Tier 1 | >= 10.11 | x64 | |
| Windows | Tier 1 | >= Windows 7/2008 R2/2012 R2 | x86, x64 | [2](#fn2),[3](#fn3),[4](#fn4) |
| SmartOS | Tier 2 | >= 15 < 16.4 | x86, x64 | [1](#fn1) |
| FreeBSD | Tier 2 | >= 11 | x64 | |
| GNU/Linux | Tier 2 | kernel >= 3.13.0, glibc >= 2.19 | ppc64le >=power8 | |
| AIX | Tier 2 | >= 7.1 TL04 | ppc64be >=power7 | |
| GNU/Linux | Tier 2 | kernel >= 3.10, glibc >= 2.17 | s390x | |
| GNU/Linux | Experimental | kernel >= 2.6.32, glibc >= 2.12 | x86 | limited CI |
| Linux (musl) | Experimental | musl >= 1.0 | x64 | |
| System | Support type | Version | Architectures | Notes |
| ------------ | ------------ | ------------------------------- | ---------------- | ----------------------------- |
| GNU/Linux | Tier 1 | kernel >= 2.6.32, glibc >= 2.12 | x64, arm | |
| GNU/Linux | Tier 1 | kernel >= 3.10, glibc >= 2.17 | arm64 | |
| macOS/OS X | Tier 1 | >= 10.11 | x64 | |
| Windows | Tier 1 | >= Windows 7/2008 R2/2012 R2 | x86, x64 | [2](#fn2),[3](#fn3),[4](#fn4) |
| SmartOS | Tier 2 | >= 15 < 16.4 | x86, x64 | [1](#fn1) |
| FreeBSD | Tier 2 | >= 11 | x64 | |
| GNU/Linux | Tier 2 | kernel >= 3.13.0, glibc >= 2.19 | ppc64le >=power8 | |
| AIX | Tier 2 | >= 7.1 TL04 | ppc64be >=power7 | |
| GNU/Linux | Tier 2 | kernel >= 3.10, glibc >= 2.17 | s390x | |
| GNU/Linux | Experimental | kernel >= 2.6.32, glibc >= 2.12 | x86 | limited CI |
| Linux (musl) | Experimental | musl >= 1.0 | x64 | |

<em id="fn1">1</em>: The gcc4.8-libs package needs to be installed, because node
binaries have been built with GCC 4.8, for which runtime libraries are not
Expand Down Expand Up @@ -226,6 +228,32 @@ $ make -j4 test
`make -j4 test` does a full check on the codebase, including running linters and
documentation tests.

If you are updating tests and just want to run a single test to check it:

```text
$ python tools/test.py -J --mode=release parallel/test-stream2-transform
```

You can execute the entire suite of tests for a given subsystem
by providing the name of a subsystem:

```text
$ python tools/test.py -J --mode=release child-process
```

If you want to check the other options, please refer to the help by using
the `--help` option

```text
$ python tools/test.py --help
```

You can usually run tests directly with node:

```text
$ ./node ./test/parallel/test-stream2-transform.js
```

Optionally, continue below.

To run the tests and generate code coverage reports:
Expand Down

0 comments on commit f371b60

Please sign in to comment.