Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
63031f57
Commit
63031f57
authored
Feb 20, 2015
by
Jeffrey Wilcke
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #355 from fjl/test-fixes
Fix failing tests and speed up Travis builds
parents
982f73fa
3b12a929
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
55 additions
and
19 deletions
+55
-19
.travis.yml
.travis.yml
+0
-8
accounts_test.go
accounts/accounts_test.go
+4
-2
gocoverage.sh
gocoverage.sh
+9
-4
state_test.go
state/state_test.go
+38
-5
nowarn.go
tests/vm/nowarn.go
+3
-0
update-license.go
update-license.go
+1
-0
No files found.
.travis.yml
View file @
63031f57
...
...
@@ -6,18 +6,10 @@ before_install:
-
sudo apt-get update -qq
-
sudo apt-get install -yqq libgmp3-dev libreadline6-dev qt54quickcontrols qt54webengine
install
:
-
go get code.google.com/p/go.tools/cmd/goimports
-
go get github.com/golang/lint/golint
# - go get golang.org/x/tools/cmd/vet
-
if ! go get code.google.com/p/go.tools/cmd/cover; then go get golang.org/x/tools/cmd/cover; fi
-
go get github.com/mattn/goveralls
-
go get gopkg.in/check.v1
-
go get github.com/tools/godep
before_script
:
-
godep restore
-
gofmt -l -w .
-
goimports -l -w .
-
golint .
# - go vet ./...
# - go test -race ./...
script
:
...
...
accounts/accounts_test.go
View file @
63031f57
package
accounts
import
(
"github.com/ethereum/go-ethereum/crypto"
"testing"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/crypto/randentropy"
)
func
TestAccountManager
(
t
*
testing
.
T
)
{
...
...
@@ -10,7 +12,7 @@ func TestAccountManager(t *testing.T) {
am
:=
NewAccountManager
(
ks
)
pass
:=
""
// not used but required by API
a1
,
err
:=
am
.
NewAccount
(
pass
)
toSign
:=
crypto
.
GetEntropyCSPRNG
(
32
)
toSign
:=
randentropy
.
GetEntropyCSPRNG
(
32
)
_
,
err
=
am
.
Sign
(
a1
,
pass
,
toSign
)
if
err
!=
nil
{
t
.
Fatal
(
err
)
...
...
gocoverage.sh
View file @
63031f57
#!/bin/bash
# The script does automatic checking on a Go package and its sub-packages, including:
# 6. test coverage (http://blog.golang.org/cover)
set
-e
# Run test coverage on each subdirectories and merge the coverage profile.
# Add godep workspace to GOPATH. We do it manually instead of using
# 'godep go test' or 'godep restore' so godep doesn't need to be installed.
GOPATH
=
"
$PWD
/Godeps/_workspace:
$GOPATH
"
# Install packages before testing. Not doing this would cause
# 'go test' to recompile all package dependencies before testing each package.
go
install
./...
# Run test coverage on each subdirectories and merge the coverage profile.
echo
"mode: count"
>
profile.cov
# Standard go tooling behavior is to ignore dirs with leading underscors
...
...
@@ -13,7 +18,7 @@ for dir in $(find . -maxdepth 10 -not -path './.git*' -not -path '*/_*' -type d)
do
if
ls
$dir
/
*
.go &> /dev/null
;
then
# echo $dir
if
[[
$dir
!=
"./tests/vm"
]]
if
[[
$dir
!=
"./tests/vm"
&&
$dir
!=
"."
]]
then
go
test
-covermode
=
count
-coverprofile
=
$dir
/profile.tmp
$dir
fi
...
...
state/state_test.go
View file @
63031f57
package
state
import
(
"math/big"
checker
"gopkg.in/check.v1"
"github.com/ethereum/go-ethereum/ethdb"
...
...
@@ -16,11 +18,42 @@ var _ = checker.Suite(&StateSuite{})
// var ZeroHash256 = make([]byte, 32)
func
(
s
*
StateSuite
)
TestDump
(
c
*
checker
.
C
)
{
key
:=
[]
byte
{
0x01
}
value
:=
[]
byte
(
"foo"
)
s
.
state
.
trie
.
Update
(
key
,
value
)
dump
:=
s
.
state
.
Dump
()
c
.
Assert
(
dump
,
checker
.
NotNil
)
// generate a few entries
obj1
:=
s
.
state
.
GetOrNewStateObject
([]
byte
{
0x01
})
obj1
.
AddBalance
(
big
.
NewInt
(
22
))
obj2
:=
s
.
state
.
GetOrNewStateObject
([]
byte
{
0x01
,
0x02
})
obj2
.
SetCode
([]
byte
{
3
,
3
,
3
,
3
,
3
,
3
,
3
})
obj3
:=
s
.
state
.
GetOrNewStateObject
([]
byte
{
0x02
})
obj3
.
SetBalance
(
big
.
NewInt
(
44
))
// write some of them to the trie
s
.
state
.
UpdateStateObject
(
obj1
)
s
.
state
.
UpdateStateObject
(
obj2
)
// check that dump contains the state objects that are in trie
got
:=
string
(
s
.
state
.
Dump
())
want
:=
`{
"root": "4e3a59299745ba6752247c8b91d0f716dac9ec235861c91f5ac1894a361d87ba",
"accounts": {
"0000000000000000000000000000000000000001": {
"balance": "22",
"nonce": 0,
"root": "56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"codeHash": "c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470",
"storage": {}
},
"0000000000000000000000000000000000000102": {
"balance": "0",
"nonce": 0,
"root": "56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421",
"codeHash": "87874902497a5bb968da31a2998d8f22e949d1ef6214bcdedd8bae24cca4b9e3",
"storage": {}
}
}
}`
if
got
!=
want
{
c
.
Errorf
(
"dump mismatch:
\n
got: %s
\n
want: %s
\n
"
,
got
,
want
)
}
}
func
(
s
*
StateSuite
)
SetUpTest
(
c
*
checker
.
C
)
{
...
...
tests/vm/nowarn.go
0 → 100644
View file @
63031f57
// This silences the warning given by 'go install ./...'.
package
vm
update-license.go
View file @
63031f57
// +build none
/*
This command generates GPL license headers on top of all source files.
You can run it once per month, before cutting a release or just
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment