mirror of
				https://gitee.com/gitea/gitea
				synced 2025-11-04 16:40:24 +08:00 
			
		
		
		
	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:
		
				
					committed by
					
						
						Bo-Yi Wu
					
				
			
			
				
	
			
			
			
						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)
 | 
					STYLESHEETS := $(wildcard public/less/index.less public/less/_*.less)
 | 
				
			||||||
JAVASCRIPTS :=
 | 
					JAVASCRIPTS :=
 | 
				
			||||||
DOCKER_TAG := gitea/gitea:latest
 | 
					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
 | 
					GOFLAGS := -i -v
 | 
				
			||||||
EXTRA_GOFLAGS ?=
 | 
					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/))
 | 
					PACKAGES ?= $(filter-out code.gitea.io/gitea/integrations,$(shell go list ./... | grep -v /vendor/))
 | 
				
			||||||
SOURCES ?= $(shell find . -name "*.go" -type f)
 | 
					SOURCES ?= $(shell find . -name "*.go" -type f)
 | 
				
			||||||
GOFILES := $(shell find . -name "*.go" -type f -not -path "./vendor/*")
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
TAGS ?=
 | 
					TAGS ?=
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -42,9 +43,12 @@ clean:
 | 
				
			|||||||
	go clean -i ./...
 | 
						go clean -i ./...
 | 
				
			||||||
	rm -rf $(EXECUTABLE) $(DIST) $(BINDATA)
 | 
						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
 | 
					.PHONY: fmt
 | 
				
			||||||
fmt:
 | 
					fmt: required-gofmt-version
 | 
				
			||||||
	find . -name "*.go" -type f -not -path "./vendor/*" | xargs gofmt -s -w
 | 
						$(GOFMT) -w $(GOFILES)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.PHONY: vet
 | 
					.PHONY: vet
 | 
				
			||||||
vet:
 | 
					vet:
 | 
				
			||||||
@@ -88,8 +92,18 @@ misspell:
 | 
				
			|||||||
	fi
 | 
						fi
 | 
				
			||||||
	misspell -w -i unknwon $(GOFILES)
 | 
						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
 | 
					.PHONY: test
 | 
				
			||||||
test:
 | 
					test: fmt-check
 | 
				
			||||||
	go test $(PACKAGES)
 | 
						go test $(PACKAGES)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
.PHONY: test-coverage
 | 
					.PHONY: test-coverage
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -11,8 +11,8 @@ import (
 | 
				
			|||||||
	"code.gitea.io/gitea/modules/markdown"
 | 
						"code.gitea.io/gitea/modules/markdown"
 | 
				
			||||||
	"code.gitea.io/gitea/modules/setting"
 | 
						"code.gitea.io/gitea/modules/setting"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"github.com/stretchr/testify/assert"
 | 
					 | 
				
			||||||
	"github.com/Unknwon/com"
 | 
						"github.com/Unknwon/com"
 | 
				
			||||||
 | 
						"github.com/stretchr/testify/assert"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func TestRepo(t *testing.T) {
 | 
					func TestRepo(t *testing.T) {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -177,7 +177,7 @@ var (
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		// Repository local settings
 | 
							// Repository local settings
 | 
				
			||||||
		Local struct {
 | 
							Local struct {
 | 
				
			||||||
			LocalCopyPath       string
 | 
								LocalCopyPath string
 | 
				
			||||||
		} `ini:"-"`
 | 
							} `ini:"-"`
 | 
				
			||||||
	}{
 | 
						}{
 | 
				
			||||||
		AnsiCharset:            "",
 | 
							AnsiCharset:            "",
 | 
				
			||||||
@@ -214,7 +214,7 @@ var (
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		// Repository local settings
 | 
							// Repository local settings
 | 
				
			||||||
		Local: struct {
 | 
							Local: struct {
 | 
				
			||||||
			LocalCopyPath  string
 | 
								LocalCopyPath string
 | 
				
			||||||
		}{
 | 
							}{
 | 
				
			||||||
			LocalCopyPath: "tmp/local-repo",
 | 
								LocalCopyPath: "tmp/local-repo",
 | 
				
			||||||
		},
 | 
							},
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user