in src/main/java/platform/qa/officer/pages/TaskPage.java [318:334]
private void processValue(TestContext testContext, FieldData fieldData) {
var context = convertToRequestsContext(testContext.getScenarioContext().getContext(API_RESULTS));
var randomValueMap = convertToRandomMapContext(testContext.getScenarioContext().getContext(RANDOM_VALUE_MAP));
String valueKey = substringBetween(fieldData.getValue(), "{", "}");
if (fieldData.getValue().startsWith("{")
&& fieldData.getValue().endsWith("}")
&& randomValueMap.containsKey(valueKey)) {
fieldData.setValue(randomValueMap.get(valueKey));
} else if (fieldData.getValue().startsWith("{")
&& fieldData.getValue().endsWith("}")
&& context.stream().anyMatch(request -> request.isResultContainsKey(valueKey))) {
var lastRequest = context.stream()
.filter(request -> request.isResultContainsKey(valueKey))
.max(Request::compareTo);
lastRequest.ifPresent(request -> fieldData.setValue(request.getResultValueByKey(valueKey)));
}
}