db

package
v0.10.1 Latest Latest
Warning

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

Go to latest
Published: Jul 10, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrFileLimit = errors.New("file limit reached")
)

Functions

This section is empty.

Types

type DB

type DB interface {
	// Migrate migrates the database.
	Migrate(ctx context.Context) error
	// FindFile returns a file by its ID. Includes file content.
	FindFile(ctx context.Context, id string) (*snips.File, error)
	// CreateFile creates a new file. If a user has more than maxFiles, an error is returned.
	CreateFile(ctx context.Context, file *snips.File, maxFiles uint64) error
	// UpdateFile updates a file.
	UpdateFile(ctx context.Context, file *snips.File) error
	// DeleteFile deletes a file by its ID.
	DeleteFile(ctx context.Context, id string) error
	// FindFilesByUser returns all files for a user. Does not include file content.
	FindFilesByUser(ctx context.Context, userID string) ([]*snips.File, error)
	// FindPublicKeyByFingerprint returns a public key by its fingerprint.
	FindPublicKeyByFingerprint(ctx context.Context, fingerprint string) (*snips.PublicKey, error)
	// CreateUserWithPublicKey creates a new user with a public key.
	CreateUserWithPublicKey(ctx context.Context, publickey *snips.PublicKey) (*snips.User, error)
	// FindUser returns a user by its ID.
	FindUser(ctx context.Context, id string) (*snips.User, error)
	// CreateRevision creates a new file revision. If maxRevisions > 0, prunes oldest revisions exceeding the limit.
	CreateRevision(ctx context.Context, revision *snips.Revision, maxRevisions uint64) error
	// FindRevisionsByFileID returns all revisions for a file, ordered by sequence DESC. Does not include diff content.
	FindRevisionsByFileID(ctx context.Context, fileID string) ([]*snips.Revision, error)
	// FindRevisionByFileIDAndSequence returns a revision by file ID and sequence number, including diff content.
	FindRevisionByFileIDAndSequence(ctx context.Context, fileID string, sequence int64) (*snips.Revision, error)
	// CountRevisionsByFileID returns the number of revisions for a file.
	CountRevisionsByFileID(ctx context.Context, fileID string) (int64, error)
}

func NewSqlite

func NewSqlite(dsn string) (DB, error)

type MockDB

type MockDB struct {
	mock.Mock
}

MockDB is an autogenerated mock type for the DB type

func NewMockDB

func NewMockDB(t interface {
	mock.TestingT
	Cleanup(func())
}) *MockDB

NewMockDB creates a new instance of MockDB. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations. The first argument is typically a *testing.T value.

func (*MockDB) CountRevisionsByFileID added in v0.10.0

func (_mock *MockDB) CountRevisionsByFileID(ctx context.Context, fileID string) (int64, error)

CountRevisionsByFileID provides a mock function for the type MockDB

func (*MockDB) CreateFile

func (_mock *MockDB) CreateFile(ctx context.Context, file *snips.File, maxFiles uint64) error

CreateFile provides a mock function for the type MockDB

func (*MockDB) CreateRevision added in v0.10.0

func (_mock *MockDB) CreateRevision(ctx context.Context, revision *snips.Revision, maxRevisions uint64) error

CreateRevision provides a mock function for the type MockDB

func (*MockDB) CreateUserWithPublicKey

func (_mock *MockDB) CreateUserWithPublicKey(ctx context.Context, publickey *snips.PublicKey) (*snips.User, error)

CreateUserWithPublicKey provides a mock function for the type MockDB

func (*MockDB) DeleteFile

func (_mock *MockDB) DeleteFile(ctx context.Context, id string) error

DeleteFile provides a mock function for the type MockDB

func (*MockDB) EXPECT

func (_m *MockDB) EXPECT() *MockDB_Expecter

func (*MockDB) FindFile

func (_mock *MockDB) FindFile(ctx context.Context, id string) (*snips.File, error)

FindFile provides a mock function for the type MockDB

func (*MockDB) FindFilesByUser

func (_mock *MockDB) FindFilesByUser(ctx context.Context, userID string) ([]*snips.File, error)

FindFilesByUser provides a mock function for the type MockDB

func (*MockDB) FindPublicKeyByFingerprint

func (_mock *MockDB) FindPublicKeyByFingerprint(ctx context.Context, fingerprint string) (*snips.PublicKey, error)

FindPublicKeyByFingerprint provides a mock function for the type MockDB

func (*MockDB) FindRevisionByFileIDAndSequence added in v0.10.0

func (_mock *MockDB) FindRevisionByFileIDAndSequence(ctx context.Context, fileID string, sequence int64) (*snips.Revision, error)

FindRevisionByFileIDAndSequence provides a mock function for the type MockDB

func (*MockDB) FindRevisionsByFileID added in v0.10.0

func (_mock *MockDB) FindRevisionsByFileID(ctx context.Context, fileID string) ([]*snips.Revision, error)

FindRevisionsByFileID provides a mock function for the type MockDB

func (*MockDB) FindUser

func (_mock *MockDB) FindUser(ctx context.Context, id string) (*snips.User, error)

FindUser provides a mock function for the type MockDB

func (*MockDB) Migrate

func (_mock *MockDB) Migrate(ctx context.Context) error

Migrate provides a mock function for the type MockDB

func (*MockDB) UpdateFile

func (_mock *MockDB) UpdateFile(ctx context.Context, file *snips.File) error

UpdateFile provides a mock function for the type MockDB

type MockDB_CountRevisionsByFileID_Call added in v0.10.0

type MockDB_CountRevisionsByFileID_Call struct {
	*mock.Call
}

MockDB_CountRevisionsByFileID_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CountRevisionsByFileID'

func (*MockDB_CountRevisionsByFileID_Call) Return added in v0.10.0

func (*MockDB_CountRevisionsByFileID_Call) Run added in v0.10.0

func (*MockDB_CountRevisionsByFileID_Call) RunAndReturn added in v0.10.0

type MockDB_CreateFile_Call

type MockDB_CreateFile_Call struct {
	*mock.Call
}

MockDB_CreateFile_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateFile'

func (*MockDB_CreateFile_Call) Return

func (*MockDB_CreateFile_Call) Run

func (_c *MockDB_CreateFile_Call) Run(run func(ctx context.Context, file *snips.File, maxFiles uint64)) *MockDB_CreateFile_Call

func (*MockDB_CreateFile_Call) RunAndReturn

func (_c *MockDB_CreateFile_Call) RunAndReturn(run func(ctx context.Context, file *snips.File, maxFiles uint64) error) *MockDB_CreateFile_Call

type MockDB_CreateRevision_Call added in v0.10.0

type MockDB_CreateRevision_Call struct {
	*mock.Call
}

MockDB_CreateRevision_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateRevision'

func (*MockDB_CreateRevision_Call) Return added in v0.10.0

func (*MockDB_CreateRevision_Call) Run added in v0.10.0

func (_c *MockDB_CreateRevision_Call) Run(run func(ctx context.Context, revision *snips.Revision, maxRevisions uint64)) *MockDB_CreateRevision_Call

func (*MockDB_CreateRevision_Call) RunAndReturn added in v0.10.0

func (_c *MockDB_CreateRevision_Call) RunAndReturn(run func(ctx context.Context, revision *snips.Revision, maxRevisions uint64) error) *MockDB_CreateRevision_Call

type MockDB_CreateUserWithPublicKey_Call

type MockDB_CreateUserWithPublicKey_Call struct {
	*mock.Call
}

MockDB_CreateUserWithPublicKey_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'CreateUserWithPublicKey'

func (*MockDB_CreateUserWithPublicKey_Call) Return

func (*MockDB_CreateUserWithPublicKey_Call) Run

