Merge pull request #374 from nspcc-dev/makefile-and-gofmt

Makefile convenience targets and gofmt
This commit is contained in:
Roman Khimov 2019-09-09 15:05:12 +03:00 committed by GitHub
commit a039ae6cdb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
20 changed files with 68 additions and 35 deletions

View file

@ -13,6 +13,11 @@ executors:
- image: circleci/golang:1.12
environment:
GO111MODULE: "on"
go1_13:
docker:
- image: circleci/golang:1.13
environment:
GO111MODULE: "on"
commands:
gomod:
@ -29,7 +34,7 @@ commands:
jobs:
lint:
working_directory: /go/src/github.com/CityOfZion/neo-go
executor: go1_12
executor: go1_13
steps:
- checkout
- gomod
@ -41,7 +46,7 @@ jobs:
vet:
working_directory: /go/src/github.com/CityOfZion/neo-go
executor: go1_12
executor: go1_13
steps:
- checkout
- gomod
@ -60,6 +65,14 @@ jobs:
test_1_12:
working_directory: /go/src/github.com/CityOfZion/neo-go
executor: go1_12
steps:
- checkout
- gomod
- run: go test -v -race ./...
test_1_13:
working_directory: /go/src/github.com/CityOfZion/neo-go
executor: go1_13
steps:
- checkout
- gomod
@ -118,6 +131,10 @@ workflows:
filters:
tags:
only: v/[0-9]+\.[0-9]+\.[0-9]+/
- test_1_13:
filters:
tags:
only: v/[0-9]+\.[0-9]+\.[0-9]+/
- build_cli:
filters:
tags:

4
.gitignore vendored
View file

@ -40,3 +40,7 @@ blockchains/
# patch
*.orig
*.rej
# Coverage
coverage.txt
coverage.html

View file

@ -7,6 +7,11 @@ REPO ?= "$(shell go list -m)"
VERSION ?= "$(shell git describe --tags 2>/dev/null | sed 's/^v//')"
BUILD_FLAGS = "-X $(REPO)/config.Version=$(VERSION)"
# All of the targets are phony here because we don't really use make dependency
# tracking for files
.PHONY: build deps image check-version clean-cluster push-tag push-to-registry \
run run-cluster test vet lint fmt cover
build: deps
@echo "=> Building binary"
@set -x \
@ -60,3 +65,13 @@ test:
vet:
@go vet ./...
lint:
@go list ./... | xargs -L1 golint -set_exit_status
fmt:
@gofmt -l -w -s $$(find . -type f -name '*.go'| grep -v "/vendor/")
cover:
@go test -v -race ./... -coverprofile=coverage.txt -covermode=atomic
@go tool cover -html=coverage.txt -o coverage.html

View file

@ -16,11 +16,11 @@ const (
userAgentFormat = "/NEO-GO:%s/"
// ModeMainNet contains magic code used in the NEO main official network.
ModeMainNet NetMode = 0x00746e41 // 7630401
ModeMainNet NetMode = 0x00746e41 // 7630401
// ModeTestNet contains magic code used in the NEO testing network.
ModeTestNet NetMode = 0x74746e41 // 1953787457
ModeTestNet NetMode = 0x74746e41 // 1953787457
// ModePrivNet contains magic code usually used for NEO private networks.
ModePrivNet NetMode = 56753 // docker privnet
ModePrivNet NetMode = 56753 // docker privnet
// ModeUnitTestNet is a stub magic code used for testing purposes.
ModeUnitTestNet NetMode = 0
)

View file

