[#50] Replace interface{} with any

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
This commit is contained in:
Evgenii Stratonikov 2023-11-07 15:18:48 +03:00
parent dacac0b53d
commit d890a7eba4
25 changed files with 103 additions and 103 deletions

View file

@ -22,18 +22,18 @@ const (
// OnNEP17Payment is a callback for NEP-17 compatible native GAS and NEO
// contracts.
func OnNEP17Payment(from interop.Hash160, amount int, data interface{}) {
func OnNEP17Payment(from interop.Hash160, amount int, data any) {
caller := runtime.GetCallingScriptHash()
if !common.BytesEqual(caller, []byte(gas.Hash)) && !common.BytesEqual(caller, []byte(neo.Hash)) {
common.AbortWithMessage("alphabet contract accepts GAS and NEO only")
}
}
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -61,7 +61,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}

View file

@ -27,7 +27,7 @@ type (
const maxKeySize = 24 // 24 + 32 (container ID length) + 8 (epoch length) = 64
func (a auditHeader) ID() []byte {
var buf interface{} = a.epoch
var buf any = a.epoch
hashedKey := crypto.Sha256(a.from)
shortedKey := hashedKey[:maxKeySize]
@ -39,11 +39,11 @@ const (
netmapContractKey = "netmapScriptHash"
)
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -63,7 +63,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -125,7 +125,7 @@ func List() [][]byte {
// the specified epoch.
func ListByEpoch(epoch int) [][]byte {
ctx := storage.GetReadOnlyContext()
var buf interface{} = epoch
var buf any = epoch
it := storage.Find(ctx, buf.([]byte), storage.KeysOnly)
return list(it)
@ -136,7 +136,7 @@ func ListByEpoch(epoch int) [][]byte {
func ListByCID(epoch int, cid []byte) [][]byte {
ctx := storage.GetReadOnlyContext()
var buf interface{} = epoch
var buf any = epoch
prefix := append(buf.([]byte), cid...)
it := storage.Find(ctx, prefix, storage.KeysOnly)
@ -188,7 +188,7 @@ func Version() int {
// readNext reads the length from the first byte, and then reads data (max 127 bytes).
func readNext(input []byte) ([]byte, int) {
var buf interface{} = input[0]
var buf any = input[0]
ln := buf.(int)
return input[1 : 1+ln], 1 + ln
@ -199,7 +199,7 @@ func newAuditHeader(input []byte) auditHeader {
offset := int(input[1])
offset = 2 + offset + 1 // version prefix + version len + epoch prefix
var buf interface{} = input[offset : offset+8] // [ 8 integer bytes ]
var buf any = input[offset : offset+8] // [ 8 integer bytes ]
epoch := buf.(int)
offset = offset + 8

View file

@ -63,11 +63,11 @@ func init() {
token = createToken()
}
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -89,7 +89,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -128,7 +128,7 @@ func BalanceOf(account interop.Hash160) int {
//
// It produces Transfer and TransferX notifications. TransferX notification
// will have empty details field.
func Transfer(from, to interop.Hash160, amount int, data interface{}) bool {
func Transfer(from, to interop.Hash160, amount int, data any) bool {
ctx := storage.GetContext()
return token.transfer(ctx, from, to, amount, false, nil)
}
@ -368,7 +368,7 @@ func isUsableAddress(addr interop.Hash160) bool {
return false
}
func getAccount(ctx storage.Context, key interface{}) Account {
func getAccount(ctx storage.Context, key any) Account {
data := storage.Get(ctx, key)
if data != nil {
acc := std.Deserialize(data.([]byte)).(account)
@ -382,7 +382,7 @@ func getAccount(ctx storage.Context, key interface{}) Account {
return Account{}
}
func setAccount(ctx storage.Context, key interface{}, acc Account) {
func setAccount(ctx storage.Context, key any, acc Account) {
common.SetSerialized(ctx, key, account{
Balance: common.ToFixedWidth64(acc.Balance),
Until: common.ToFixedWidth64(acc.Until),

View file

@ -7,7 +7,7 @@ import (
)
// SetSerialized serializes data and puts it into contract storage.
func SetSerialized(ctx storage.Context, key interface{}, value interface{}) {
func SetSerialized(ctx storage.Context, key any, value interface{}) {
data := std.Serialize(value)
storage.Put(ctx, key, data)
}

View file

@ -31,7 +31,7 @@ func LockTransferDetails(txDetails []byte) []byte {
}
func UnlockTransferDetails(epoch int) []byte {
var buf interface{} = epoch
var buf any = epoch
return append(unlockPrefix, buf.([]byte)...)
}

View file

@ -38,9 +38,9 @@ func CheckVersion(from int) {
}
// AppendVersion appends current contract version to the list of deploy arguments.
func AppendVersion(data interface{}) []interface{} {
func AppendVersion(data any) []interface{} {
if data == nil {
return []interface{}{Version}
return []any{Version}
}
return append(data.([]interface{}), Version)
return append(data.([]any), Version)
}

View file

@ -85,14 +85,14 @@ const (
var eACLPrefix = []byte("eACL")
// OnNEP11Payment is needed for registration with contract as the owner to work.
func OnNEP11Payment(a interop.Hash160, b int, c []byte, d interface{}) {
func OnNEP11Payment(a interop.Hash160, b int, c []byte, d any) {
}
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
it := storage.Find(ctx, []byte{}, storage.None)
@ -160,7 +160,7 @@ func registerNiceNameTLD(addrNNS interop.Hash160, nnsRoot string) {
// Update method updates contract source code and manifest. It can be invoked
// by committee only.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -323,7 +323,7 @@ func Delete(containerID []byte, signature interop.Signature, publicKey interop.P
// and inability to delete a container. We should also check if we own the record in case.
nnsContractAddr := storage.Get(ctx, nnsContractKey).(interop.Hash160)
res := contract.Call(nnsContractAddr, "getRecords", contract.ReadStates|contract.AllowCall, domain, 16 /* TXT */)
if res != nil && std.Base58Encode(containerID) == string(res.([]interface{})[0].(string)) {
if res != nil && std.Base58Encode(containerID) == string(res.([]any)[0].(string)) {
contract.Call(nnsContractAddr, "deleteRecords", contract.All, domain, 16 /* TXT */)
}
}
@ -540,7 +540,7 @@ func GetContainerSize(id []byte) containerSizes {
func ListContainerSizes(epoch int) [][]byte {
ctx := storage.GetReadOnlyContext()
var buf interface{} = epoch
var buf any = epoch
key := []byte(estimateKeyPrefix)
key = append(key, buf.([]byte)...)
@ -572,7 +572,7 @@ func ListContainerSizes(epoch int) [][]byte {
func IterateContainerSizes(epoch int) iterator.Iterator {
ctx := storage.GetReadOnlyContext()
var buf interface{} = epoch
var buf any = epoch
key := []byte(estimateKeyPrefix)
key = append(key, buf.([]byte)...)
@ -690,7 +690,7 @@ func ownerFromBinaryContainer(container []byte) []byte {
}
func estimationKey(epoch int, cid []byte, key interop.PublicKey) []byte {
var buf interface{} = epoch
var buf any = epoch
hash := crypto.Ripemd160(key)
@ -768,7 +768,7 @@ func cleanupContainers(ctx storage.Context, epoch int) {
// V2 format
nbytes := k[len(estimateKeyPrefix) : len(k)-containerIDSize-estimatePostfixSize]
var n interface{} = nbytes
var n any = nbytes
if epoch-n.(int) > TotalCleanupDelta {
storage.Delete(ctx, k)

View file

@ -41,11 +41,11 @@ const (
var configPrefix = []byte("config")
// _deploy sets up initial alphabet node keys.
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -93,7 +93,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by sidechain committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
blockHeight := ledger.CurrentIndex()
alphabetKeys := roles.GetDesignatedByRole(roles.NeoFSAlphabet, uint32(blockHeight+1))
alphabetCommittee := common.Multiaddress(alphabetKeys, true)
@ -183,7 +183,7 @@ func InnerRingCandidateAdd(key interop.PublicKey) {
// It takes no more than 9000.0 GAS. Native GAS has precision 8, and
// FrostFS balance contract has precision 12. Values bigger than 9000.0 can
// break JSON limits for integers when precision is converted.
func OnNEP17Payment(from interop.Hash160, amount int, data interface{}) {
func OnNEP17Payment(from interop.Hash160, amount int, data any) {
rcv := data.(interop.Hash160)
if common.BytesEqual(rcv, []byte(ignoreDepositNotification)) {
return
@ -314,7 +314,7 @@ func Unbind(user []byte, keys []interop.PublicKey) {
// Config returns configuration value of FrostFS configuration. If the key does
// not exists, returns nil.
func Config(key []byte) interface{} {
func Config(key []byte) any {
ctx := storage.GetReadOnlyContext()
return getConfig(ctx, key)
}
@ -369,7 +369,7 @@ func getAlphabetNodes(ctx storage.Context) []interop.PublicKey {
}
// getConfig returns the installed frostfs configuration value or nil if it is not set.
func getConfig(ctx storage.Context, key interface{}) interface{} {
func getConfig(ctx storage.Context, key any) interface{} {
postfix := key.([]byte)
storageKey := append(configPrefix, postfix...)
@ -377,7 +377,7 @@ func getConfig(ctx storage.Context, key interface{}) interface{} {
}
// setConfig sets a frostfs configuration value in the contract storage.
func setConfig(ctx storage.Context, key, val interface{}) {
func setConfig(ctx storage.Context, key, val any) {
postfix := key.([]byte)
storageKey := append(configPrefix, postfix...)

View file

@ -25,11 +25,11 @@ const (
ownerKeysPrefix = 'o'
)
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -51,7 +51,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -143,7 +143,7 @@ func Version() int {
return common.Version
}
func getUserInfo(ctx storage.Context, key interface{}) UserInfo {
func getUserInfo(ctx storage.Context, key any) UserInfo {
it := storage.Find(ctx, key, storage.KeysOnly|storage.RemovePrefix)
pubs := [][]byte{}
for iterator.Next(it) {

View file

@ -66,7 +66,7 @@ var (
)
// _deploy function sets up initial list of inner ring public keys.
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
ctx := storage.GetContext()
args := data.(struct {
@ -117,7 +117,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -426,7 +426,7 @@ func SnapshotByEpoch(epoch int) []Node {
// Config returns configuration value of FrostFS configuration. If key does
// not exists, returns nil.
func Config(key []byte) interface{} {
func Config(key []byte) any {
ctx := storage.GetReadOnlyContext()
return getConfig(ctx, key)
}
@ -538,14 +538,14 @@ func getSnapshot(ctx storage.Context, key string) []Node {
return []Node{}
}
func getConfig(ctx storage.Context, key interface{}) interface{} {
func getConfig(ctx storage.Context, key any) interface{} {
postfix := key.([]byte)
storageKey := append(configPrefix, postfix...)
return storage.Get(ctx, storageKey)
}
func setConfig(ctx storage.Context, key, val interface{}) {
func setConfig(ctx storage.Context, key, val any) {
postfix := key.([]byte)
storageKey := append(configPrefix, postfix...)

View file

@ -76,7 +76,7 @@ type RecordState struct {
}
// Update updates NameService contract.
func Update(nef []byte, manifest string, data interface{}) {
func Update(nef []byte, manifest string, data any) {
checkCommittee()
// Calculating keys and serializing requires calling
// std and crypto contracts. This can be helpful on update
@ -87,9 +87,9 @@ func Update(nef []byte, manifest string, data interface{}) {
}
// _deploy initializes defaults (total supply and registration price) on contract deploy.
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -128,10 +128,10 @@ func OwnerOf(tokenID []byte) interop.Hash160 {
}
// Properties returns a domain name and an expiration date of the specified domain.
func Properties(tokenID []byte) map[string]interface{} {
func Properties(tokenID []byte) map[string]any {
ctx := storage.GetReadOnlyContext()
ns := getNameState(ctx, tokenID)
return map[string]interface{}{
return map[string]any{
"name": ns.Name,
"expiration": ns.Expiration,
}
@ -166,7 +166,7 @@ func TokensOf(owner interop.Hash160) iterator.Iterator {
}
// Transfer transfers the domain with the specified name to a new owner.
func Transfer(to interop.Hash160, tokenID []byte, data interface{}) bool {
func Transfer(to interop.Hash160, tokenID []byte, data any) bool {
if !isValid(to) {
panic(`invalid receiver`)
}
@ -478,7 +478,7 @@ func updateBalance(ctx storage.Context, tokenId []byte, acc interop.Hash160, dif
// postTransfer sends Transfer notification to the network and calls onNEP11Payment
// method.
func postTransfer(from, to interop.Hash160, tokenID []byte, data interface{}) {
func postTransfer(from, to interop.Hash160, tokenID []byte, data any) {
runtime.Notify("Transfer", from, to, 1, tokenID)
if management.GetContract(to) != nil {
contract.Call(to, "onNEP11Payment", contract.All, from, 1, tokenID, data)

View file

@ -17,7 +17,7 @@ const (
)
// _deploy function sets up initial list of inner ring public keys.
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
}
func storageKey(prefix Kind, entityName, name string) []byte {

View file

@ -19,16 +19,16 @@ const (
)
// OnNEP17Payment is a callback for NEP-17 compatible native GAS contract.
func OnNEP17Payment(from interop.Hash160, amount int, data interface{}) {
func OnNEP17Payment(from interop.Hash160, amount int, data any) {
caller := runtime.GetCallingScriptHash()
if !common.BytesEqual(caller, []byte(gas.Hash)) {
common.AbortWithMessage("processing contract accepts GAS only")
}
}
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -50,7 +50,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by the sidechain committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
blockHeight := ledger.CurrentIndex()
alphabetKeys := roles.GetDesignatedByRole(roles.NeoFSAlphabet, uint32(blockHeight+1))
alphabetCommittee := common.Multiaddress(alphabetKeys, true)

View file

@ -10,16 +10,16 @@ import (
)
// OnNEP17Payment is a callback for NEP-17 compatible native GAS contract.
func OnNEP17Payment(from interop.Hash160, amount int, data interface{}) {
func OnNEP17Payment(from interop.Hash160, amount int, data any) {
caller := runtime.GetCallingScriptHash()
if !common.BytesEqual(caller, []byte(gas.Hash)) {
common.AbortWithMessage("proxy contract accepts GAS only")
}
}
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -29,7 +29,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}

View file

@ -14,9 +14,9 @@ const (
reputationCountPrefix = 'c'
)
func _deploy(data interface{}, isUpdate bool) {
func _deploy(data any, isUpdate bool) {
if isUpdate {
args := data.([]interface{})
args := data.([]any)
common.CheckVersion(args[len(args)-1].(int))
return
}
@ -26,7 +26,7 @@ func _deploy(data interface{}, isUpdate bool) {
// Update method updates contract source code and manifest. It can be invoked
// only by committee.
func Update(script []byte, manifest []byte, data interface{}) {
func Update(script []byte, manifest []byte, data any) {
if !common.HasUpdateAccess() {
panic("only committee can update contract")
}
@ -113,7 +113,7 @@ func Version() int {
}
func storageID(epoch int, peerID []byte) []byte {
var buf interface{} = epoch
var buf any = epoch
return append(buf.([]byte), peerID...)
}

View file

@ -21,7 +21,7 @@ const alphabetPath = "../alphabet"
func deployAlphabetContract(t *testing.T, e *neotest.Executor, addrNetmap, addrProxy util.Uint160, name string, index, total int64) util.Uint160 {
c := neotest.CompileFile(t, e.CommitteeHash, alphabetPath, path.Join(alphabetPath, "config.yml"))
args := make([]interface{}, 5)
args := make([]any, 5)
args[0] = addrNetmap
args[1] = addrProxy
args[2] = name
@ -87,8 +87,8 @@ func TestVote(t *testing.T) {
require.True(t, ok)
cNewAlphabet := c.WithSigners(newAlphabet)
cNewAlphabet.InvokeFail(t, common.ErrAlphabetWitnessFailed, method, int64(0), []interface{}{newAlphabetPub})
c.InvokeFail(t, "invalid epoch", method, int64(1), []interface{}{newAlphabetPub})
cNewAlphabet.InvokeFail(t, common.ErrAlphabetWitnessFailed, method, int64(0), []any{newAlphabetPub})
c.InvokeFail(t, "invalid epoch", method, int64(1), []any{newAlphabetPub})
setAlphabetRole(t, e, newAlphabetPub)
transferNeoToContract(t, c)
@ -108,7 +108,7 @@ func TestVote(t *testing.T) {
newInvoker := neoInvoker.WithSigners(newAlphabet)
newInvoker.Invoke(t, stackitem.NewBool(true), "registerCandidate", newAlphabetPub)
c.Invoke(t, stackitem.Null{}, method, int64(0), []interface{}{newAlphabetPub})
c.Invoke(t, stackitem.Null{}, method, int64(0), []any{newAlphabetPub})
// wait one block util
// a new committee is accepted
@ -138,7 +138,7 @@ func setAlphabetRole(t *testing.T, e *neotest.Executor, new []byte) {
designInvoker := e.CommitteeInvoker(designSH)
// set committee as NeoFSAlphabet
designInvoker.Invoke(t, stackitem.Null{}, "designateAsRole", int64(noderoles.NeoFSAlphabet), []interface{}{new})
designInvoker.Invoke(t, stackitem.Null{}, "designateAsRole", int64(noderoles.NeoFSAlphabet), []any{new})
}
func getAlphabetAcc(t *testing.T, e *neotest.Executor) *wallet.Account {

View file

@ -14,7 +14,7 @@ const balancePath = "../balance"
func deployBalanceContract(t *testing.T, e *neotest.Executor, addrNetmap, addrContainer util.Uint160) util.Uint160 {
c := neotest.CompileFile(t, e.CommitteeHash, balancePath, path.Join(balancePath, "config.yml"))
args := make([]interface{}, 3)
args := make([]any, 3)
args[0] = addrNetmap
args[1] = addrContainer

View file

@ -29,7 +29,7 @@ const (
)
func deployContainerContract(t *testing.T, e *neotest.Executor, addrNetmap, addrBalance, addrNNS util.Uint160) util.Uint160 {
args := make([]interface{}, 5)
args := make([]any, 5)
args[0] = addrNetmap
args[1] = addrBalance
args[2] = util.Uint160{} // not needed for now
@ -171,7 +171,7 @@ func TestContainerPut(t *testing.T) {
acc := c.NewAccount(t)
cnt := dummyContainer(acc)
putArgs := []interface{}{cnt.value, cnt.sig, cnt.pub, cnt.token}
putArgs := []any{cnt.value, cnt.sig, cnt.pub, cnt.token}
c.InvokeFail(t, "insufficient balance to create container", "put", putArgs...)
balanceMint(t, cBal, acc, containerFee*1, []byte{})
@ -187,7 +187,7 @@ func TestContainerPut(t *testing.T) {
balanceMint(t, cBal, acc, containerFee*1, []byte{})
putArgs := []interface{}{cnt.value, cnt.sig, cnt.pub, cnt.token, "mycnt", ""}
putArgs := []any{cnt.value, cnt.sig, cnt.pub, cnt.token, "mycnt", ""}
t.Run("no fee for alias", func(t *testing.T) {
c.InvokeFail(t, "insufficient balance to create container", "putNamed", putArgs...)
})
@ -222,7 +222,7 @@ func TestContainerPut(t *testing.T) {
balanceMint(t, cBal, acc, (containerFee+containerAliasFee)*1, []byte{})
putArgs := []interface{}{cnt.value, cnt.sig, cnt.pub, cnt.token, "domain", "cdn"}
putArgs := []any{cnt.value, cnt.sig, cnt.pub, cnt.token, "domain", "cdn"}
c2 := c.WithSigners(c.Committee, acc)
c2.Invoke(t, stackitem.Null{}, "putNamed", putArgs...)
@ -243,7 +243,7 @@ func TestContainerPut(t *testing.T) {
acc := c.NewAccount(t)
balanceMint(t, cBal, acc, totalPrice*totalContainers, []byte{})
cnt := dummyContainer(acc)
putArgs := []interface{}{cnt.value, cnt.sig, cnt.pub, cnt.token, "precreated", ""}
putArgs := []any{cnt.value, cnt.sig, cnt.pub, cnt.token, "precreated", ""}
c.Invoke(t, stackitem.Null{}, "putNamed", putArgs...)
txs := make([]*transaction.Transaction, 0, containerPerBlock)
@ -313,7 +313,7 @@ func TestContainerDelete(t *testing.T) {
t.Run("gas costs are the same for different epochs", func(t *testing.T) {
_, cnt2 := addContainer(t, c, cBal)
args := []interface{}{cnt2.id[:], cnt2.sig, cnt2.pub, cnt2.token}
args := []any{cnt2.id[:], cnt2.sig, cnt2.pub, cnt2.token}
tx := c.PrepareInvoke(t, "delete", args...)
for _, e := range []int{126, 127, 128, 129, 65536} {
@ -404,7 +404,7 @@ func TestContainerSetEACL(t *testing.T) {
})
e := dummyEACL(cnt.id)
setArgs := []interface{}{e.value, e.sig, e.pub, e.token}
setArgs := []any{e.value, e.sig, e.pub, e.token}
cAcc := c.WithSigners(acc)
cAcc.InvokeFail(t, common.ErrAlphabetWitnessFailed, "setEACL", setArgs...)

View file

@ -21,24 +21,24 @@ import (
const frostfsPath = "../frostfs"
func deployFrostFSContract(t *testing.T, e *neotest.Executor, addrProc util.Uint160,
pubs keys.PublicKeys, config ...interface{},
pubs keys.PublicKeys, config ...any,
) util.Uint160 {
args := make([]interface{}, 3)
args := make([]any, 3)
args[0] = addrProc
arr := make([]interface{}, len(pubs))
arr := make([]any, len(pubs))
for i := range pubs {
arr[i] = pubs[i].Bytes()
}
args[1] = arr
args[2] = append([]interface{}{}, config...)
args[2] = append([]any{}, config...)
c := neotest.CompileFile(t, e.CommitteeHash, frostfsPath, path.Join(frostfsPath, "config.yml"))
e.DeployContract(t, c, args)
return c.Hash
}
func newFrostFSInvoker(t *testing.T, n int, config ...interface{}) (*neotest.ContractInvoker, neotest.Signer, keys.PublicKeys) {
func newFrostFSInvoker(t *testing.T, n int, config ...any) (*neotest.ContractInvoker, neotest.Signer, keys.PublicKeys) {
e := newExecutor(t)
accounts := make([]*wallet.Account, n)

View file

@ -17,7 +17,7 @@ import (
const frostfsidPath = "../frostfsid"
func deployFrostFSIDContract(t *testing.T, e *neotest.Executor, addrNetmap, addrContainer util.Uint160) util.Uint160 {
args := make([]interface{}, 2)
args := make([]any, 2)
args[0] = addrNetmap
args[1] = addrContainer
@ -56,7 +56,7 @@ func TestFrostFSID_AddKey(t *testing.T) {
acc := e.NewAccount(t)
owner := signerToOwner(acc)
e.Invoke(t, stackitem.Null{}, "addKey", owner,
[]interface{}{pubs[0], pubs[1]})
[]any{pubs[0], pubs[1]})
sort.Slice(pubs[:2], func(i, j int) bool {
return bytes.Compare(pubs[i], pubs[j]) == -1
@ -68,8 +68,8 @@ func TestFrostFSID_AddKey(t *testing.T) {
e.Invoke(t, stackitem.NewArray(arr), "key", owner)
t.Run("multiple addKey per block", func(t *testing.T) {
tx1 := e.PrepareInvoke(t, "addKey", owner, []interface{}{pubs[2]})
tx2 := e.PrepareInvoke(t, "addKey", owner, []interface{}{pubs[3], pubs[4]})
tx1 := e.PrepareInvoke(t, "addKey", owner, []any{pubs[2]})
tx2 := e.PrepareInvoke(t, "addKey", owner, []any{pubs[3], pubs[4]})
e.AddNewBlock(t, tx1, tx2)
e.CheckHalt(t, tx1.Hash(), stackitem.Null{})
e.CheckHalt(t, tx2.Hash(), stackitem.Null{})
@ -88,7 +88,7 @@ func TestFrostFSID_AddKey(t *testing.T) {
})
e.Invoke(t, stackitem.Null{}, "removeKey", owner,
[]interface{}{pubs[1], pubs[5]})
[]any{pubs[1], pubs[5]})
arr = []stackitem.Item{
stackitem.NewBuffer(pubs[0]),
stackitem.NewBuffer(pubs[2]),
@ -98,8 +98,8 @@ func TestFrostFSID_AddKey(t *testing.T) {
e.Invoke(t, stackitem.NewArray(arr), "key", owner)
t.Run("multiple removeKey per block", func(t *testing.T) {
tx1 := e.PrepareInvoke(t, "removeKey", owner, []interface{}{pubs[2]})
tx2 := e.PrepareInvoke(t, "removeKey", owner, []interface{}{pubs[0], pubs[4]})
tx1 := e.PrepareInvoke(t, "removeKey", owner, []any{pubs[2]})
tx2 := e.PrepareInvoke(t, "removeKey", owner, []any{pubs[0], pubs[4]})
e.AddNewBlock(t, tx1, tx2)
e.CheckHalt(t, tx1.Hash(), stackitem.Null{})
e.CheckHalt(t, tx2.Hash(), stackitem.Null{})

View file

@ -20,22 +20,22 @@ import (
const netmapPath = "../netmap"
func deployNetmapContract(t *testing.T, e *neotest.Executor, addrBalance, addrContainer util.Uint160, config ...interface{}) util.Uint160 {
func deployNetmapContract(t *testing.T, e *neotest.Executor, addrBalance, addrContainer util.Uint160, config ...any) util.Uint160 {
_, pubs, ok := vm.ParseMultiSigContract(e.Committee.Script())
require.True(t, ok)
args := make([]interface{}, 4)
args := make([]any, 4)
args[0] = addrBalance
args[1] = addrContainer
args[2] = []interface{}{pubs[0]}
args[3] = append([]interface{}{}, config...)
args[2] = []any{pubs[0]}
args[3] = append([]any{}, config...)
c := neotest.CompileFile(t, e.CommitteeHash, netmapPath, path.Join(netmapPath, "config.yml"))
e.DeployContract(t, c, args)
return c.Hash
}
func newNetmapInvoker(t *testing.T, config ...interface{}) *neotest.ContractInvoker {
func newNetmapInvoker(t *testing.T, config ...any) *neotest.ContractInvoker {
e := newExecutor(t)
ctrNNS := neotest.CompileFile(t, e.CommitteeHash, nnsPath, path.Join(nnsPath, "config.yml"))

View file

@ -141,8 +141,8 @@ func TestTLDRecord(t *testing.T) {
func TestNNSRegisterMulti(t *testing.T) {
c := newNNSInvoker(t, true)
newArgs := func(domain string, account neotest.Signer) []interface{} {
return []interface{}{
newArgs := func(domain string, account neotest.Signer) []any {
return []any{
domain, account.ScriptHash(), "doesnt@matter.com",
int64(101), int64(102), int64(103), int64(104),
}

View file

@ -14,7 +14,7 @@ const processingPath = "../processing"
func deployProcessingContract(t *testing.T, e *neotest.Executor, addrFrostFS util.Uint160) util.Uint160 {
c := neotest.CompileFile(t, e.CommitteeHash, processingPath, path.Join(processingPath, "config.yml"))
args := make([]interface{}, 1)
args := make([]any, 1)
args[0] = addrFrostFS
e.DeployContract(t, c, args)

View file

@ -12,7 +12,7 @@ import (
const proxyPath = "../proxy"
func deployProxyContract(t *testing.T, e *neotest.Executor, addrNetmap util.Uint160) util.Uint160 {
args := make([]interface{}, 1)
args := make([]any, 1)
args[0] = addrNetmap
c := neotest.CompileFile(t, e.CommitteeHash, proxyPath, path.Join(proxyPath, "config.yml"))

View file

@ -16,7 +16,7 @@ func deployReputationContract(t *testing.T, e *neotest.Executor) util.Uint160 {
c := neotest.CompileFile(t, e.CommitteeHash, reputationPath,
path.Join(reputationPath, "config.yml"))
e.DeployContract(t, c, []interface{}{})
e.DeployContract(t, c, []any{})
return c.Hash
}