func (*MockDB_CreateUserWithPublicKey_Call) RunAndReturn

type MockDB_DeleteFile_Call

type MockDB_DeleteFile_Call struct {
	*mock.Call
}

MockDB_DeleteFile_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'DeleteFile'

func (*MockDB_DeleteFile_Call) Return

func (*MockDB_DeleteFile_Call) Run

func (*MockDB_DeleteFile_Call) RunAndReturn

func (_c *MockDB_DeleteFile_Call) RunAndReturn(run func(ctx context.Context, id string) error) *MockDB_DeleteFile_Call

type MockDB_Expecter

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

func (*MockDB_Expecter) CountRevisionsByFileID added in v0.10.0

func (_e *MockDB_Expecter) CountRevisionsByFileID(ctx interface{}, fileID interface{}) *MockDB_CountRevisionsByFileID_Call

CountRevisionsByFileID is a helper method to define mock.On call

  • ctx context.Context
  • fileID string

func (*MockDB_Expecter) CreateFile

func (_e *MockDB_Expecter) CreateFile(ctx interface{}, file interface{}, maxFiles interface{}) *MockDB_CreateFile_Call

CreateFile is a helper method to define mock.On call

  • ctx context.Context
  • file *snips.File
  • maxFiles uint64

func (*MockDB_Expecter) CreateRevision added in v0.10.0

func (_e *MockDB_Expecter) CreateRevision(ctx interface{}, revision interface{}, maxRevisions interface{}) *MockDB_CreateRevision_Call

CreateRevision is a helper method to define mock.On call

  • ctx context.Context
  • revision *snips.Revision
  • maxRevisions uint64

func (*MockDB_Expecter) CreateUserWithPublicKey

func (_e *MockDB_Expecter) CreateUserWithPublicKey(ctx interface{}, publickey interface{}) *MockDB_CreateUserWithPublicKey_Call

CreateUserWithPublicKey is a helper method to define mock.On call

  • ctx context.Context
  • publickey *snips.PublicKey

func (*MockDB_Expecter) DeleteFile

func (_e *MockDB_Expecter) DeleteFile(ctx interface{}, id interface{}) *MockDB_DeleteFile_Call

DeleteFile is a helper method to define mock.On call

  • ctx context.Context
  • id string

func (*MockDB_Expecter) FindFile

func (_e *MockDB_Expecter) FindFile(ctx interface{}, id interface{}) *MockDB_FindFile_Call

FindFile is a helper method to define mock.On call

  • ctx context.Context
  • id string

func (*MockDB_Expecter) FindFilesByUser

func (_e *MockDB_Expecter) FindFilesByUser(ctx interface{}, userID interface{}) *MockDB_FindFilesByUser_Call

FindFilesByUser is a helper method to define mock.On call

  • ctx context.Context
  • userID string

func (*MockDB_Expecter) FindPublicKeyByFingerprint

func (_e *MockDB_Expecter) FindPublicKeyByFingerprint(ctx interface{}, fingerprint interface{}) *MockDB_FindPublicKeyByFingerprint_Call

FindPublicKeyByFingerprint is a helper method to define mock.On call

  • ctx context.Context
  • fingerprint string

func (*MockDB_Expecter) FindRevisionByFileIDAndSequence added in v0.10.0

func (_e *MockDB_Expecter) FindRevisionByFileIDAndSequence(ctx interface{}, fileID interface{}, sequence interface{}) *MockDB_FindRevisionByFileIDAndSequence_Call

FindRevisionByFileIDAndSequence is a helper method to define mock.On call

  • ctx context.Context
  • fileID string
  • sequence int64

func (*MockDB_Expecter) FindRevisionsByFileID added in v0.10.0

func (_e *MockDB_Expecter) FindRevisionsByFileID(ctx interface{}, fileID interface{}) *MockDB_FindRevisionsByFileID_Call

