mirror of
https://github.com/kubevela/kubevela.git
synced 2026-08-19 04:26:39 +00:00
fix message invalid (#2968)
Signed-off-by: Jian.Li <lj176172@alibaba-inc.com>
This commit is contained in:
+3
-2
@@ -7,11 +7,12 @@ import (
|
||||
#ConditionalWait: {
|
||||
#do: "wait"
|
||||
continue: bool
|
||||
message?: string
|
||||
}
|
||||
|
||||
#Break: {
|
||||
#do: "break"
|
||||
message: string
|
||||
#do: "break"
|
||||
message?: string
|
||||
}
|
||||
|
||||
#Apply: kube.#Apply
|
||||
|
||||
@@ -146,14 +146,18 @@ func (h *provider) Wait(ctx wfContext.Context, v *value.Value, act types.Action)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
act.Wait("")
|
||||
msg, _ := v.GetString("message")
|
||||
act.Wait(msg)
|
||||
return nil
|
||||
}
|
||||
|
||||
// Break let workflow terminate.
|
||||
func (h *provider) Break(ctx wfContext.Context, v *value.Value, act types.Action) error {
|
||||
act.Terminate("")
|
||||
var msg string
|
||||
if v != nil {
|
||||
msg, _ = v.GetString("message")
|
||||
}
|
||||
act.Terminate(msg)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -187,24 +187,29 @@ func TestProvider_Wait(t *testing.T) {
|
||||
act := &mockAction{}
|
||||
v, err := value.NewValue(`
|
||||
continue: 100!=100
|
||||
message: "test log"
|
||||
`, nil, "")
|
||||
assert.NilError(t, err)
|
||||
err = p.Wait(wfCtx, v, act)
|
||||
assert.NilError(t, err)
|
||||
assert.Equal(t, act.wait, true)
|
||||
assert.Equal(t, act.msg, "test log")
|
||||
|
||||
act = &mockAction{}
|
||||
v, err = value.NewValue(`
|
||||
continue: 100==100
|
||||
message: "not invalid"
|
||||
`, nil, "")
|
||||
assert.NilError(t, err)
|
||||
err = p.Wait(wfCtx, v, act)
|
||||
assert.NilError(t, err)
|
||||
assert.Equal(t, act.wait, false)
|
||||
assert.Equal(t, act.msg, "")
|
||||
|
||||
act = &mockAction{}
|
||||
v, err = value.NewValue(`
|
||||
continue: bool
|
||||
message: string
|
||||
`, nil, "")
|
||||
assert.NilError(t, err)
|
||||
err = p.Wait(wfCtx, v, act)
|
||||
@@ -226,6 +231,16 @@ func TestProvider_Break(t *testing.T) {
|
||||
err := p.Break(wfCtx, nil, act)
|
||||
assert.NilError(t, err)
|
||||
assert.Equal(t, act.terminate, true)
|
||||
|
||||
act = &mockAction{}
|
||||
v, err := value.NewValue(`
|
||||
message: "terminate"
|
||||
`, nil, "")
|
||||
assert.NilError(t, err)
|
||||
err = p.Break(wfCtx, v, act)
|
||||
assert.NilError(t, err)
|
||||
assert.Equal(t, act.terminate, true)
|
||||
assert.Equal(t, act.msg, "terminate")
|
||||
}
|
||||
|
||||
type mockAction struct {
|
||||
|
||||
Reference in New Issue
Block a user