Платформа ЦРНП "Мирокод" для разработки проектов
https://git.mirocod.ru
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
2.0 KiB
54 lines
2.0 KiB
#!/bin/bash |
|
# |
|
# Copyright 2017, Joe Tsai. All rights reserved. |
|
# Use of this source code is governed by a BSD-style |
|
# license that can be found in the LICENSE.md file. |
|
|
|
cd $(go list -f '{{ .Dir }}' github.com/dsnet/compress) |
|
|
|
BOLD="\x1b[1mRunning: " |
|
PASS="\x1b[32mPASS" |
|
FAIL="\x1b[31mFAIL" |
|
RESET="\x1b[0m" |
|
|
|
echo -e "${BOLD}fmt${RESET}" |
|
RET_FMT=$(find . -name "*.go" | egrep -v "/(_.*_|\..*|testdata)/" | xargs gofmt -d) |
|
if [[ ! -z "$RET_FMT" ]]; then echo "$RET_FMT"; echo; fi |
|
|
|
echo -e "${BOLD}test${RESET}" |
|
RET_TEST=$(go test -race ./... | egrep -v "^(ok|[?])\s+") |
|
if [[ ! -z "$RET_TEST" ]]; then echo "$RET_TEST"; echo; fi |
|
|
|
echo -e "${BOLD}staticcheck${RESET}" |
|
RET_SCHK=$(staticcheck \ |
|
-ignore " |
|
github.com/dsnet/compress/brotli/*.go:SA4016 |
|
github.com/dsnet/compress/brotli/*.go:S1023 |
|
github.com/dsnet/compress/brotli/*.go:U1000 |
|
github.com/dsnet/compress/bzip2/*.go:S1023 |
|
github.com/dsnet/compress/flate/*.go:U1000 |
|
github.com/dsnet/compress/internal/cgo/lzma/*.go:SA4000 |
|
github.com/dsnet/compress/internal/prefix/*.go:S1004 |
|
github.com/dsnet/compress/internal/prefix/*.go:S1023 |
|
github.com/dsnet/compress/internal/prefix/*.go:SA4016 |
|
github.com/dsnet/compress/internal/tool/bench/*.go:S1007 |
|
github.com/dsnet/compress/xflate/internal/meta/*.go:S1023 |
|
" ./... 2>&1) |
|
if [[ ! -z "$RET_SCHK" ]]; then echo "$RET_SCHK"; echo; fi |
|
|
|
echo -e "${BOLD}lint${RESET}" |
|
RET_LINT=$(golint ./... 2>&1 | |
|
egrep -v "^vendor/" | |
|
egrep -v "should have comment(.*)or be unexported" | |
|
egrep -v "^(.*)type name will be used as(.*)by other packages" | |
|
egrep -v "^brotli/transform.go:(.*)replace i [+]= 1 with i[+]{2}" | |
|
egrep -v "^internal/prefix/prefix.go:(.*)replace symBits(.*) [-]= 1 with symBits(.*)[-]{2}" | |
|
egrep -v "^xflate/common.go:(.*)NoCompression should be of the form" | |
|
egrep -v "^exit status") |
|
if [[ ! -z "$RET_LINT" ]]; then echo "$RET_LINT"; echo; fi |
|
|
|
if [[ ! -z "$RET_FMT" ]] || [ ! -z "$RET_TEST" ] || [[ ! -z "$RET_SCHK" ]] || [[ ! -z "$RET_LINT" ]]; then |
|
echo -e "${FAIL}${RESET}"; exit 1 |
|
else |
|
echo -e "${PASS}${RESET}"; exit 0 |
|
fi
|
|
|