FindRevisionsByFileID is a helper method to define mock.On call

  • ctx context.Context
  • fileID string

func (*MockDB_Expecter) FindUser

func (_e *MockDB_Expecter) FindUser(ctx interface{}, id interface{}) *MockDB_FindUser_Call

FindUser is a helper method to define mock.On call

  • ctx context.Context
  • id string

func (*MockDB_Expecter) Migrate

func (_e *MockDB_Expecter) Migrate(ctx interface{}) *MockDB_Migrate_Call

Migrate is a helper method to define mock.On call

  • ctx context.Context

func (*MockDB_Expecter) UpdateFile

func (_e *MockDB_Expecter) UpdateFile(ctx interface{}, file interface{}) *MockDB_UpdateFile_Call

UpdateFile is a helper method to define mock.On call

  • ctx context.Context
  • file *snips.File

type MockDB_FindFile_Call

type MockDB_FindFile_Call struct {
	*mock.Call
}

MockDB_FindFile_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindFile'

func (*MockDB_FindFile_Call) Return

func (_c *MockDB_FindFile_Call) Return(file *snips.File, err error) *MockDB_FindFile_Call

func (*MockDB_FindFile_Call) Run

func (_c *MockDB_FindFile_Call) Run(run func(ctx context.Context, id string)) *MockDB_FindFile_Call

func (*MockDB_FindFile_Call) RunAndReturn

func (_c *MockDB_FindFile_Call) RunAndReturn(run func(ctx context.Context, id string) (*snips.File, error)) *MockDB_FindFile_Call

type MockDB_FindFilesByUser_Call

type MockDB_FindFilesByUser_Call struct {
	*mock.Call
}

MockDB_FindFilesByUser_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindFilesByUser'

func (*MockDB_FindFilesByUser_Call) Return

func (*MockDB_FindFilesByUser_Call) Run

func (*MockDB_FindFilesByUser_Call) RunAndReturn

func (_c *MockDB_FindFilesByUser_Call) RunAndReturn(run func(ctx context.Context, userID string) ([]*snips.File, error)) *MockDB_FindFilesByUser_Call

type MockDB_FindPublicKeyByFingerprint_Call

type MockDB_FindPublicKeyByFingerprint_Call struct {
	*mock.Call
}

MockDB_FindPublicKeyByFingerprint_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindPublicKeyByFingerprint'

func (*MockDB_FindPublicKeyByFingerprint_Call) Return

func (*MockDB_FindPublicKeyByFingerprint_Call) Run

func (*MockDB_FindPublicKeyByFingerprint_Call) RunAndReturn

type MockDB_FindRevisionByFileIDAndSequence_Call added in v0.10.0

type MockDB_FindRevisionByFileIDAndSequence_Call struct {
	*mock.Call
}

MockDB_FindRevisionByFileIDAndSequence_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindRevisionByFileIDAndSequence'

func (*MockDB_FindRevisionByFileIDAndSequence_Call) Return added in v0.10.0

func (*MockDB_FindRevisionByFileIDAndSequence_Call) Run added in v0.10.0

func (*MockDB_FindRevisionByFileIDAndSequence_Call) RunAndReturn added in v0.10.0

type MockDB_FindRevisionsByFileID_Call added in v0.10.0

type MockDB_FindRevisionsByFileID_Call struct {
	*mock.Call
}

MockDB_FindRevisionsByFileID_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindRevisionsByFileID'

func (*MockDB_FindRevisionsByFileID_Call) Return added in v0.10.0

func (*MockDB_FindRevisionsByFileID_Call) Run added in v0.10.0

func (*MockDB_FindRevisionsByFileID_Call) RunAndReturn added in v0.10.0

type MockDB_FindUser_Call

type MockDB_FindUser_Call struct {
	*mock.Call
}

MockDB_FindUser_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'FindUser'

func (*MockDB_FindUser_Call) Return

func (_c *MockDB_FindUser_Call) Return(user *snips.User, err error) *MockDB_FindUser_Call

