Include formatting check to the make test (and thus also check) rule (#1366)
				
					
				
			* Include formatting check to the `make check` rule ... and give it its own standalone target too (make fmt-check) Show diff on fmt-check failure Do not allow running "fmt-check" with incompatible go version Also simplify the `fmt` rule * Forbid running "make fmt" with Go version != 1.7 or 1.8 * Ignore bindata.go for spelling and formatting checks also remove duplicated variable assignment for GOFILES * Run `make fmt`
This commit is contained in:
		
							parent
							
								
									6ec07a6bd7
								
							
						
					
					
						commit
						f6b58964d7
					
				
							
								
								
									
										22
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								Makefile
									
									
									
									
									
								
							| @ -4,6 +4,8 @@ BINDATA := modules/{options,public,templates}/bindata.go | ||||
| STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less) | ||||
| JAVASCRIPTS := | ||||
| DOCKER_TAG := gitea/gitea:latest | ||||
| GOFILES := $(shell find . -name "*.go" -type f -not -path "./vendor/*" -not -path "*/bindata.go") | ||||
| GOFMT ?= gofmt -s | ||||
| 
 | ||||
| GOFLAGS := -i -v | ||||
| EXTRA_GOFLAGS ?= | ||||
| @ -12,7 +14,6 @@ LDFLAGS := -X "main.Version=$(shell git describe --tags --always | sed 's/-/+/' | ||||
| 
 | ||||
| PACKAGES ?= $(filter-out code.gitea.io/gitea/integrations,$(shell go list ./... | grep -v /vendor/)) | ||||
| SOURCES ?= $(shell find . -name "*.go" -type f) | ||||
| GOFILES := $(shell find . -name "*.go" -type f -not -path "./vendor/*") | ||||
| 
 | ||||
| TAGS ?= | ||||
| 
 | ||||
| @ -42,9 +43,12 @@ clean: | ||||
| 	go clean -i ./... | ||||
| 	rm -rf $(EXECUTABLE) $(DIST) $(BINDATA) | ||||
| 
 | ||||
| required-gofmt-version: | ||||
| 	@go version  | grep -q '\(1.7\|1.8\)' || { echo "We require go version 1.7 or 1.8 to format code" >&2 && exit 1; } | ||||
| 
 | ||||
| .PHONY: fmt | ||||
| fmt: | ||||
| 	find . -name "*.go" -type f -not -path "./vendor/*" | xargs gofmt -s -w | ||||
| fmt: required-gofmt-version | ||||
| 	$(GOFMT) -w $(GOFILES) | ||||
| 
 | ||||
| .PHONY: vet | ||||
| vet: | ||||
| @ -88,8 +92,18 @@ misspell: | ||||
| 	fi | ||||
| 	misspell -w -i unknwon $(GOFILES) | ||||
| 
 | ||||
| .PHONY: fmt-check | ||||
| fmt-check: required-gofmt-version | ||||
| 	# get all go files and run go fmt on them | ||||
| 	@diff=$$($(GOFMT) -d $(GOFILES)); \
 | ||||
| 	if [ -n "$$diff" ]; then \
 | ||||
| 		echo "Please run 'make fmt' and commit the result:"; \
 | ||||
| 		echo "$${diff}"; \
 | ||||
| 		exit 1; \
 | ||||
| 	fi; | ||||
| 
 | ||||
| .PHONY: test | ||||
| test: | ||||
| test: fmt-check | ||||
| 	go test $(PACKAGES) | ||||
| 
 | ||||
| .PHONY: test-coverage | ||||
|  | ||||
| @ -11,8 +11,8 @@ import ( | ||||
| 	"code.gitea.io/gitea/modules/markdown" | ||||
| 	"code.gitea.io/gitea/modules/setting" | ||||
| 
 | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| 	"github.com/Unknwon/com" | ||||
| 	"github.com/stretchr/testify/assert" | ||||
| ) | ||||
| 
 | ||||
| func TestRepo(t *testing.T) { | ||||
|  | ||||
| @ -177,7 +177,7 @@ var ( | ||||
| 
 | ||||
| 		// Repository local settings
 | ||||
| 		Local struct { | ||||
| 			LocalCopyPath       string | ||||
| 			LocalCopyPath string | ||||
| 		} `ini:"-"` | ||||
| 	}{ | ||||
| 		AnsiCharset:            "", | ||||
| @ -214,7 +214,7 @@ var ( | ||||
| 
 | ||||
| 		// Repository local settings
 | ||||
| 		Local: struct { | ||||
| 			LocalCopyPath  string | ||||
| 			LocalCopyPath string | ||||
| 		}{ | ||||
| 			LocalCopyPath: "tmp/local-repo", | ||||
| 		}, | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user