Files
origin/util/blueprint/blueprint_test.go
2025-09-23 15:06:57 +08:00

65 lines
1006 B
Go

package blueprint
import (
"fmt"
"testing"
)
type Entrance_IntParam struct {
BaseExecNode
}
func (em *Entrance_IntParam) GetName() string {
return "Entrance_IntParam"
}
func (em *Entrance_IntParam) Exec() (int, error) {
return 0, nil
}
type Output struct {
BaseExecNode
}
func (em *Output) GetName() string {
return "Output"
}
func (em *Output) Exec() (int, error) {
val, ok := em.GetInPortInt(1)
if !ok {
return 0, fmt.Errorf("Output Exec inParam not found")
}
fmt.Printf("Output Exec inParam %d", val)
return 0, nil
}
func OnRegister(bm *ExecPool) error {
bm.Register(&Entrance_IntParam{})
bm.Register(&Output{})
return nil
}
const (
EntranceID_IntParam = 3
)
func TestExecMgr(t *testing.T) {
//
var bp Blueprint
err := bp.Init("./json/", "./vgf/", OnRegister)
if err != nil {
t.Fatalf("init failed,err:%v", err)
}
graph := bp.Create("test1")
err = graph.Do(EntranceID_IntParam, 1, 2, 3)
if err != nil {
t.Fatalf("do failed,err:%v", err)
}
graph.Release()
}