Skip to content

Commit 745fdfd

Browse files
authored
Merge pull request #210 from onflow/janez/upgrade-flow-go-1
Upgrade flow-go - remove old errors
2 parents ddc2f1c + 2170b3d commit 745fdfd

File tree

10 files changed

+42
-73
lines changed

10 files changed

+42
-73
lines changed

accounts_test.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ import (
3232
"github.com/stretchr/testify/require"
3333

3434
emulator "github.com/onflow/flow-emulator"
35-
"github.com/onflow/flow-emulator/utils/unittest"
3635
)
3736

3837
const testContract = "pub contract Test {}"
@@ -806,8 +805,9 @@ func TestRemoveAccountKey(t *testing.T) {
806805
result, err = b.ExecuteNextTransaction()
807806
assert.NoError(t, err)
808807

809-
var sigErr fvmerrors.InvalidProposalSignatureError
808+
var sigErr fvmerrors.CodedError
810809
assert.ErrorAs(t, result.Error, &sigErr)
810+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeInvalidProposalSignatureError))
811811

812812
_, err = b.CommitBlock()
813813
assert.NoError(t, err)
@@ -989,7 +989,7 @@ func TestUpdateAccountCode(t *testing.T) {
989989
result, err := b.ExecuteNextTransaction()
990990
assert.NoError(t, err)
991991

992-
unittest.AssertFVMErrorType(t, fvmerrors.AccountAuthorizationError{}, result.Error)
992+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeAccountAuthorizationError))
993993

994994
_, err = b.CommitBlock()
995995
assert.NoError(t, err)

blockchain.go

