memdriver

package
v1.8.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 5, 2026 License: MIT Imports: 8 Imported by: 2

Documentation

Overview

Package memdriver provides an in-memory storage driver for testing.

The memory driver stores all data in-process using Go maps. It is not persistent and is intended exclusively for unit tests and development.

Usage:

drv := memdriver.New()
t, err := trove.Open(drv)

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MemDriver

type MemDriver struct {
	// contains filtered or unexported fields
}

MemDriver implements driver.Driver with in-memory storage.

func New

func New() *MemDriver

New creates a new in-memory storage driver.

func (*MemDriver) Close

func (d *MemDriver) Close(_ context.Context) error

Close marks the driver as closed.

func (*MemDriver) Copy

func (d *MemDriver) Copy(_ context.Context, srcBucket, srcKey, dstBucket, dstKey string, opts ...driver.CopyOption) (*driver.ObjectInfo, error)

Copy copies an object within or across buckets.

func (*MemDriver) CreateBucket

func (d *MemDriver) CreateBucket(_ context.Context, name string, _ ...driver.BucketOption) error

CreateBucket creates a new bucket.

func (*MemDriver) Delete

func (d *MemDriver) Delete(_ context.Context, bucket, key string, _ ...driver.DeleteOption) error

Delete removes an object from memory.

func (*MemDriver) DeleteBucket

func (d *MemDriver) DeleteBucket(_ context.Context, name string) error

DeleteBucket removes a bucket.

func (*MemDriver) Get

func (d *MemDriver) Get(_ context.Context, bucket, key string, _ ...driver.GetOption) (*driver.ObjectReader, error)

Get retrieves an object from memory.

func (*MemDriver) Head

func (d *MemDriver) Head(_ context.Context, bucket, key string) (*driver.ObjectInfo, error)

Head returns object metadata without content.

func (*MemDriver) List

func (d *MemDriver) List(_ context.Context, bucket string, opts ...driver.ListOption) (*driver.ObjectIterator, error)

List returns objects matching the given options.

func (*MemDriver) ListBuckets

func (d *MemDriver) ListBuckets(_ context.Context) ([]driver.BucketInfo, error)

ListBuckets returns all buckets.

func (*MemDriver) Name

func (d *MemDriver) Name() string

Name returns "mem".

func (*MemDriver) Open

func (d *MemDriver) Open(_ context.Context, _ string, _ ...driver.Option) error

Open is a no-op for the memory driver (no DSN required).

func (*MemDriver) Ping

func (d *MemDriver) Ping(_ context.Context) error

Ping verifies the driver is open.

func (*MemDriver) Put

func (d *MemDriver) Put(_ context.Context, bucket, key string, r io.Reader, opts ...driver.PutOption) (*driver.ObjectInfo, error)

Put stores an object in memory.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL