Skip to content

Commit

Permalink
add test to ensure public resolvers can only be defined once per URL
Browse files Browse the repository at this point in the history
  • Loading branch information
aaronc committed Mar 7, 2024
1 parent c67eb10 commit be0f559
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 0 deletions.
5 changes: 5 additions & 0 deletions x/data/server/features/msg_define_resolver.feature
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ Feature: Msg/DefineResolver
When alice attempts to define a resolver with url "https://foo.bar"
Then expect the error "a resolver with the same URL and manager already exists: unique key violation"

Scenario: public resolvers can only be defined once per URL
Given a public resolver is defined for the url "ipfs:"
When alice attempts to define a public resolver with url "ipfs:"
Then expect the error "a resolver with the same URL and manager already exists: unique key violation"

Rule: Event is emitted

Scenario: EventDefineResolver is emitted
Expand Down
16 changes: 16 additions & 0 deletions x/data/server/msg_define_resolver_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,29 @@ func (s *defineResolverSuite) AliceHasDefinedAResolverWithUrl(a string) {
require.NoError(s.t, err)
}

func (s *defineResolverSuite) APublicResolverIsDefinedForTheUrl(a string) {
err := s.server.stateStore.ResolverTable().Insert(s.ctx, &api.Resolver{
Url: a,
Manager: nil,
})
require.NoError(s.t, err)
}

func (s *defineResolverSuite) AliceAttemptsToDefineAResolverWithUrl(a string) {
_, s.err = s.server.DefineResolver(s.ctx, &data.MsgDefineResolver{
Definer: s.alice.String(),
ResolverUrl: a,
})
}

func (s *defineResolverSuite) AliceAttemptsToDefineAPublicResolverWithUrl(a string) {
_, s.err = s.server.DefineResolver(s.ctx, &data.MsgDefineResolver{
Definer: s.alice.String(),
ResolverUrl: a,
Public: true,
})
}

func (s *defineResolverSuite) BobAttemptsToDefineAResolverWithUrl(a string) {
_, s.err = s.server.DefineResolver(s.ctx, &data.MsgDefineResolver{
Definer: s.bob.String(),
Expand Down

0 comments on commit be0f559

Please sign in to comment.