Skip to content

Commit

Permalink
test: improve claim record validate
Browse files Browse the repository at this point in the history
  • Loading branch information
lumtis committed May 25, 2022
1 parent 24810ed commit 37607fb
Showing 1 changed file with 30 additions and 18 deletions.
48 changes: 30 additions & 18 deletions x/claim/types/claim_record_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,6 @@ import (
)

func TestClaimRecord_Validate(t *testing.T) {
invalidAddress := sample.ClaimRecord(r)
invalidAddress.Address = "invalid"

invalidClaimable := sample.ClaimRecord(r)
invalidClaimable.Claimable = sdk.NewInt(-1)

invalidCompletedMissions := sample.ClaimRecord(r)
invalidCompletedMissions.CompletedMissions = []uint64{0, 1, 2, 0}

for _, tc := range []struct {
desc string
claimRecord claim.ClaimRecord
Expand All @@ -31,19 +22,40 @@ func TestClaimRecord_Validate(t *testing.T) {
valid: true,
},
{
desc: "invalid address",
claimRecord: invalidAddress,
valid: false,
desc: "should prevent invalid address",
claimRecord: claim.ClaimRecord{
Address: "invalid",
Claimable: sdk.OneInt(),
CompletedMissions: []uint64{0, 1, 2},
},
valid: false,
},
{
desc: "should prevent zero claimable amount",
claimRecord: claim.ClaimRecord{
Address: sample.Address(r),
Claimable: sdk.ZeroInt(),
CompletedMissions: []uint64{0, 1, 2},
},
valid: false,
},
{
desc: "invalid claimable amount",
claimRecord: invalidClaimable,
valid: false,
desc: "should prevent negative claimable amount",
claimRecord: claim.ClaimRecord{
Address: sample.Address(r),
Claimable: sdk.NewInt(-1),
CompletedMissions: []uint64{0, 1, 2},
},
valid: false,
},
{
desc: "duplicate completed mission IDs",
claimRecord: invalidCompletedMissions,
valid: false,
desc: "should prevent duplicate completed mission IDs",
claimRecord: claim.ClaimRecord{
Address: sample.Address(r),
Claimable: sdk.OneInt(),
CompletedMissions: []uint64{0, 1, 2, 0},
},
valid: false,
},
} {
t.Run(tc.desc, func(t *testing.T) {
Expand Down

0 comments on commit 37607fb

Please sign in to comment.