permission: skeleton for writing unit tests

This commit is contained in:
Trung Nguyen 2019-08-14 17:09:24 -04:00
parent 0c6084c7a7
commit 26ec029456
No known key found for this signature in database
GPG Key ID: 4636434ED9505EB7
26 changed files with 200 additions and 0 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,27 @@
// Quorum
//
// this is to generate go binding for smart contracts used in permissioning
//
// Require:
// 1. solc 0.5.4
// 2. abigen (make all from root)
//go:generate solc --abi --bin -o . --overwrite ../AccountManager.sol
//go:generate solc --abi --bin -o . --overwrite ../NodeManager.sol
//go:generate solc --abi --bin -o . --overwrite ../OrgManager.sol
//go:generate solc --abi --bin -o . --overwrite ../PermissionsImplementation.sol
//go:generate solc --abi --bin -o . --overwrite ../PermissionsInterface.sol
//go:generate solc --abi --bin -o . --overwrite ../PermissionsUpgradable.sol
//go:generate solc --abi --bin -o . --overwrite ../RoleManager.sol
//go:generate solc --abi --bin -o . --overwrite ../VoterManager.sol
//go:generate abigen -pkg permission -abi ./AccountManager.abi -bin ./AccountManager.bin -type AcctManager -out ../../bind/accounts.go
//go:generate abigen -pkg permission -abi ./NodeManager.abi -bin ./NodeManager.bin -type NodeManager -out ../../bind/nodes.go
//go:generate abigen -pkg permission -abi ./OrgManager.abi -bin ./OrgManager.bin -type OrgManager -out ../../bind/org.go
//go:generate abigen -pkg permission -abi ./PermissionsImplementation.abi -bin ./PermissionsImplementation.bin -type PermImpl -out ../../bind/permission_impl.go
//go:generate abigen -pkg permission -abi ./PermissionsInterface.abi -bin ./PermissionsInterface.bin -type PermInterface -out ../../bind/permission_interface.go
//go:generate abigen -pkg permission -abi ./PermissionsUpgradable.abi -bin ./PermissionsUpgradable.bin -type PermUpgr -out ../../bind/permission_upgr.go
//go:generate abigen -pkg permission -abi ./RoleManager.abi -bin ./RoleManager.bin -type RoleManager -out ../../bind/roles.go
//go:generate abigen -pkg permission -abi ./VoterManager.abi -bin ./VoterManager.bin -type VoterManager -out ../../bind/voter.go
package gen

View File

@ -0,0 +1,37 @@
package permission
import (
"math/big"
"testing"
"github.com/ethereum/go-ethereum/accounts/abi/bind"
"github.com/ethereum/go-ethereum/accounts/abi/bind/backends"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/core"
"github.com/ethereum/go-ethereum/crypto"
permission "github.com/ethereum/go-ethereum/permission/bind"
"github.com/stretchr/testify/assert"
)
func TestPermissionCtrl_InitializeService(t *testing.T) {
key, _ := crypto.GenerateKey()
senderOpts := bind.NewKeyedTransactor(key)
genesisAlloc := map[common.Address]core.GenesisAccount{
senderOpts.From: {
Balance: big.NewInt(100000000000000),
},
}
sb := backends.NewSimulatedBackend(genesisAlloc, 10000000)
permUpgrAddress, _, _, err := permission.DeployPermUpgr(senderOpts, sb, senderOpts.From)
if err != nil {
t.Fatal(err)
}
p, err := permission.NewPermUpgr(permUpgrAddress, sb)
if err != nil {
t.Fatal(err)
}
assert.NotNil(t, p)
}