diff --git a/.travis.yml b/.travis.yml index a36e4da..2bf6f2a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -23,6 +23,7 @@ before_install: install: - make get-deps + - make get-tools script: - make diff --git a/Makefile b/Makefile index 57bb2af..c3e216b 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ all: check test integration-test .PHONY: check -check: .check-fmt .check-vet .check-lint .check-misspell .check-ineffassign +check: .check-fmt .check-vet .check-lint .check-ineffassign .check-mega .check-misspell .PHONY: .check-fmt .check-fmt: @@ -15,14 +15,18 @@ check: .check-fmt .check-vet .check-lint .check-misspell .check-ineffassign .check-lint: @golint -set_exit_status ./... -.PHONY: .check-misspell -.check-misspell: - @misspell ./... - .PHONY: .check-ineffassign .check-ineffassign: @ineffassign . +.PHONY: .check-mega +.check-mega: + @megacheck ./... + +.PHONY: .check-misspell +.check-misspell: + @misspell ./... + .PHONY: test test: @go test -cover -race ./... @@ -35,6 +39,19 @@ integration-test: get-deps: go get -t ./... - go get -u github.com/golang/lint/golint - go get -u github.com/client9/misspell/cmd/misspell - go get -u github.com/gordonklaus/ineffassign +ifndef GOBIN +export GOBIN := $(GOPATH)/bin +endif + +.PHONY: get-tools +get-tools: GOPATH := $(shell mktemp -d) +get-tools: + @echo "==> Installing tools at $(GOBIN)..." + @mkdir -p $(GOBIN) + + @go get -u github.com/golang/lint/golint + @go get -u github.com/client9/misspell/cmd/misspell + @go get -u github.com/gordonklaus/ineffassign + @go get -u honnef.co/go/tools/cmd/megacheck + + @rm -Rf $(GOPATH) diff --git a/common_test.go b/common_test.go index e04ad6c..01044a3 100644 --- a/common_test.go +++ b/common_test.go @@ -2,6 +2,8 @@ // Use of this source code is governed by a ALv2-style // license that can be found in the LICENSE file. +// +build all integration + package gocqlx_test import ( diff --git a/gocqlx.go b/gocqlx.go index e2a6323..92c20b5 100644 --- a/gocqlx.go +++ b/gocqlx.go @@ -55,10 +55,8 @@ func isScannable(t reflect.Type) bool { // it's not important that we use the right mapper for this particular object, // we're only concerned on how many exported fields this struct has m := DefaultMapper - if len(m.TypeMap(t).Index) == 0 { - return true - } - return false + + return len(m.TypeMap(t).Index) == 0 } // fieldsByName fills a values interface with fields from the passed value based diff --git a/qb/batch.go b/qb/batch.go index 3091bfe..1642dda 100644 --- a/qb/batch.go +++ b/qb/batch.go @@ -12,11 +12,6 @@ import ( // BATCH reference: // https://cassandra.apache.org/doc/latest/cql/dml.html#batch -// builder is interface implemented by other builders. -type builder interface { - ToCql() (stmt string, names []string) -} - // BatchBuilder builds CQL BATCH statements. type BatchBuilder struct { unlogged bool