@ -176,7 +176,7 @@ func TestBinBlockDecodeEncode(t *testing.T) {
func TestBlockSizeCalculation(t *testing.T) {
// block taken from mainnet: 0006d3ff96e269f599eb1b5c5a527c218439e498dcc65b63794591bbcdc0516b
// The Size in golang is given by counting the number of bytes of an object. (len(Bytes))
// its implementation is different from the corresponding C# and python implentation. But the result should
// its implementation is different from the corresponding C# and python implementations. But the result should
// should be the same.In this test we provide more details then necessary because in case of failure we can easily debug the
// root cause of the size calculation missmatch.
@ -250,7 +250,6 @@ func TestBlockSizeCalculation(t *testing.T) {
assert.Equal(t, "552102486fd15702c4490a26703112a5cc1d0923fd697a33406bd5a1c00e0013b09a7021024c7b7fb6c310fccf1ba33b082519d82964ea93868d676662d4a59ad548df0e7d2102aaec38470f6aad0042c6e877cfd8087d2676b0f516fddd362801b9bd3936399e2103b209fd4f53a7170ea4444e0cb0a6bb6a53c2bd016926989cf85f9b0fba17a70c2103b8d9d5771d8f513aa0869b9cc8d50986403b78c6da36890638c3d46a5adce04a2102ca0e27697b9c248f6f16e085fd0061e26f44da85b58ee835c110caa5ec3ba5542102df48f60e8f3e01c48ff40b9b7f1310d7a8b2a193188befe1c2e3df740e89509357ae", hex.EncodeToString(b.Script.VerificationScript))
assert.Equal(t, "0006d3ff96e269f599eb1b5c5a527c218439e498dcc65b63794591bbcdc0516b", b.Hash().ReverseString())
buf := new(bytes.Buffer)
err = b.EncodeBinary(buf)

View file

@ -67,7 +67,7 @@ func (attr *Attribute) EncodeBinary(w io.Writer) error {
var urllen = uint8(len(attr.Data))
bw.WriteLE(urllen)
fallthrough
case Script, ContractHash, Vote, Hash1, Hash2, Hash3, Hash4, Hash5, Hash6,
case Script, ContractHash, Vote, Hash1, Hash2, Hash3, Hash4, Hash5, Hash6,
Hash7, Hash8, Hash9, Hash10, Hash11, Hash12, Hash13, Hash14, Hash15:
bw.WriteLE(attr.Data)
default:

View file

@ -13,7 +13,7 @@ type InvocationTX struct {
Script []byte
// Gas cost of the smart contract.
Gas util.Fixed8
Gas util.Fixed8
Version uint8
}
@ -36,7 +36,7 @@ func NewInvocationTX(script []byte) *Transaction {
func (tx *InvocationTX) DecodeBinary(r io.Reader) error {
br := util.BinReader{R: r}
tx.Script = br.ReadBytes()
if (tx.Version >= 1) {
if tx.Version >= 1 {
br.ReadLE(&tx.Gas)
} else {
tx.Gas = util.Fixed8FromInt64(0)
@ -48,7 +48,7 @@ func (tx *InvocationTX) DecodeBinary(r io.Reader) error {
func (tx *InvocationTX) EncodeBinary(w io.Writer) error {
bw := util.BinWriter{W: w}
bw.WriteBytes(tx.Script)
if (tx.Version >= 1) {
if tx.Version >= 1 {
bw.WriteLE(tx.Gas)
}
return bw.Err
@ -57,7 +57,7 @@ func (tx *InvocationTX) EncodeBinary(w io.Writer) error {
// Size returns serialized binary size for this transaction.
func (tx *InvocationTX) Size() int {
sz := util.GetVarSize(tx.Script)
if (tx.Version >= 1) {
if tx.Version >= 1 {
sz += tx.Gas.Size()
}
return sz

View file

@ -40,7 +40,6 @@ func NEP2ScryptParams() ScryptParams {
}
}
// NEP2Encrypt encrypts a the PrivateKey using a given passphrase
// under the NEP-2 standard.
func NEP2Encrypt(priv *PrivateKey, passphrase string) (s string, err error) {

View file

@ -5,11 +5,10 @@ import (
"strings"
"testing"
"github.com/stretchr/testify/assert"
"github.com/CityOfZion/neo-go/pkg/internal/keytestcases"
"github.com/stretchr/testify/assert"
)
func TestPrivateKey(t *testing.T) {
for _, testCase := range keytestcases.Arr {
privKey, err := NewPrivateKeyFromHex(testCase.PrivateKey)

View file

@ -11,8 +11,8 @@ import (
"io"
"math/big"
"github.com/CityOfZion/neo-go/pkg/crypto/hash"
"github.com/CityOfZion/neo-go/pkg/crypto"
"github.com/CityOfZion/neo-go/pkg/crypto/hash"
"github.com/pkg/errors"
)
@ -150,7 +150,7 @@ func (p *PublicKey) DecodeBinary(r io.Reader) error {
return err
}
x = new(big.Int).SetBytes(xbytes)
ylsb := uint(prefix&0x1)
ylsb := uint(prefix & 0x1)
y, err = decodeCompressedY(x, ylsb)
if err != nil {
return err

View file

@ -99,7 +99,7 @@ func (wif WIF) GetVerificationScript() []byte {
)
var (
vScript []byte
pubkey *PublicKey
pubkey *PublicKey
)
pubkey = wif.PrivateKey.PublicKey()
vScript = append([]byte{pushbytes33}, pubkey.Bytes()...)

View file

@ -352,5 +352,5 @@ func (s *Server) RelayDirectly(p Peer, inv *payload.Inventory) {
}
func init() {
rand.Seed(time.Now().UTC().UnixNano())
rand.Seed(time.Now().UTC().UnixNano())
}

View file

@ -7,8 +7,8 @@ package rpc
import (
"github.com/CityOfZion/neo-go/pkg/core/transaction"
"github.com/CityOfZion/neo-go/pkg/util"
"github.com/CityOfZion/neo-go/pkg/crypto/keys"
"github.com/CityOfZion/neo-go/pkg/util"
)
type (

View file

@ -12,11 +12,11 @@ import (
// AccountState wrapper used for the representation of
// core.AccountState on the RPC Server.
type AccountState struct {
Version uint8 `json:"version"`
ScriptHash util.Uint160 `json:"script_hash"`
IsFrozen bool `json:"frozen"`
Version uint8 `json:"version"`
ScriptHash util.Uint160 `json:"script_hash"`
IsFrozen bool `json:"frozen"`
Votes []*keys.PublicKey `json:"votes"`
Balances []Balance `json:"balances"`
Balances []Balance `json:"balances"`
}
// Balances type for sorting balances in rpc response

View file

@ -170,9 +170,9 @@ func TestVarSize(t *testing.T) {
"test_string_3",
41,
},
{[]*smthSerializable{&smthSerializable{}, &smthSerializable{}},
{[]*smthSerializable{{}, {}},
"test_Serializable",
2 * 42 + 1,
2*42 + 1,
},
}

View file

@ -361,7 +361,7 @@ func (c *codegen) Visit(node ast.Node) ast.Visitor {
case token.LOR:
ast.Walk(c, n.X)
emitJmp(c.prog, vm.JMPIF, int16(len(c.l) - 3))
emitJmp(c.prog, vm.JMPIF, int16(len(c.l)-3))
ast.Walk(c, n.Y)
return nil

View file

@ -18,7 +18,7 @@ type testCase struct {
func run_testcases(t *testing.T, tcases []testCase) {
for _, tcase := range tcases {
t.Run(tcase.name, func(t *testing.T) {eval(t, tcase.src, tcase.result)})
t.Run(tcase.name, func(t *testing.T) { eval(t, tcase.src, tcase.result) })
}
}

View file

@ -7,8 +7,8 @@ import (
"log"
"math/big"
"os"
"text/tabwriter"
"reflect"
"text/tabwriter"
"github.com/CityOfZion/neo-go/pkg/crypto/hash"
"github.com/CityOfZion/neo-go/pkg/util"
@ -311,7 +311,7 @@ func (v *VM) execute(ctx *Context, op Instruction) {
l := int(v.estack.Pop().BigInt().Int64())
o := int(v.estack.Pop().BigInt().Int64())
s := v.estack.Pop().Bytes()
v.estack.PushVal(s[o:o+l])
v.estack.PushVal(s[o : o+l])
case LEFT:
l := int(v.estack.Pop().BigInt().Int64())
s := v.estack.Pop().Bytes()
@ -419,7 +419,7 @@ func (v *VM) execute(ctx *Context, op Instruction) {
case EQUAL:
b := v.estack.Pop()
a := v.estack.Pop()
v.estack.PushVal(reflect.DeepEqual(a,b))
v.estack.PushVal(reflect.DeepEqual(a, b))
// Bit operations.
case INVERT:

View file

@ -789,9 +789,9 @@ func TestUNPACKGood(t *testing.T) {
assert.Equal(t, 5, vm.estack.Len())
assert.Equal(t, int64(len(elements)), vm.estack.Peek(0).BigInt().Int64())
for k, v := range elements {
assert.Equal(t, int64(v), vm.estack.Peek(k + 1).BigInt().Int64())
assert.Equal(t, int64(v), vm.estack.Peek(k+1).BigInt().Int64())
}
assert.Equal(t, int64(1), vm.estack.Peek(len(elements) + 1).BigInt().Int64())
assert.Equal(t, int64(1), vm.estack.Peek(len(elements)+1).BigInt().Int64())
}
func TestREVERSEBadNotArray(t *testing.T) {
@ -833,7 +833,7 @@ func TestREVERSEGood(t *testing.T) {
a := vm.estack.Peek(0).Array()
assert.Equal(t, len(elements), len(a))
for k, v := range elements {
e := a[len(a) - 1 - k].Value().(*big.Int)
e := a[len(a)-1-k].Value().(*big.Int)
assert.Equal(t, int64(v), e.Int64())
}
assert.Equal(t, int64(1), vm.estack.Peek(1).BigInt().Int64())

View file

@ -1,8 +1,8 @@
package wallet
import (
"github.com/CityOfZion/neo-go/pkg/util"
"github.com/CityOfZion/neo-go/pkg/crypto/keys"
"github.com/CityOfZion/neo-go/pkg/util"
)
// Account represents a NEO account. It holds the private and public key