From fde7493af579bf4fc95d25cdc246b965cea82847 Mon Sep 17 00:00:00 2001 From: "lilong.129" Date: Thu, 14 Nov 2024 14:41:50 +0800 Subject: [PATCH] fix: skip if field cannot be set for parseDeviceConfig --- hrp/runner.go | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/hrp/runner.go b/hrp/runner.go index ed3b07fa..33a0ac30 100644 --- a/hrp/runner.go +++ b/hrp/runner.go @@ -485,6 +485,12 @@ func (r *CaseRunner) parseDeviceConfig(device interface{}, configVariables map[s continue } + // skip if field cannot be set + if !fieldValue.CanSet() { + log.Warn().Str("field", field.Name).Msg("field cannot be set, skip") + continue + } + parsedValue, err := r.parser.ParseString( fieldValue.String(), configVariables) if err != nil { @@ -774,14 +780,3 @@ func (r *SessionRunner) initWithParameters(parameters map[string]interface{}) { r.sessionVariables[k] = v } } - -func (r *SessionRunner) IgnorePopup() bool { - caseConfig := r.caseRunner.TestCase.Config.Get() - if caseConfig.Android != nil { - return caseConfig.Android[0].IgnorePopup - } - if caseConfig.IOS != nil { - return caseConfig.IOS[0].IgnorePopup - } - return false -}