Files
zapdb/test.sh
Ibrahim Jarif 8199632ed4 Run all tests on CI (#1189)
This could possibly be a bug in `go test` command
https://github.com/golang/go/issues/36527 .

The `go test` command would skip tests in sub-packages if
the top-level package has a `custom flag` defined and the
sub-packages don't define it.

Issue https://github.com/golang/go/issues/36527#issue-548887632
has an example of this.

This PR also removes the code from the test that would unnecessary
start a web server. I see two problems here
1. An unnecessary web server running.
2. We cannot run multiple tests are the same time since the second
    run of the test would try to start a web server and
    crash saying `port already in use`.

(cherry picked from commit dd7888efdd)
2020-03-24 15:44:33 +05:30

47 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
set -e
go version
packages=$(go list ./... | grep github.com/dgraph-io/badger/v2/)
if [[ ! -z "$TEAMCITY_VERSION" ]]; then
export GOFLAGS="-json"
fi
# Ensure that we can compile the binary.
pushd badger
go build -v .
popd
# Run the memory intensive tests first.
go test -v -run='TestBigKeyValuePairs$' --manual=true
go test -v -run='TestPushValueLogLimit' --manual=true
# Run the special Truncate test.
rm -rf p
go test -v -run='TestTruncateVlogNoClose$' --manual=true
truncate --size=4096 p/000000.vlog
go test -v -run='TestTruncateVlogNoClose2$' --manual=true
go test -v -run='TestTruncateVlogNoClose3$' --manual=true
rm -rf p
# Then the normal tests.
echo
echo "==> Starting test for table, skl and y package"
go test -v -race github.com/dgraph-io/badger/v2/skl
# Run test for all package except the top level package. The top level package support the
# `vlog_mmap` flag which rest of the packages don't support.
go test -v -race $packages
echo
echo "==> Starting tests with value log mmapped..."
# Run top level package tests with mmap flag.
go test -v -race github.com/dgraph-io/badger/v2 --vlog_mmap=true
echo
echo "==> Starting tests with value log not mmapped..."
go test -v -race github.com/dgraph-io/badger/v2 --vlog_mmap=false