Documentation
¶
Index ¶
- type MediaRepository
- func (r *MediaRepository) DeleteMedia(ctx context.Context, videoID string) error
- func (r *MediaRepository) GetMedia(ctx context.Context, videoID string) (*model.Media, error)
- func (r *MediaRepository) SaveMedia(ctx context.Context, media *model.Media) error
- func (r *MediaRepository) UpdateMedia(ctx context.Context, videoID string, media *model.Media) error
- type MediaRepositoryOptions
- type MongoDB
- type MongoDBContainer
- type MongoDBContainerConfig
- type MongoOptions
- type TestHelper
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MediaRepository ¶
type MediaRepository struct {
// contains filtered or unexported fields
}
MediaRepository implementa la interfaz MediaRepository para MongoDB.
func NewMediaRepository ¶
func NewMediaRepository(opts MediaRepositoryOptions) (*MediaRepository, error)
NewMediaRepository crea una nueva instancia de MediaRepository.
func (*MediaRepository) DeleteMedia ¶
func (r *MediaRepository) DeleteMedia(ctx context.Context, videoID string) error
DeleteMedia elimina un registro de procesamiento multimedia por su ID y video_id.
func (*MediaRepository) GetMedia ¶
GetMedia obtiene un registro de procesamiento multimedia por su ID y video_id.
func (*MediaRepository) SaveMedia ¶
SaveMedia guarda un registro de procesamiento multimedia en MongoDB.
func (*MediaRepository) UpdateMedia ¶
func (r *MediaRepository) UpdateMedia(ctx context.Context, videoID string, media *model.Media) error
UpdateMedia actualiza un registro de procesamiento multimedia de manera más eficiente.
type MediaRepositoryOptions ¶
type MediaRepositoryOptions struct { Collection *mongo.Collection Log logger.Logger }
MediaRepositoryOptions contiene las opciones para crear un nuevo MediaRepository.
type MongoDB ¶
type MongoDB struct {
// contains filtered or unexported fields
}
func NewMongoDB ¶
func NewMongoDB(opts MongoOptions) (*MongoDB, error)
func (*MongoDB) GetCollection ¶
func (db *MongoDB) GetCollection(collectionName string) *mongo.Collection
type MongoDBContainer ¶
type MongoDBContainer struct { URI string Database string Client *mongo.Client // contains filtered or unexported fields }
MongoDBContainer encapsula la configuración del contenedor de MongoDB
func NewMongoDBContainer ¶
func NewMongoDBContainer(ctx context.Context, config MongoDBContainerConfig) (*MongoDBContainer, error)
NewMongoDBContainer crea una nueva instancia del contenedor
func (*MongoDBContainer) Cleanup ¶
func (m *MongoDBContainer) Cleanup(ctx context.Context) error
Cleanup limpia los recursos del contenedor
func (*MongoDBContainer) Connect ¶
func (m *MongoDBContainer) Connect(ctx context.Context) error
Connect establece la conexión con MongoDB
func (*MongoDBContainer) GetCollection ¶
func (m *MongoDBContainer) GetCollection(name string) *mongo.Collection
GetCollection retorna una colección específica
type MongoDBContainerConfig ¶
type MongoDBContainerConfig struct { ImageName string Database string Port string StartupTimeout time.Duration }
MongoDBContainerConfig contiene la configuración para crear un contenedor
func DefaultMongoDBConfig ¶
func DefaultMongoDBConfig() MongoDBContainerConfig
DefaultMongoDBConfig retorna una configuración por defecto
type TestHelper ¶
type TestHelper struct { MongoDB *MongoDBContainer Logger logger.Logger Context context.Context }
TestHelper encapsula la funcionalidad común para las pruebas
func NewTestHelper ¶
func NewTestHelper(t *testing.T) *TestHelper
NewTestHelper crea un nuevo helper para las pruebas