github.com/qri-io/qri@v0.10.1-0.20220104210721-c771715036cb/dsref/mem_resolver_test.go (about)

     1  package dsref_test
     2  
     3  import (
     4  	"context"
     5  	"testing"
     6  
     7  	"github.com/qri-io/qri/dsref"
     8  	dsrefspec "github.com/qri-io/qri/dsref/spec"
     9  	"github.com/qri-io/qri/logbook/oplog"
    10  	"github.com/qri-io/qri/profile"
    11  )
    12  
    13  func TestMemResolver(t *testing.T) {
    14  	ctx := context.Background()
    15  	m := dsref.NewMemResolver("test_peer_mem_resolver")
    16  
    17  	if _, err := (*dsref.MemResolver)(nil).ResolveRef(ctx, nil); err != dsref.ErrRefNotFound {
    18  		t.Errorf("ResolveRef must be nil-callable. expected: %q, got %v", dsref.ErrRefNotFound, err)
    19  	}
    20  
    21  	dsrefspec.AssertResolverSpec(t, m, func(ref dsref.Ref, author *profile.Profile, log *oplog.Log) error {
    22  		m.Put(dsref.VersionInfo{
    23  			InitID:    ref.InitID,
    24  			ProfileID: author.ID.Encode(),
    25  			Username:  ref.Username,
    26  			Name:      ref.Name,
    27  			Path:      ref.Path,
    28  		})
    29  		return nil
    30  	})
    31  }