mirror of
https://github.com/octoleo/syncthing.git
synced 2024-12-22 02:48:59 +00:00
Improvements to integration tests
This commit is contained in:
parent
7c680c955f
commit
25c664b13a
3
build.sh
3
build.sh
@ -3,6 +3,7 @@ set -euo pipefail
|
|||||||
IFS=$'\n\t'
|
IFS=$'\n\t'
|
||||||
|
|
||||||
DOCKERIMGV=1.4.1-1
|
DOCKERIMGV=1.4.1-1
|
||||||
|
STTRACE=${STTRACE:-}
|
||||||
|
|
||||||
case "${1:-default}" in
|
case "${1:-default}" in
|
||||||
default)
|
default)
|
||||||
@ -110,6 +111,7 @@ case "${1:-default}" in
|
|||||||
docker run --rm -h syncthing-builder -u $(id -u) -t \
|
docker run --rm -h syncthing-builder -u $(id -u) -t \
|
||||||
-v $(pwd):/go/src/github.com/syncthing/syncthing \
|
-v $(pwd):/go/src/github.com/syncthing/syncthing \
|
||||||
-w /go/src/github.com/syncthing/syncthing \
|
-w /go/src/github.com/syncthing/syncthing \
|
||||||
|
-e "STTRACE=$STTRACE" \
|
||||||
syncthing/build:$DOCKERIMGV \
|
syncthing/build:$DOCKERIMGV \
|
||||||
sh -c './build.sh clean \
|
sh -c './build.sh clean \
|
||||||
&& go vet ./cmd/... ./internal/... \
|
&& go vet ./cmd/... ./internal/... \
|
||||||
@ -122,6 +124,7 @@ case "${1:-default}" in
|
|||||||
docker run --rm -h syncthing-builder -u $(id -u) -t \
|
docker run --rm -h syncthing-builder -u $(id -u) -t \
|
||||||
-v $(pwd):/go/src/github.com/syncthing/syncthing \
|
-v $(pwd):/go/src/github.com/syncthing/syncthing \
|
||||||
-w /go/src/github.com/syncthing/syncthing \
|
-w /go/src/github.com/syncthing/syncthing \
|
||||||
|
-e "STTRACE=$STTRACE" \
|
||||||
syncthing/build:$DOCKERIMGV \
|
syncthing/build:$DOCKERIMGV \
|
||||||
sh -euxc './build.sh clean \
|
sh -euxc './build.sh clean \
|
||||||
&& go run build.go -race \
|
&& go run build.go -race \
|
||||||
|
1
test/logs/.gitignore
vendored
Normal file
1
test/logs/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
*.out
|
@ -50,7 +50,7 @@ type syncthingProcess struct {
|
|||||||
|
|
||||||
func (p *syncthingProcess) start() error {
|
func (p *syncthingProcess) start() error {
|
||||||
if p.logfd == nil {
|
if p.logfd == nil {
|
||||||
logfd, err := os.Create(p.instance + ".out")
|
logfd, err := os.Create("logs/" + getTestName() + "-" + p.instance + ".out")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
19
test/util.go
19
test/util.go
@ -27,6 +27,7 @@ import (
|
|||||||
"math/rand"
|
"math/rand"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"runtime"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
@ -441,3 +442,21 @@ func isTimeout(err error) bool {
|
|||||||
return strings.Contains(err.Error(), "use of closed network connection") ||
|
return strings.Contains(err.Error(), "use of closed network connection") ||
|
||||||
strings.Contains(err.Error(), "request cancelled while waiting")
|
strings.Contains(err.Error(), "request cancelled while waiting")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getTestName() string {
|
||||||
|
callers := make([]uintptr, 100)
|
||||||
|
runtime.Callers(1, callers)
|
||||||
|
for i, caller := range callers {
|
||||||
|
f := runtime.FuncForPC(caller)
|
||||||
|
if f != nil {
|
||||||
|
if f.Name() == "testing.tRunner" {
|
||||||
|
testf := runtime.FuncForPC(callers[i-1])
|
||||||
|
if testf != nil {
|
||||||
|
path := strings.Split(testf.Name(), ".")
|
||||||
|
return path[len(path)-1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return time.Now().String()
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user