Skip to content

Commit 27d3051

Browse files
committed
Add a few more tests as requested in review
1 parent a67dae7 commit 27d3051

File tree

2 files changed

+32
-5
lines changed

2 files changed

+32
-5
lines changed

x/wasm/keeper/keeper_test.go

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,10 @@ func TestEnforceValidPermissionsOnCreate(t *testing.T) {
192192

193193
deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
194194
creator := keepers.Faucet.NewFundedAccount(ctx, deposit...)
195+
other := keepers.Faucet.NewFundedAccount(ctx, deposit...)
195196

196197
onlyCreator := types.AccessTypeOnlyAddress.With(creator)
198+
onlyOther := types.AccessTypeOnlyAddress.With(other)
197199

198200
specs := map[string]struct {
199201
defaultPermssion types.AccessType
@@ -213,6 +215,11 @@ func TestEnforceValidPermissionsOnCreate(t *testing.T) {
213215
requestedPermission: nil,
214216
grantedPermission: types.AccessConfig{Permission: types.AccessTypeEverybody},
215217
},
218+
"explicitly set everybody": {
219+
defaultPermssion: types.AccessTypeEverybody,
220+
requestedPermission: &types.AccessConfig{Permission: types.AccessTypeEverybody},
221+
grantedPermission: types.AccessConfig{Permission: types.AccessTypeEverybody},
222+
},
216223
"cannot override nobody": {
217224
defaultPermssion: types.AccessTypeNobody,
218225
requestedPermission: &onlyCreator,
@@ -223,6 +230,21 @@ func TestEnforceValidPermissionsOnCreate(t *testing.T) {
223230
requestedPermission: nil,
224231
grantedPermission: types.AccessConfig{Permission: types.AccessTypeNobody},
225232
},
233+
"only defaults to code creator": {
234+
defaultPermssion: types.AccessTypeOnlyAddress,
235+
requestedPermission: nil,
236+
grantedPermission: onlyCreator,
237+
},
238+
"can explicitly set to code creator": {
239+
defaultPermssion: types.AccessTypeOnlyAddress,
240+
requestedPermission: &onlyCreator,
241+
grantedPermission: onlyCreator,
242+
},
243+
"cannot override which address in only": {
244+
defaultPermssion: types.AccessTypeOnlyAddress,
245+
requestedPermission: &onlyOther,
246+
expError: sdkerrors.ErrUnauthorized,
247+
},
226248
}
227249
for msg, spec := range specs {
228250
t.Run(msg, func(t *testing.T) {

x/wasm/types/types_test.go

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -394,6 +394,11 @@ func TestAccesConfigSubset(t *testing.T) {
394394
check: AccessConfig{Permission: AccessTypeEverybody},
395395
isSubSet: false,
396396
},
397+
"unspecified > nobody": {
398+
superSet: AccessConfig{Permission: AccessTypeNobody},
399+
check: AccessConfig{Permission: AccessTypeUnspecified},
400+
isSubSet: false,
401+
},
397402
"nobody <= everybody": {
398403
superSet: AccessConfig{Permission: AccessTypeEverybody},
399404
check: AccessConfig{Permission: AccessTypeNobody},
@@ -409,6 +414,11 @@ func TestAccesConfigSubset(t *testing.T) {
409414
check: AccessConfig{Permission: AccessTypeEverybody},
410415
isSubSet: true,
411416
},
417+
"unspecified > everybody": {
418+
superSet: AccessConfig{Permission: AccessTypeEverybody},
419+
check: AccessConfig{Permission: AccessTypeUnspecified},
420+
isSubSet: false,
421+
},
412422
"nobody <= only": {
413423
superSet: AccessConfig{Permission: AccessTypeOnlyAddress, Address: "owner"},
414424
check: AccessConfig{Permission: AccessTypeNobody},
@@ -434,11 +444,6 @@ func TestAccesConfigSubset(t *testing.T) {
434444
check: AccessConfig{Permission: AccessTypeNobody},
435445
isSubSet: false,
436446
},
437-
"unspecified > everybody": {
438-
superSet: AccessConfig{Permission: AccessTypeEverybody},
439-
check: AccessConfig{Permission: AccessTypeUnspecified},
440-
isSubSet: false,
441-
},
442447
}
443448

444449
for name, spec := range specs {

0 commit comments

Comments
 (0)