package robot import ( "database/sql" "log" "testing" "bj_power_mes/internal/mock" "bj_power_mes/internal/sse" "bj_power_mes/ent" "bj_power_mes/internal/preload" plc "bjhardman.cn/bjhardman/goplc" "entgo.io/ent/dialect" entsql "entgo.io/ent/dialect/sql" _ "github.com/jackc/pgx/v5/stdlib" ) var pc plc.Client var entClient *ent.Client var robot *Controller func setup(t *testing.T, host string) { //pc = s7.NewClient(host) pc = mock.NewMockPLC() go func() { err := pc.Connect() if err != nil { t.Fatal(err) } }() db, err := sql.Open("pgx", "postgresql://postgres:postgres@127.0.0.1:5432/bj_power_mes") if err != nil { log.Fatal(err) } _, err = db.Query("select 1") if err != nil { log.Fatal(err) } drv := entsql.OpenDB(dialect.Postgres, db) entClient = ent.NewClient(ent.Driver(drv)) preload.Init(entClient) robot = NewRobotController(pc, entClient, sse.NewHandler(), nil) } func teardown() { pc.Close() err := entClient.Close() if err != nil { return } }