From 7fc352b26d6b35e9670a956c6983e6ccd9ec2bc5 Mon Sep 17 00:00:00 2001 From: debugtalk Date: Sun, 3 Oct 2021 23:55:52 +0800 Subject: [PATCH] change: parse step variables --- runner.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/runner.go b/runner.go index 303e9227..0af2b28d 100644 --- a/runner.go +++ b/runner.go @@ -58,9 +58,17 @@ func (r *Runner) runCase(testcase *TestCase) error { for _, step := range testcase.TestSteps { // override variables // step variables > extracted variables from previous steps - step.ToStruct().Variables = mergeVariables(step.ToStruct().Variables, extractedVariables) + stepVariables := mergeVariables(step.ToStruct().Variables, extractedVariables) // step variables > testcase config variables - step.ToStruct().Variables = mergeVariables(step.ToStruct().Variables, config.Variables) + stepVariables = mergeVariables(stepVariables, config.Variables) + + // parse step variables + parsedVariables, err := parseVariables(stepVariables) + if err != nil { + log.Printf("[parseConfig] parse variables: %v, error: %v", config.Variables, err) + return err + } + step.ToStruct().Variables = parsedVariables stepData, err := r.runStep(step, config) if err != nil {