Skip to content

Commit 7e1c755

Browse files
committed
Doc edits for accessing objects from mutable environment
Signed-off-by: Gopal S Akshintala <[email protected]>
1 parent 1db0e50 commit 7e1c755

File tree

2 files changed

+22
-6
lines changed

2 files changed

+22
-6
lines changed

.eclipse/.bazelproject

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
2+
# The project view file (.bazelproject) is used to import targets into the IDE.
3+
#
4+
# See: https://ij.bazel.build/docs/project-views.html
5+
#
6+
# This files provides a default experience for developers working with the project.
7+
# You should customize it to suite your needs.
8+
9+
directories:
10+
. # import everything (remove the dot if this is too much)
11+
12+
derive_targets_from_directories: true

README.adoc

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -545,21 +545,20 @@ See in Action:
545545

546546
If an exception is thrown during the procedure of any step,
547547
the <<Step Procedure>> *fails fast for that step*.
548-
However, the execution of next *steps won't halt by default*.
548+
However, the execution of _next steps won't halt by default_.
549549
You can configure this behavior to *fail-fast* using the below Configuration options:
550550

551551
* `haltOnAnyFailure` — This defaults to `false`. If set to `true`, the execution of steps fails-fast when it encounters a failure. This also halts if there is an HTTP error response
552552
* `haltOnFailureOfTypeExcept` — You may configure to Fail-fast only for a specific Failure type by providing an `ExeType`. Along with it, you may provide a `PostTxnStepPick` which is used to check if a Step can be ignored for that specific failure type or halt the execution of next steps
553553

554-
These Configuration options, as their names suggest,
554+
The below Configuration options, as their names suggest,
555555
let you conditionally run or skip steps in a chain of steps from the template, without the need to change the template.
556556

557557
* `runOnlySteps`, `skipSteps` — These accept a `predicate` of type `ExeStepPick`, which is invoked passing the current `Step` instance to decide whether to execute or skip a step.
558558

559-
TIP: There are some `ExeStepPick` predicates
559+
TIP: Before writing a custom predicate, checkout these OOTB `ExeStepPick` predicates
560560
bundled with ReṼoman under link:{sourcedir}/com/salesforce/revoman/input/config/StepPick.kt[`ExeStepPick.PickUtils`]
561-
e.g `withName`,
562-
`inFolder` etc. You can write a custom predicate of your own too.
561+
e.g `withName`, `inFolder` etc.
563562

564563
==== Compose Modular Executions
565564

@@ -681,6 +680,8 @@ CAUTION: The recommendation is not to add too much code in <<Pre-req and Post-re
681680

682681
* Environment is the only mutable-shared state across step executions, which can be used for data passing between the consumer and the library.
683682
* This can be mutated (set key-value pairs) through <<Pre-req and Post-res scripts>> (using `pm.environment.set()`) and <<#_pre_step_and_post_step_hooks,Pre-Step /Post-Step Hooks>> (using the reference `rundown.mutableEnv`) during execution.
683+
* Mutable Environment is `Map<String, Object>` (in Java) or `Map<String, Any?>` (in Kotlin). If you store a POJO as the value, it gets serialized to JSON when used to replace a `{{variable-key}}` placeholder. While fetching a POJO value from `mutableEnv` in JVM code, you may use `mutableEnv.get()` to get the value as a POJO, or `mutableEnv.getAsString()` to read it as a serialized JSON string.
684+
* While serializing/deserializing, the <<#_type_safety_with_flexible_json_pojo_marshallingserialization_and_unmarshallingdeserialization,customer adapters configured>> via `Kick` config shall be used. You may supply more adapters if needed via `Kick` config.
684685

685686
==== Read Mutable Environment as Postman Environment JSON format
686687

@@ -763,7 +764,10 @@ to how your server responds or your network speed.
763764
The future looks bright with multiple impactful features in the pipeline:
764765

765766
* API metrics and Analytics
766-
* *It's built with extensibility* in mind. It can easily be extended to support other template formats, such as Kaiju templates used for availability testing.
767+
* Support other template formats
768+
** For developers, the IntelliJ HTTP Client offers a built-in plugin that enables HTTP calls directly within the IDE. Supporting this format eliminates the need to switch environments, allowing for seamless manual testing and automation without ever exiting the IDE.
769+
** Support formats like Cucumber to take input data and assert output data.
770+
** Support formats for other popular tools, such as ThunderClient, Insomnia, etc
767771
* In-built polling support for Async steps
768772
* Payload generation
769773
* Flow control through YAML config

0 commit comments

Comments
 (0)