New go-getter test dep
This commit is contained in:
parent
2ea7b841aa
commit
90f6a60f45
65
vendor/github.com/hashicorp/go-sockaddr/GNUmakefile
generated
vendored
Normal file
65
vendor/github.com/hashicorp/go-sockaddr/GNUmakefile
generated
vendored
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
TOOLS= golang.org/x/tools/cover
|
||||||
|
GOCOVER_TMPFILE?= $(GOCOVER_FILE).tmp
|
||||||
|
GOCOVER_FILE?= .cover.out
|
||||||
|
GOCOVERHTML?= coverage.html
|
||||||
|
FIND=`/usr/bin/which 2> /dev/null gfind find | /usr/bin/grep -v ^no | /usr/bin/head -n 1`
|
||||||
|
XARGS=`/usr/bin/which 2> /dev/null gxargs xargs | /usr/bin/grep -v ^no | /usr/bin/head -n 1`
|
||||||
|
|
||||||
|
test:: $(GOCOVER_FILE)
|
||||||
|
@$(MAKE) -C cmd/sockaddr test
|
||||||
|
|
||||||
|
cover:: coverage_report
|
||||||
|
|
||||||
|
$(GOCOVER_FILE)::
|
||||||
|
@${FIND} . -type d ! -path '*cmd*' ! -path '*.git*' -print0 | ${XARGS} -0 -I % sh -ec "cd % && rm -f $(GOCOVER_TMPFILE) && go test -coverprofile=$(GOCOVER_TMPFILE)"
|
||||||
|
|
||||||
|
@echo 'mode: set' > $(GOCOVER_FILE)
|
||||||
|
@${FIND} . -type f ! -path '*cmd*' ! -path '*.git*' -name "$(GOCOVER_TMPFILE)" -print0 | ${XARGS} -0 -n1 cat $(GOCOVER_TMPFILE) | grep -v '^mode: ' >> ${PWD}/$(GOCOVER_FILE)
|
||||||
|
|
||||||
|
$(GOCOVERHTML): $(GOCOVER_FILE)
|
||||||
|
go tool cover -html=$(GOCOVER_FILE) -o $(GOCOVERHTML)
|
||||||
|
|
||||||
|
coverage_report:: $(GOCOVER_FILE)
|
||||||
|
go tool cover -html=$(GOCOVER_FILE)
|
||||||
|
|
||||||
|
audit_tools::
|
||||||
|
@go get -u github.com/golang/lint/golint && echo "Installed golint:"
|
||||||
|
@go get -u github.com/fzipp/gocyclo && echo "Installed gocyclo:"
|
||||||
|
@go get -u github.com/remyoudompheng/go-misc/deadcode && echo "Installed deadcode:"
|
||||||
|
@go get -u github.com/client9/misspell/cmd/misspell && echo "Installed misspell:"
|
||||||
|
@go get -u github.com/gordonklaus/ineffassign && echo "Installed ineffassign:"
|
||||||
|
|
||||||
|
audit::
|
||||||
|
deadcode
|
||||||
|
go tool vet -all *.go
|
||||||
|
go tool vet -shadow=true *.go
|
||||||
|
golint *.go
|
||||||
|
ineffassign .
|
||||||
|
gocyclo -over 65 *.go
|
||||||
|
misspell *.go
|
||||||
|
|
||||||
|
clean::
|
||||||
|
rm -f $(GOCOVER_FILE) $(GOCOVERHTML)
|
||||||
|
|
||||||
|
dev::
|
||||||
|
@go build
|
||||||
|
@$(MAKE) -B -C cmd/sockaddr sockaddr
|
||||||
|
|
||||||
|
install::
|
||||||
|
@go install
|
||||||
|
@$(MAKE) -C cmd/sockaddr install
|
||||||
|
|
||||||
|
doc::
|
||||||
|
@echo Visit: http://127.0.0.1:6161/pkg/github.com/hashicorp/go-sockaddr/
|
||||||
|
godoc -http=:6161 -goroot $GOROOT
|
||||||
|
|
||||||
|
world::
|
||||||
|
@set -e; \
|
||||||
|
for os in solaris darwin freebsd linux windows; do \
|
||||||
|
for arch in amd64; do \
|
||||||
|
printf "Building on %s-%s\n" "$${os}" "$${arch}" ; \
|
||||||
|
env GOOS="$${os}" GOARCH="$${arch}" go build -o /dev/null; \
|
||||||
|
done; \
|
||||||
|
done
|
||||||
|
|
||||||
|
$(MAKE) -C cmd/sockaddr world
|
21
vendor/github.com/mitchellh/go-testing-interface/LICENSE
generated
vendored
Normal file
21
vendor/github.com/mitchellh/go-testing-interface/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2016 Mitchell Hashimoto
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
52
vendor/github.com/mitchellh/go-testing-interface/README.md
generated
vendored
Normal file
52
vendor/github.com/mitchellh/go-testing-interface/README.md
generated
vendored
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
# go-testing-interface
|
||||||
|
|
||||||
|
go-testing-interface is a Go library that exports an interface that
|
||||||
|
`*testing.T` implements as well as a runtime version you can use in its
|
||||||
|
place.
|
||||||
|
|
||||||
|
The purpose of this library is so that you can export test helpers as a
|
||||||
|
public API without depending on the "testing" package, since you can't
|
||||||
|
create a `*testing.T` struct manually. This lets you, for example, use the
|
||||||
|
public testing APIs to generate mock data at runtime, rather than just at
|
||||||
|
test time.
|
||||||
|
|
||||||
|
## Usage & Example
|
||||||
|
|
||||||
|
For usage and examples see the [Godoc](http://godoc.org/github.com/mitchellh/go-testing-interface).
|
||||||
|
|
||||||
|
Given a test helper written using `go-testing-interface` like this:
|
||||||
|
|
||||||
|
import "github.com/mitchellh/go-testing-interface"
|
||||||
|
|
||||||
|
func TestHelper(t testing.T) {
|
||||||
|
t.Fatal("I failed")
|
||||||
|
}
|
||||||
|
|
||||||
|
You can call the test helper in a real test easily:
|
||||||
|
|
||||||
|
import "testing"
|
||||||
|
|
||||||
|
func TestThing(t *testing.T) {
|
||||||
|
TestHelper(t)
|
||||||
|
}
|
||||||
|
|
||||||
|
You can also call the test helper at runtime if needed:
|
||||||
|
|
||||||
|
import "github.com/mitchellh/go-testing-interface"
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
TestHelper(&testing.RuntimeT{})
|
||||||
|
}
|
||||||
|
|
||||||
|
## Why?!
|
||||||
|
|
||||||
|
**Why would I call a test helper that takes a *testing.T at runtime?**
|
||||||
|
|
||||||
|
You probably shouldn't. The only use case I've seen (and I've had) for this
|
||||||
|
is to implement a "dev mode" for a service where the test helpers are used
|
||||||
|
to populate mock data, create a mock DB, perhaps run service dependencies
|
||||||
|
in-memory, etc.
|
||||||
|
|
||||||
|
Outside of a "dev mode", I've never seen a use case for this and I think
|
||||||
|
there shouldn't be one since the point of the `testing.T` interface is that
|
||||||
|
you can fail immediately.
|
70
vendor/github.com/mitchellh/go-testing-interface/testing.go
generated
vendored
Normal file
70
vendor/github.com/mitchellh/go-testing-interface/testing.go
generated
vendored
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
package testing
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
|
)
|
||||||
|
|
||||||
|
// T is the interface that mimics the standard library *testing.T.
|
||||||
|
//
|
||||||
|
// In unit tests you can just pass a *testing.T struct. At runtime, outside
|
||||||
|
// of tests, you can pass in a RuntimeT struct from this package.
|
||||||
|
type T interface {
|
||||||
|
Error(args ...interface{})
|
||||||
|
Errorf(format string, args ...interface{})
|
||||||
|
Fatal(args ...interface{})
|
||||||
|
Fatalf(format string, args ...interface{})
|
||||||
|
Fail()
|
||||||
|
FailNow()
|
||||||
|
Failed() bool
|
||||||
|
Log(args ...interface{})
|
||||||
|
Logf(format string, args ...interface{})
|
||||||
|
}
|
||||||
|
|
||||||
|
// RuntimeT implements T and can be instantiated and run at runtime to
|
||||||
|
// mimic *testing.T behavior. Unlike *testing.T, this will simply panic
|
||||||
|
// for calls to Fatal. For calls to Error, you'll have to check the errors
|
||||||
|
// list to determine whether to exit yourself.
|
||||||
|
type RuntimeT struct {
|
||||||
|
failed bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Error(args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintln(args...))
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Errorf(format string, args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintf(format, args...))
|
||||||
|
t.Fail()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Fatal(args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintln(args...))
|
||||||
|
t.FailNow()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Fatalf(format string, args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintf(format, args...))
|
||||||
|
t.FailNow()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Fail() {
|
||||||
|
t.failed = true
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) FailNow() {
|
||||||
|
panic("testing.T failed, see logs for output (if any)")
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Failed() bool {
|
||||||
|
return t.failed
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Log(args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintln(args...))
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *RuntimeT) Logf(format string, args ...interface{}) {
|
||||||
|
log.Println(fmt.Sprintf(format, args...))
|
||||||
|
}
|
6
vendor/vendor.json
vendored
6
vendor/vendor.json
vendored
|
@ -981,6 +981,12 @@
|
||||||
"revision": "4fdf99ab29366514c69ccccddab5dc58b8d84062",
|
"revision": "4fdf99ab29366514c69ccccddab5dc58b8d84062",
|
||||||
"revisionTime": "2017-03-09T13:30:38Z"
|
"revisionTime": "2017-03-09T13:30:38Z"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"checksumSHA1": "j83WZHiKiPF86Hj5QMQdWboizls=",
|
||||||
|
"path": "github.com/mitchellh/go-testing-interface",
|
||||||
|
"revision": "477c2d05a845d8b55912a5a7993b9b24abcc5ef8",
|
||||||
|
"revisionTime": "2017-04-30T14:07:22Z"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"path": "github.com/mitchellh/hashstructure",
|
"path": "github.com/mitchellh/hashstructure",
|
||||||
"revision": "1ef5c71b025aef149d12346356ac5973992860bc"
|
"revision": "1ef5c71b025aef149d12346356ac5973992860bc"
|
||||||
|
|
Loading…
Reference in a new issue