mirror of https://github.com/poanetwork/quorum.git
Merge pull request #721 from trung/ignore-swarm-tests
ignore tests in `swarm` package for PR builds
This commit is contained in:
commit
7504dcf722
30
.travis.yml
30
.travis.yml
|
@ -74,20 +74,30 @@ matrix:
|
||||||
os: linux
|
os: linux
|
||||||
dist: xenial
|
dist: xenial
|
||||||
script:
|
script:
|
||||||
- sudo modprobe fuse
|
- |
|
||||||
- sudo chmod 666 /dev/fuse
|
sudo modprobe fuse
|
||||||
- sudo chown root:$USER /etc/fuse.conf
|
sudo chmod 666 /dev/fuse
|
||||||
- go run build/ci.go install
|
sudo chown root:$USER /etc/fuse.conf
|
||||||
- go run build/ci.go test -coverage $TEST_PACKAGES
|
go run build/ci.go install
|
||||||
|
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
|
||||||
|
QUORUM_IGNORE_TEST_PACKAGES=github.com/ethereum/go-ethereum/swarm go run build/ci.go test -coverage $TEST_PACKAGES
|
||||||
|
else
|
||||||
|
go run build/ci.go test -coverage $TEST_PACKAGES
|
||||||
|
fi
|
||||||
- if: tag IS blank
|
- if: tag IS blank
|
||||||
os: osx
|
os: osx
|
||||||
osx_image: xcode9.2 # so we don't have to deal with Kernel Extension Consent UI which is never possible in CI
|
osx_image: xcode9.2 # so we don't have to deal with Kernel Extension Consent UI which is never possible in CI
|
||||||
script:
|
script:
|
||||||
- brew update
|
- |
|
||||||
- brew install caskroom/cask/brew-cask
|
brew update
|
||||||
- brew cask install osxfuse
|
brew install caskroom/cask/brew-cask
|
||||||
- go run build/ci.go install
|
brew cask install osxfuse
|
||||||
- go run build/ci.go test -coverage $TEST_PACKAGES
|
go run build/ci.go install
|
||||||
|
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
|
||||||
|
QUORUM_IGNORE_TEST_PACKAGES=github.com/ethereum/go-ethereum/swarm go run build/ci.go test -coverage $TEST_PACKAGES
|
||||||
|
else
|
||||||
|
go run build/ci.go test -coverage $TEST_PACKAGES
|
||||||
|
fi
|
||||||
|
|
||||||
- if: tag IS present
|
- if: tag IS present
|
||||||
os: linux
|
os: linux
|
||||||
|
|
|
@ -329,6 +329,7 @@ func doTest(cmdline []string) {
|
||||||
packages = flag.CommandLine.Args()
|
packages = flag.CommandLine.Args()
|
||||||
}
|
}
|
||||||
packages = build.ExpandPackagesNoVendor(packages)
|
packages = build.ExpandPackagesNoVendor(packages)
|
||||||
|
packages = build.IgnorePackages(packages)
|
||||||
|
|
||||||
// Run the actual tests.
|
// Run the actual tests.
|
||||||
// Test a single package at a time. CI builders are slow
|
// Test a single package at a time. CI builders are slow
|
||||||
|
|
|
@ -177,3 +177,27 @@ func ExpandPackagesNoVendor(patterns []string) []string {
|
||||||
}
|
}
|
||||||
return patterns
|
return patterns
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Read QUORUM_IGNORE_TEST_PACKAGES env and remove from packages
|
||||||
|
func IgnorePackages(packages []string) []string {
|
||||||
|
ignore := os.Getenv("QUORUM_IGNORE_TEST_PACKAGES")
|
||||||
|
if ignore == "" {
|
||||||
|
return packages
|
||||||
|
}
|
||||||
|
ret := make([]string, 0, len(packages))
|
||||||
|
ignorePackages := strings.Split(ignore, ",")
|
||||||
|
|
||||||
|
for _, p := range packages {
|
||||||
|
mustInclude := true
|
||||||
|
for _, ig := range ignorePackages {
|
||||||
|
if strings.Index(p, strings.TrimSpace(ig)) == 0 {
|
||||||
|
mustInclude = false
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if mustInclude {
|
||||||
|
ret = append(ret, p)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
package build
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
testifyassert "github.com/stretchr/testify/assert"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestIgnorePackages_whenTypical(t *testing.T) {
|
||||||
|
assert := testifyassert.New(t)
|
||||||
|
|
||||||
|
arbitraryPackages := []string{"abc", "xyz/abc"}
|
||||||
|
|
||||||
|
actual := IgnorePackages(arbitraryPackages)
|
||||||
|
|
||||||
|
assert.Equal(arbitraryPackages, actual)
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestIgnorePackages_whenIgnoreOnePackage(t *testing.T) {
|
||||||
|
assert := testifyassert.New(t)
|
||||||
|
|
||||||
|
arbitraryPackages := []string{"abc", "xyz/abc"}
|
||||||
|
assert.NoError(os.Setenv("QUORUM_IGNORE_TEST_PACKAGES", "abc"))
|
||||||
|
|
||||||
|
actual := IgnorePackages(arbitraryPackages)
|
||||||
|
|
||||||
|
assert.Equal([]string{arbitraryPackages[1]}, actual)
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestIgnorePackages_whenIgnorePackages(t *testing.T) {
|
||||||
|
assert := testifyassert.New(t)
|
||||||
|
|
||||||
|
arbitraryPackages := []string{"abc", "xyz/abc/opq"}
|
||||||
|
assert.NoError(os.Setenv("QUORUM_IGNORE_TEST_PACKAGES", "abc, xyz/abc"))
|
||||||
|
|
||||||
|
actual := IgnorePackages(arbitraryPackages)
|
||||||
|
|
||||||
|
assert.Len(actual, 0)
|
||||||
|
}
|
Loading…
Reference in New Issue