+3-8
Original file line numberDiff line numberDiff line change
@@ -1258,20 +1258,15 @@ func convertToSealedResults(
12581258

12591259
// debugSignatureError tries to unwrap error to the root and test for invalid hashing algorithms
12601260
func (b *Blockchain) debugSignatureError(err error, tx *flowgo.TransactionBody) *types.TransactionResultDebug {
1261-
var sigErr fvmerrors.InvalidProposalSignatureError
1262-
if !errors.As(err, &sigErr) {
1263-
return nil
1264-
}
1265-
1266-
switch errors.Unwrap(sigErr).(type) {
1267-
case fvmerrors.InvalidEnvelopeSignatureError:
1261+
if fvmerrors.HasErrorCode(err, fvmerrors.ErrCodeInvalidEnvelopeSignatureError) {
12681262
for _, sig := range tx.EnvelopeSignatures {
12691263
debug := b.testAlternativeHashAlgo(sig, tx.EnvelopeMessage())
12701264
if debug != nil {
12711265
return debug
12721266
}
12731267
}
1274-
case fvmerrors.InvalidPayloadSignatureError:
1268+
}
1269+
if fvmerrors.HasErrorCode(err, fvmerrors.ErrCodeInvalidPayloadSignatureError) {
12751270
for _, sig := range tx.PayloadSignatures {
12761271
debug := b.testAlternativeHashAlgo(sig, tx.PayloadMessage())
12771272
if debug != nil {

convert/vm.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func VMTransactionResultToEmulator(tp *fvm.TransactionProcedure) (*types.Transac
4343
}, nil
4444
}
4545

46-
func VMErrorToEmulator(vmError fvmerrors.Error) error {
46+
func VMErrorToEmulator(vmError fvmerrors.CodedError) error {
4747
if vmError == nil {
4848
return nil
4949
}

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ require (
1414
github.com/improbable-eng/grpc-web v0.12.0
1515
github.com/logrusorgru/aurora v2.0.3+incompatible
1616
github.com/onflow/cadence v0.27.0
17-
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20220924005019-be5302fb1342
17+
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20221006152246-65158f882331
1818
github.com/onflow/flow-go-sdk v0.28.0
1919
github.com/onflow/flow-go/crypto v0.24.4
2020
github.com/onflow/flow-nft/lib/go/contracts v0.0.0-20220727161549-d59b1e547ac4

go.sum

+20-2
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,18 @@ cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aD
2727
cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI=
2828
cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4=
2929
cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc=
30+
cloud.google.com/go v0.100.2 h1:t9Iw5QH5v4XtlEQaCtUY7x6sCABps8sW0acw7e2WQ6Y=
3031
cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o=
3132
cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE=
3233
cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc=
3334
cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg=
3435
cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc=
3536
cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ=
37+
cloud.google.com/go/compute v1.6.1 h1:2sMmt8prCn7DPaG4Pmh0N3Inmc8cT8ae5k1M6VJ9Wqc=
3638
cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE=
3739
cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk=
3840
cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk=
41+
cloud.google.com/go/iam v0.3.0 h1:exkAomrVUuzx9kWFI1wm3KI0uoDeUFPB4kKGzx6x+Gc=
3942
cloud.google.com/go/kms v1.0.0/go.mod h1:nhUehi+w7zht2XrUfvTRNpxrfayBHqP4lu2NSywui/0=
4043
cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I=
4144
cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw=
@@ -47,6 +50,7 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl
4750
cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs=
4851
cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0=
4952
cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo=
53+
cloud.google.com/go/storage v1.22.1 h1:F6IlQJZrZM++apn9V5/VfS3gbTUYg98PS3EMQAzqtfg=
5054
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
5155
github.com/Azure/azure-pipeline-go v0.2.1/go.mod h1:UGSo8XybXnIGZ3epmeBw7Jdz+HiUVpqIlpz/HKHylF4=
5256
github.com/Azure/azure-pipeline-go v0.2.2/go.mod h1:4rQ/NZncSvGqNkkOsNpOU1tgoNuIlp9AfUH5G1tvCHc=
@@ -94,6 +98,13 @@ github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj
9498
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5 h1:0CwZNZbxp69SHPdPJAN/hZIm0C4OItdklCFmMRWYpio=
9599
github.com/armon/go-socks5 v0.0.0-20160902184237-e75332964ef5/go.mod h1:wHh0iHkYZB8zMSxRWpUBQtwG5a7fFgvEO+odwuTv2gs=
96100
github.com/aws/aws-sdk-go v1.25.48/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo=
101+
github.com/aws/aws-sdk-go-v2 v1.9.0 h1:+S+dSqQCN3MSU5vJRu1HqHrq00cJn6heIMU7X9hcsoo=
102+
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.5.1 h1:VGkV9KmhGqOQWnHyi4gLG98kE6OecT42fdrCGFWxJsc=
103+
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.3.0 h1:gceOysEWNNwLd6cki65IMBZ4WAM0MwgBQq2n7kejoT8=
104+
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0 h1:VNJ5NLBteVXEwE2F1zEXVmyIH58mZ6kIQGJoC7C+vkg=
105+
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.7.0 h1:HWsM0YQWX76V6MOp07YuTYacm8k7h69ObJuw7Nck+og=
106+
github.com/aws/aws-sdk-go-v2/service/s3 v1.15.0 h1:nPLfLPfglacc29Y949sDxpr3X/blaY40s3B85WT2yZU=
107+
github.com/aws/smithy-go v1.8.0 h1:AEwwwXQZtUwP5Mz506FeXXrKBe0jA8gVM+1gEcSRooc=
97108
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
98109
github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8=
99110
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
@@ -264,6 +275,7 @@ github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4er
264275
github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
265276
github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
266277
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc=
278+
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE=
267279
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
268280
github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
269281
github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y=
@@ -339,6 +351,8 @@ github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+
339351
github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk=
340352
github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0=
341353
github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM=
354+
github.com/googleapis/gax-go/v2 v2.4.0 h1:dS9eYAjhrE2RjmzYw2XAPvcXfmcQLtFEQWn0CR82awk=
355+
github.com/googleapis/go-type-adapters v1.0.0 h1:9XdMn+d/G57qq1s8dNc5IesGCXHf6V2HZ2JwRxfA2tA=
342356
github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g=
343357
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
344358
github.com/gorilla/mux v1.8.0 h1:i40aqfkR1h2SlN9hojwV5ZA91wcXFOvkdNIeFDP5koI=
@@ -414,6 +428,7 @@ github.com/jbenet/goprocess v0.1.4 h1:DRGOFReOMqqDNXwW70QkacFW0YN9QnwLV0Vqk+3oU0
414428
github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI=
415429
github.com/jessevdk/go-flags v1.5.0/go.mod h1:Fw0T6WPc1dYxT4mKEZRfG5kJhaTDP9pj1c2EWnYs/m4=
416430
github.com/jmespath/go-jmespath v0.0.0-20180206201540-c2b33e8439af/go.mod h1:Nht3zPeWKUH0NzdCt2Blrr5ys8VGpn0CEB0cQHVjt7k=
431+
github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg=
417432
github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo=
418433
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
419434
github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ=
@@ -554,8 +569,8 @@ github.com/onflow/flow-core-contracts/lib/go/templates v0.11.2-0.20220720151516-
554569
github.com/onflow/flow-core-contracts/lib/go/templates v0.11.2-0.20220720151516-797b149ceaaa/go.mod h1:JB2hWVxUjhMshUDNVQKfn4dzhhawOO+i3XjlhLMV5MM=
555570
github.com/onflow/flow-ft/lib/go/contracts v0.5.0 h1:Cg4gHGVblxcejfNNG5Mfj98Wf4zbY76O0Y28QB0766A=
556571
github.com/onflow/flow-ft/lib/go/contracts v0.5.0/go.mod h1:1zoTjp1KzNnOPkyqKmWKerUyf0gciw+e6tAEt0Ks3JE=
557-
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20220924005019-be5302fb1342 h1:bhcmo4iW5BuT1M4P5ssM3c0r8BYyp3TWQMSZbNKPkQY=
558-
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20220924005019-be5302fb1342/go.mod h1:7A3pt/5AKE8Xk7R0WoflC08VlpHcKAvuA02dprlYoBA=
572+
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20221006152246-65158f882331 h1:Y7cZpzadwAl/kYATv+CKWffOT7tu7SrIsK4WCN+pukY=
573+
github.com/onflow/flow-go v0.26.14-test-synchronization.0.20221006152246-65158f882331/go.mod h1:7A3pt/5AKE8Xk7R0WoflC08VlpHcKAvuA02dprlYoBA=
559574
github.com/onflow/flow-go-sdk v0.20.0/go.mod h1:52QZyLwU3p3UZ2FXOy+sRl4JPdtvJoae1spIUBOFxA8=
560575
github.com/onflow/flow-go-sdk v0.24.0/go.mod h1:IoptMLPyFXWvyd9yYA6/4EmSeeozl6nJoIv4FaEMg74=
561576
github.com/onflow/flow-go-sdk v0.28.0 h1:MkRKQcqCuHnjSoD7hQKw5WIMbhK9tdhMuEF6FdYivSc=
@@ -765,6 +780,7 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
765780
go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
766781
go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw=
767782
go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk=
783+
go.opencensus.io v0.23.0 h1:gqCw0LfLxScz8irSi8exQc7fyQ0fKQU/qnC/X8+V/1M=
768784
go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E=
769785
go.opentelemetry.io/otel v1.8.0 h1:zcvBFizPbpa1q7FehvFiHbQwGzmPILebO0tyqIR5Djg=
770786
go.opentelemetry.io/otel v1.8.0/go.mod h1:2pkj+iMj0o03Y+cW6/m8Y4WkRdYN3AvCXCnzRMp9yvM=
@@ -919,6 +935,7 @@ golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ
919935
golang.org/x/oauth2 v0.0.0-20210819190943-2bc19b11175f/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
920936
golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
921937
golang.org/x/oauth2 v0.0.0-20220223155221-ee480838109b/go.mod h1:DAh4E804XQdzx2j+YRIaUnCqCV2RuMz24cGBJ5QYIrc=
938+
golang.org/x/oauth2 v0.0.0-20220411215720-9780585627b5 h1:OSnWWcOd/CtWQC2cYSBgbTSJv3ciqd8r54ySIW2y3RE=
922939
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
923940
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
924941
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -1140,6 +1157,7 @@ google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqiv
11401157
google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE=
11411158
google.golang.org/api v0.57.0/go.mod h1:dVPlbZyBo2/OjBpmvNdpn2GRm6rPy75jyU7bmhdrMgI=
11421159
google.golang.org/api v0.58.0/go.mod h1:cAbP2FsxoGVNwtgNAmmn3y5G1TWAiVYRmg4yku3lv+E=
1160+
google.golang.org/api v0.81.0 h1:o8WF5AvfidafWbFjsRyupxyEQJNUWxLZJCK5NXrxZZ8=
11431161
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
11441162
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
11451163
google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=

server/backend/backend.go

+8-9
Original file line numberDiff line numberDiff line change
@@ -215,15 +215,14 @@ func (b *Backend) SendTransaction(ctx context.Context, tx sdk.Transaction) error
215215
case *emulator.DuplicateTransactionError:
216216
return status.Error(codes.InvalidArgument, err.Error())
217217
case *types.FlowError:
218-
// TODO - confirm these
219-
switch t.FlowError.(type) {
220-
case fvmerrors.AccountAuthorizationError,
221-
fvmerrors.InvalidEnvelopeSignatureError,
222-
fvmerrors.InvalidPayloadSignatureError,
223-
fvmerrors.InvalidProposalSignatureError,
224-
fvmerrors.AccountPublicKeyNotFoundError,
225-
fvmerrors.InvalidProposalSeqNumberError,
226-
fvmerrors.InvalidAddressError:
218+
switch t.FlowError.Code() {
219+
case fvmerrors.ErrCodeAccountAuthorizationError,
220+
fvmerrors.ErrCodeInvalidEnvelopeSignatureError,
221+
fvmerrors.ErrCodeInvalidPayloadSignatureError,
222+
fvmerrors.ErrCodeInvalidProposalSignatureError,
223+
fvmerrors.ErrCodeAccountPublicKeyNotFoundError,
224+
fvmerrors.ErrCodeInvalidProposalSeqNumberError,
225+
fvmerrors.ErrCodeInvalidAddressError:
227226

228227
return status.Error(codes.InvalidArgument, err.Error())
229228

server/backend/backend_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,7 @@ func TestBackend(t *testing.T) {
539539

540540
emu.EXPECT().
541541
AddTransaction(gomock.Any()).
542-
Return(&types.FlowError{FlowError: fvmerrors.AccountAuthorizationError{}}).
542+
Return(&types.FlowError{FlowError: fvmerrors.NewAccountAuthorizationErrorf(flowgo.EmptyAddress, "")}).
543543
Times(1)
544544

545545
expectedTx := test.TransactionGenerator().New()

transaction_test.go

+4-6
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import (
2727

2828
emulator "github.com/onflow/flow-emulator"
2929
"github.com/onflow/flow-emulator/types"
30-
"github.com/onflow/flow-emulator/utils/unittest"
3130
)
3231

3332
func TestSubmitTransaction(t *testing.T) {
@@ -692,7 +691,7 @@ func TestSubmitTransaction_EnvelopeSignature(t *testing.T) {
692691
result, err := b.ExecuteNextTransaction()
693692
assert.NoError(t, err)
694693

695-
unittest.AssertFVMErrorType(t, fvmerrors.AccountAuthorizationError{}, result.Error)
694+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeAccountAuthorizationError))
696695
})
697696

698697
t.Run("Invalid account", func(t *testing.T) {
@@ -770,8 +769,7 @@ func TestSubmitTransaction_EnvelopeSignature(t *testing.T) {
770769
result, err := b.ExecuteNextTransaction()
771770
assert.NoError(t, err)
772771

773-
var sigErr fvmerrors.InvalidProposalSignatureError
774-
assert.ErrorAs(t, result.Error, &sigErr)
772+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeInvalidProposalSignatureError))
775773
})
776774

777775
t.Run("Key weights", func(t *testing.T) {
@@ -825,7 +823,7 @@ func TestSubmitTransaction_EnvelopeSignature(t *testing.T) {
825823
result, err := b.ExecuteNextTransaction()
826824
assert.NoError(t, err)
827825

828-
unittest.AssertFVMErrorType(t, fvmerrors.AccountAuthorizationError{}, result.Error)
826+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeAccountAuthorizationError))
829827
})
830828

831829
t.Run("Sufficient key weight", func(t *testing.T) {
@@ -882,7 +880,7 @@ func TestSubmitTransaction_PayloadSignatures(t *testing.T) {
882880
result, err := b.ExecuteNextTransaction()
883881
assert.NoError(t, err)
884882

885-
unittest.AssertFVMErrorType(t, fvmerrors.AccountAuthorizationError{}, result.Error)
883+
assert.True(t, fvmerrors.HasErrorCode(result.Error, fvmerrors.ErrCodeAccountAuthorizationError))
886884
})
887885

888886
t.Run("Multiple payload signers", func(t *testing.T) {

types/error.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import (
2323
)
2424

2525
type FlowError struct {
26-
FlowError fvmerrors.Error
26+
FlowError fvmerrors.CodedError
2727
}
2828

2929
func (f *FlowError) Error() string {

utils/unittest/assertions.go

-41
This file was deleted.

0 commit comments

Comments
 (0)