diff --git a/.gitignore b/.gitignore index daa3e220..59422627 100644 --- a/.gitignore +++ b/.gitignore @@ -36,6 +36,7 @@ lntest/itest/*.log lntest/itest/.backendlogs lntest/itest/.minerlogs lntest/itest/lnd-itest +lntest/itest/btcd-itest lntest/itest/.logs-* cmd/cmd diff --git a/Makefile b/Makefile index b27a4dac..4b10a2ff 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,6 @@ GOACC_BIN := $(GO_BIN)/go-acc GOFUZZ_BUILD_BIN := $(GO_BIN)/go-fuzz-build GOFUZZ_BIN := $(GO_BIN)/go-fuzz -BTCD_DIR :=${GOPATH}/src/$(BTCD_PKG) MOBILE_BUILD_DIR :=${GOPATH}/src/$(MOBILE_PKG)/build IOS_BUILD_DIR := $(MOBILE_BUILD_DIR)/ios IOS_BUILD := $(IOS_BUILD_DIR)/Lndmobile.framework @@ -32,7 +31,7 @@ COMMIT_HASH := $(shell git rev-parse HEAD) BTCD_COMMIT := $(shell cat go.mod | \ grep $(BTCD_PKG) | \ - tail -n1 | \ + head -n1 | \ awk -F " " '{ print $$2 }' | \ awk -F "/" '{ print $$1 }') @@ -140,9 +139,12 @@ build: $(GOBUILD) -tags="$(DEV_TAGS)" -o lncli-debug $(DEV_LDFLAGS) $(PKG)/cmd/lncli build-itest: - @$(call print, "Building itest lnd and lncli.") - $(GOBUILD) -tags="$(ITEST_TAGS)" -o lnd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(PKG)/cmd/lnd - $(GOBUILD) -tags="$(ITEST_TAGS)" -o lncli-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(PKG)/cmd/lncli + @$(call print, "Building itest btcd and lnd.") + CGO_ENABLED=0 $(GOBUILD) -tags="rpctest" -o lntest/itest/btcd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(BTCD_PKG) + CGO_ENABLED=0 $(GOBUILD) -tags="$(ITEST_TAGS)" -o lntest/itest/lnd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(PKG)/cmd/lnd + + @$(call print, "Building itest binary for ${backend} backend.") + CGO_ENABLED=0 $(GOTEST) -v ./lntest/itest -tags="$(DEV_TAGS) $(RPC_TAGS) rpctest $(backend)" -c -o lntest/itest/itest.test$(EXEC_SUFFIX) install: @$(call print, "Installing lnd and lncli.") @@ -169,18 +171,13 @@ itest-only: EXEC_SUFFIX=$(EXEC_SUFFIX) scripts/itest_part.sh 0 1 $(TEST_FLAGS) $(ITEST_FLAGS) lntest/itest/log_check_errors.sh -itest: btcd build-itest itest-only - -itest-parallel: btcd - @$(call print, "Building lnd binary") - CGO_ENABLED=0 $(GOBUILD) -tags="$(ITEST_TAGS)" -o lntest/itest/lnd-itest$(EXEC_SUFFIX) $(ITEST_LDFLAGS) $(PKG)/cmd/lnd - - @$(call print, "Building itest binary for $(backend) backend") - CGO_ENABLED=0 $(GOTEST) -v ./lntest/itest -tags="$(DEV_TAGS) $(RPC_TAGS) rpctest $(backend)" -logoutput -goroutinedump -c -o lntest/itest/itest.test$(EXEC_SUFFIX) +itest: build-itest itest-only +itest-parallel: build-itest @$(call print, "Running tests") - rm -rf lntest/itest/*.log lntest/itest/.logs-* + rm -rf lntest/itest/*.log lntest/itest/.logs-*; date EXEC_SUFFIX=$(EXEC_SUFFIX) echo "$$(seq 0 $$(expr $(ITEST_PARALLELISM) - 1))" | xargs -P $(ITEST_PARALLELISM) -n 1 -I {} scripts/itest_part.sh {} $(NUM_ITEST_TRANCHES) $(TEST_FLAGS) + lntest/itest/log_check_errors.sh unit: btcd @$(call print, "Running unit tests.") diff --git a/scripts/itest_part.sh b/scripts/itest_part.sh index 52c3481c..c086c9af 100755 --- a/scripts/itest_part.sh +++ b/scripts/itest_part.sh @@ -15,9 +15,10 @@ shift # that here if necessary. EXEC="$WORKDIR"/itest.test"$EXEC_SUFFIX" LND_EXEC="$WORKDIR"/lnd-itest"$EXEC_SUFFIX" -echo $EXEC -test.v "$@" -logoutput -goroutinedump -logdir=.logs-tranche$TRANCHE -lndexec=$LND_EXEC -splittranches=$NUM_TRANCHES -runtranche=$TRANCHE +BTCD_EXEC="$WORKDIR"/btcd-itest"$EXEC_SUFFIX" +echo $EXEC -test.v "$@" -logoutput -goroutinedump -logdir=.logs-tranche$TRANCHE -lndexec=$LND_EXEC -btcdexec=$BTCD_EXEC -splittranches=$NUM_TRANCHES -runtranche=$TRANCHE # Exit code 255 causes the parallel jobs to abort, so if one part fails the # other is aborted too. cd "$WORKDIR" || exit 255 -$EXEC -test.v "$@" -logoutput -goroutinedump -logdir=.logs-tranche$TRANCHE -lndexec=$LND_EXEC -splittranches=$NUM_TRANCHES -runtranche=$TRANCHE || exit 255 +$EXEC -test.v "$@" -logoutput -goroutinedump -logdir=.logs-tranche$TRANCHE -lndexec=$LND_EXEC -btcdexec=$BTCD_EXEC -splittranches=$NUM_TRANCHES -runtranche=$TRANCHE || exit 255