func (*MockDB_FindUser_Call) Run

func (_c *MockDB_FindUser_Call) Run(run func(ctx context.Context, id string)) *MockDB_FindUser_Call

func (*MockDB_FindUser_Call) RunAndReturn

func (_c *MockDB_FindUser_Call) RunAndReturn(run func(ctx context.Context, id string) (*snips.User, error)) *MockDB_FindUser_Call

type MockDB_Migrate_Call

type MockDB_Migrate_Call struct {
	*mock.Call
}

MockDB_Migrate_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'Migrate'

func (*MockDB_Migrate_Call) Return

func (*MockDB_Migrate_Call) Run

func (_c *MockDB_Migrate_Call) Run(run func(ctx context.Context)) *MockDB_Migrate_Call

func (*MockDB_Migrate_Call) RunAndReturn

func (_c *MockDB_Migrate_Call) RunAndReturn(run func(ctx context.Context) error) *MockDB_Migrate_Call

type MockDB_UpdateFile_Call

type MockDB_UpdateFile_Call struct {
	*mock.Call
}

MockDB_UpdateFile_Call is a *mock.Call that shadows Run/Return methods with type explicit version for method 'UpdateFile'

func (*MockDB_UpdateFile_Call) Return

func (*MockDB_UpdateFile_Call) Run

func (_c *MockDB_UpdateFile_Call) Run(run func(ctx context.Context, file *snips.File)) *MockDB_UpdateFile_Call

func (*MockDB_UpdateFile_Call) RunAndReturn

func (_c *MockDB_UpdateFile_Call) RunAndReturn(run func(ctx context.Context, file *snips.File) error) *MockDB_UpdateFile_Call

type Sqlite

type Sqlite struct {
	*sql.DB
}

func (*Sqlite) CountRevisionsByFileID added in v0.10.0

func (s *Sqlite) CountRevisionsByFileID(ctx context.Context, fileID string) (int64, error)

func (*Sqlite) CreateFile

func (s *Sqlite) CreateFile(ctx context.Context, file *snips.File, maxFileCount uint64) error

func (*Sqlite) CreateRevision added in v0.10.0

func (s *Sqlite) CreateRevision(ctx context.Context, revision *snips.Revision, maxRevisions uint64) error

func (*Sqlite) CreateUserWithPublicKey

func (s *Sqlite) CreateUserWithPublicKey(ctx context.Context, publickey *snips.PublicKey) (*snips.User, error)

func (*Sqlite) DeleteFile

func (s *Sqlite) DeleteFile(ctx context.Context, id string) error

func (*Sqlite) FindFile

func (s *Sqlite) FindFile(ctx context.Context, id string) (*snips.File, error)

func (*Sqlite) FindFilesByUser

func (s *Sqlite) FindFilesByUser(ctx context.Context, userID string) ([]*snips.File, error)

func (*Sqlite) FindPublicKeyByFingerprint

func (s *Sqlite) FindPublicKeyByFingerprint(ctx context.Context, fingerprint string) (*snips.PublicKey, error)

func (*Sqlite) FindRevisionByFileIDAndSequence added in v0.10.0

func (s *Sqlite) FindRevisionByFileIDAndSequence(ctx context.Context, fileID string, sequence int64) (*snips.Revision, error)

func (*Sqlite) FindRevisionsByFileID added in v0.10.0

func (s *Sqlite) FindRevisionsByFileID(ctx context.Context, fileID string) ([]*snips.Revision, error)

func (*Sqlite) FindUser

func (s *Sqlite) FindUser(ctx context.Context, id string) (*snips.User, error)

func (*Sqlite) Migrate

func (s *Sqlite) Migrate(ctx context.Context) error

func (*Sqlite) UpdateFile

func (s *Sqlite) UpdateFile(ctx context.Context, file *snips.File) error

Jump to

Keyboard shortcuts

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