36 lines
794 B
Go
36 lines
794 B
Go
package repocli
|
|
|
|
import (
|
|
"github.com/stretchr/testify/require"
|
|
|
|
ocidigest "github.com/opencontainers/go-digest"
|
|
|
|
"bytes"
|
|
"context"
|
|
"fmt"
|
|
"testing"
|
|
"time"
|
|
//"io"
|
|
)
|
|
|
|
func TestDigest(t *testing.T) {
|
|
payload := []byte("Hello, World")
|
|
digestobj := ocidigest.FromBytes(payload)
|
|
require.NotNil(t, digestobj)
|
|
enc := digestobj.Encoded()
|
|
fmt.Printf("Digest: %s\n", enc)
|
|
fmt.Printf("Alg: %s\n", digestobj.Algorithm())
|
|
|
|
ctx, _ := context.WithTimeout(context.Background(), 10*time.Second)
|
|
tmpdir := t.TempDir()
|
|
imager := NewImager(tmpdir)
|
|
require.NotNil(t, imager)
|
|
digest := fmt.Sprintf("%s:%s", digestobj.Algorithm(), digestobj.Encoded())
|
|
size := int64(len(payload))
|
|
reader := bytes.NewReader(payload)
|
|
|
|
err := imager.WriteLayer(ctx, digest, size, reader)
|
|
require.NoError(t, err)
|
|
|
|
}
|