Skip to content

Commit

Permalink
e2e: always preserve failed networks (#6981)
Browse files Browse the repository at this point in the history
  • Loading branch information
tychoish committed Sep 23, 2021
1 parent 3d410e4 commit e94c418
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 12 deletions.
2 changes: 1 addition & 1 deletion test/e2e/run-multiple.sh
Expand Up @@ -21,7 +21,7 @@ for MANIFEST in "$@"; do
START=$SECONDS
echo "==> Running testnet: $MANIFEST"

if ! ./build/runner -p -f "$MANIFEST"; then
if ! ./build/runner -f "$MANIFEST"; then
echo "==> Testnet $MANIFEST failed, dumping manifest..."
cat "$MANIFEST"

Expand Down
25 changes: 14 additions & 11 deletions test/e2e/runner/main.go
Expand Up @@ -48,18 +48,21 @@ func NewCLI() *CLI {
cli.testnet = testnet
return nil
},
RunE: func(cmd *cobra.Command, args []string) error {
if err := Cleanup(cli.testnet); err != nil {
RunE: func(cmd *cobra.Command, args []string) (err error) {
if err = Cleanup(cli.testnet); err != nil {
return err
}
defer func() {
if cli.preserve {
logger.Info("Preserving testnet contents because -preserve=true")
} else if err != nil {
logger.Info("Preserving testnet that encountered error",
"err", err)
} else if err := Cleanup(cli.testnet); err != nil {
logger.Error("Error cleaning up testnet contents", "err", err)
}
}()
if err := Setup(cli.testnet); err != nil {
if err = Setup(cli.testnet); err != nil {
return err
}

Expand All @@ -73,38 +76,38 @@ func NewCLI() *CLI {
chLoadResult <- Load(lctx, cli.testnet)
}()

if err := Start(ctx, cli.testnet); err != nil {
if err = Start(ctx, cli.testnet); err != nil {
return err
}

if err := Wait(ctx, cli.testnet, 5); err != nil { // allow some txs to go through
if err = Wait(ctx, cli.testnet, 5); err != nil { // allow some txs to go through
return err
}

if cli.testnet.HasPerturbations() {
if err := Perturb(ctx, cli.testnet); err != nil {
if err = Perturb(ctx, cli.testnet); err != nil {
return err
}
if err := Wait(ctx, cli.testnet, 5); err != nil { // allow some txs to go through
if err = Wait(ctx, cli.testnet, 5); err != nil { // allow some txs to go through
return err
}
}

if cli.testnet.Evidence > 0 {
if err := InjectEvidence(ctx, cli.testnet, cli.testnet.Evidence); err != nil {
if err = InjectEvidence(ctx, cli.testnet, cli.testnet.Evidence); err != nil {
return err
}
if err := Wait(ctx, cli.testnet, 5); err != nil { // ensure chain progress
if err = Wait(ctx, cli.testnet, 5); err != nil { // ensure chain progress
return err
}
}

loadCancel()

if err := <-chLoadResult; err != nil {
if err = <-chLoadResult; err != nil {
return fmt.Errorf("transaction load failed: %w", err)
}
if err := Wait(ctx, cli.testnet, 5); err != nil { // wait for network to settle before tests
if err = Wait(ctx, cli.testnet, 5); err != nil { // wait for network to settle before tests
return err
}
if err := Test(cli.testnet); err != nil {
Expand Down

0 comments on commit e94c418

Please sign in to comment.