From 9ba05f57a0026ba337b55984305e612676e0d7a6 Mon Sep 17 00:00:00 2001 From: Ilya Priven Date: Mon, 30 Sep 2024 05:15:37 -0400 Subject: [PATCH] GlobalAPI: clarify key path behavior (#15315) --- docs/GlobalAPI.md | 10 +++++----- packages/jest-each/README.md | 8 ++++---- website/versioned_docs/version-29.4/GlobalAPI.md | 10 +++++----- website/versioned_docs/version-29.5/GlobalAPI.md | 10 +++++----- website/versioned_docs/version-29.6/GlobalAPI.md | 10 +++++----- website/versioned_docs/version-29.7/GlobalAPI.md | 10 +++++----- 6 files changed, 29 insertions(+), 29 deletions(-) diff --git a/docs/GlobalAPI.md b/docs/GlobalAPI.md index 6d40690337db..c4a545656d96 100644 --- a/docs/GlobalAPI.md +++ b/docs/GlobalAPI.md @@ -251,7 +251,7 @@ Use `describe.each` if you keep duplicating the same test suites with different - `%$` - Number of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the suite of tests to be run, this is the function that will receive the parameters in each row as function arguments. @@ -305,7 +305,7 @@ describe.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test suite, use `$variable` to inject test data into the suite title from the tagged template expressions, and `$#` for the index of the row. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the suite of tests to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -574,7 +574,7 @@ test.concurrent.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object, **this will have to be an asynchronous function**. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -697,7 +697,7 @@ Use `test.each` if you keep duplicating the same test with different data. `test - `%$` - Number of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the test to be run, this is the function that will receive the parameters in each row as function arguments. @@ -731,7 +731,7 @@ test.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. diff --git a/packages/jest-each/README.md b/packages/jest-each/README.md index fd4be0917eed..7120b720b36c 100644 --- a/packages/jest-each/README.md +++ b/packages/jest-each/README.md @@ -122,7 +122,7 @@ const each = require('jest-each').default; - `%$` - Number of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - testFn: `Function` the test logic, this is the function that will receive the parameters of each row as function arguments @@ -149,7 +149,7 @@ const each = require('jest-each').default; - `%$` - Number of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - suiteFn: `Function` the suite of `test`/`it`s to be ran, this is the function that will receive the parameters in each row as function arguments @@ -381,7 +381,7 @@ each` ##### `.test`: - name: `String` the title of the `test`, use `$variable` in the name string to inject test values into the test title from the tagged template expressions - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the table row. - testFn: `Function` the test logic, this is the function that will receive the parameters of each row as function arguments @@ -418,7 +418,7 @@ each` ##### `.describe`: - name: `String` the title of the `test`, use `$variable` in the name string to inject test values into the test title from the tagged template expressions - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - suiteFn: `Function` the suite of `test`/`it`s to be ran, this is the function that will receive the parameters in each row as function arguments ### Usage diff --git a/website/versioned_docs/version-29.4/GlobalAPI.md b/website/versioned_docs/version-29.4/GlobalAPI.md index 2a04d4e352a3..3a8649531b52 100644 --- a/website/versioned_docs/version-29.4/GlobalAPI.md +++ b/website/versioned_docs/version-29.4/GlobalAPI.md @@ -250,7 +250,7 @@ Use `describe.each` if you keep duplicating the same test suites with different - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the suite of tests to be run, this is the function that will receive the parameters in each row as function arguments. @@ -304,7 +304,7 @@ describe.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test suite, use `$variable` to inject test data into the suite title from the tagged template expressions, and `$#` for the index of the row. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the suite of tests to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -572,7 +572,7 @@ test.concurrent.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object, **this will have to be an asynchronous function**. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -694,7 +694,7 @@ Use `test.each` if you keep duplicating the same test with different data. `test - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the test to be run, this is the function that will receive the parameters in each row as function arguments. @@ -728,7 +728,7 @@ test.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. diff --git a/website/versioned_docs/version-29.5/GlobalAPI.md b/website/versioned_docs/version-29.5/GlobalAPI.md index 2a04d4e352a3..3a8649531b52 100644 --- a/website/versioned_docs/version-29.5/GlobalAPI.md +++ b/website/versioned_docs/version-29.5/GlobalAPI.md @@ -250,7 +250,7 @@ Use `describe.each` if you keep duplicating the same test suites with different - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the suite of tests to be run, this is the function that will receive the parameters in each row as function arguments. @@ -304,7 +304,7 @@ describe.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test suite, use `$variable` to inject test data into the suite title from the tagged template expressions, and `$#` for the index of the row. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the suite of tests to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -572,7 +572,7 @@ test.concurrent.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object, **this will have to be an asynchronous function**. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -694,7 +694,7 @@ Use `test.each` if you keep duplicating the same test with different data. `test - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the test to be run, this is the function that will receive the parameters in each row as function arguments. @@ -728,7 +728,7 @@ test.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. diff --git a/website/versioned_docs/version-29.6/GlobalAPI.md b/website/versioned_docs/version-29.6/GlobalAPI.md index 2a04d4e352a3..3a8649531b52 100644 --- a/website/versioned_docs/version-29.6/GlobalAPI.md +++ b/website/versioned_docs/version-29.6/GlobalAPI.md @@ -250,7 +250,7 @@ Use `describe.each` if you keep duplicating the same test suites with different - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the suite of tests to be run, this is the function that will receive the parameters in each row as function arguments. @@ -304,7 +304,7 @@ describe.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test suite, use `$variable` to inject test data into the suite title from the tagged template expressions, and `$#` for the index of the row. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the suite of tests to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -572,7 +572,7 @@ test.concurrent.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object, **this will have to be an asynchronous function**. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -694,7 +694,7 @@ Use `test.each` if you keep duplicating the same test with different data. `test - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the test to be run, this is the function that will receive the parameters in each row as function arguments. @@ -728,7 +728,7 @@ test.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. diff --git a/website/versioned_docs/version-29.7/GlobalAPI.md b/website/versioned_docs/version-29.7/GlobalAPI.md index 2a04d4e352a3..c20c7acbf145 100644 --- a/website/versioned_docs/version-29.7/GlobalAPI.md +++ b/website/versioned_docs/version-29.7/GlobalAPI.md @@ -250,7 +250,7 @@ Use `describe.each` if you keep duplicating the same test suites with different - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the suite of tests to be run, this is the function that will receive the parameters in each row as function arguments. @@ -304,7 +304,7 @@ describe.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test suite, use `$variable` to inject test data into the suite title from the tagged template expressions, and `$#` for the index of the row. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the suite of tests to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -572,7 +572,7 @@ test.concurrent.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object, **this will have to be an asynchronous function**. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds. @@ -694,7 +694,7 @@ Use `test.each` if you keep duplicating the same test with different data. `test - `%#` - Index of the test case. - `%%` - single percent sign ('%'). This does not consume an argument. - Or generate unique test titles by injecting properties of test case object with `$variable` - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - You can use `$#` to inject the index of the test case - You cannot use `$variable` with the `printf` formatting except for `%%` - `fn`: `Function` the test to be run, this is the function that will receive the parameters in each row as function arguments. @@ -728,7 +728,7 @@ test.each([ - First row of variable name column headings separated with `|` - One or more subsequent rows of data supplied as template literal expressions using `${value}` syntax. - `name`: `String` the title of the test, use `$variable` to inject test data into the test title from the tagged template expressions. - - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` + - To inject nested object values use you can supply a keyPath i.e. `$variable.path.to.value` (only works for ["own" properites](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty), e.g. `$variable.constructor.name` wouldn't work) - `fn`: `Function` the test to be run, this is the function that will receive the test data object. - Optionally, you can provide a `timeout` (in milliseconds) for specifying how long to wait for each row before aborting. The default timeout is 5 seconds.