()
| 232 | } |
| 233 | |
| 234 | func initTestDB() (*sql.DB, func()) { |
| 235 | |
| 236 | startNodes() |
| 237 | var err error |
| 238 | |
| 239 | time.Sleep(10 * time.Second) |
| 240 | |
| 241 | err = client.Init(FJ(testWorkingDir, "./fuse/node_c/config.yaml"), []byte("")) |
| 242 | if err != nil { |
| 243 | log.Errorf("init client failed: %v", err) |
| 244 | return nil, stopNodes |
| 245 | } |
| 246 | |
| 247 | // wait for chain service |
| 248 | var ctx1, cancel1 = context.WithTimeout(context.Background(), 1*time.Minute) |
| 249 | defer cancel1() |
| 250 | err = test.WaitBPChainService(ctx1, 3*time.Second) |
| 251 | if err != nil { |
| 252 | log.Errorf("wait for chain service failed: %v", err) |
| 253 | return nil, stopNodes |
| 254 | } |
| 255 | |
| 256 | // create |
| 257 | meta := client.ResourceMeta{} |
| 258 | meta.Node = 1 |
| 259 | _, dsn, err := client.Create(meta) |
| 260 | if err != nil { |
| 261 | log.Errorf("create db failed: %v", err) |
| 262 | return nil, stopNodes |
| 263 | } |
| 264 | |
| 265 | db, err := sql.Open("covenantsql", dsn) |
| 266 | if err != nil { |
| 267 | log.Errorf("open db failed: %v", err) |
| 268 | return nil, stopNodes |
| 269 | } |
| 270 | |
| 271 | // wait for creation |
| 272 | var ctx2, cancel2 = context.WithTimeout(context.Background(), 1*time.Minute) |
| 273 | defer cancel2() |
| 274 | err = client.WaitDBCreation(ctx2, dsn) |
| 275 | if err != nil { |
| 276 | log.Errorf("wait for creation failed: %v", err) |
| 277 | return nil, stopNodes |
| 278 | } |
| 279 | |
| 280 | log.Infof("the created database dsn is %v", dsn) |
| 281 | |
| 282 | if err := initSchema(db); err != nil { |
| 283 | stopNodes() |
| 284 | log.Fatal(err) |
| 285 | } |
| 286 | |
| 287 | return db, stopNodes |
| 288 | } |
| 289 | |
| 290 | func getAllBlocks(db *sql.DB, inode uint64) ([]byte, error) { |
| 291 | blocks, err := getBlocks(db, inode) |
no test coverage detected