diff --git a/cmd/server/main.go b/cmd/server/main.go index 23e2754..fb462f3 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -29,7 +29,7 @@ func run() error { } grpcServer := grpc.NewServer() - store := repository.NewSQLite(db) + store := repository.NewFeatureSQLite(db) notifier := feature.NewService(grpcServer, store) migrator := repository.NewSQLMigrator(db) routes := routes.New(store, notifier) diff --git a/internal/repository/feature_sqlite.go b/internal/repository/feature_sqlite.go new file mode 100644 index 0000000..6a8975e --- /dev/null +++ b/internal/repository/feature_sqlite.go @@ -0,0 +1,30 @@ +//go:generate sqlc -f ../../sqlc.yaml generate + +package repository + +import ( + "context" + + "github.com/flohansen/dasher/internal/sqlc" +) + +type FeatureSQLite struct { + q *sqlc.Queries +} + +func NewFeatureSQLite(db sqlc.DBTX) *FeatureSQLite { + q := sqlc.New(db) + return &FeatureSQLite{q} +} + +func (repo *FeatureSQLite) GetAll(ctx context.Context) ([]sqlc.Feature, error) { + return repo.q.GetAllFeatures(ctx) +} + +func (repo *FeatureSQLite) Upsert(ctx context.Context, feature sqlc.Feature) error { + return repo.q.UpsertFeature(ctx, sqlc.UpsertFeatureParams(feature)) +} + +func (repo *FeatureSQLite) Delete(ctx context.Context, featureID string) error { + return repo.q.DeleteFeature(ctx, featureID) +} diff --git a/internal/repository/sqlite_test.go b/internal/repository/feature_sqlite_test.go similarity index 98% rename from internal/repository/sqlite_test.go rename to internal/repository/feature_sqlite_test.go index 2f1d1cc..be14f6d 100644 --- a/internal/repository/sqlite_test.go +++ b/internal/repository/feature_sqlite_test.go @@ -20,7 +20,7 @@ const ( func TestSQLiteDatastore_Integration(t *testing.T) { t.Run("given an empty database", func(t *testing.T) { db := createTestDatabase(t) - store := NewSQLite(db.db) + store := NewFeatureSQLite(db.db) db.init() @@ -43,7 +43,7 @@ func TestSQLiteDatastore_Integration(t *testing.T) { t.Run("given a database with a feature toggle", func(t *testing.T) { db := createTestDatabase(t) - store := NewSQLite(db.db) + store := NewFeatureSQLite(db.db) db.init() db.insertFeature("FEATURE_TOGGLE_TEST") diff --git a/internal/repository/sqlite.go b/internal/repository/sqlite.go deleted file mode 100644 index 5d6862b..0000000 --- a/internal/repository/sqlite.go +++ /dev/null @@ -1,30 +0,0 @@ -//go:generate sqlc -f ../../sqlc.yaml generate - -package repository - -import ( - "context" - - "github.com/flohansen/dasher/internal/sqlc" -) - -type SQLiteDatastore struct { - q *sqlc.Queries -} - -func NewSQLite(db sqlc.DBTX) *SQLiteDatastore { - q := sqlc.New(db) - return &SQLiteDatastore{q} -} - -func (repo *SQLiteDatastore) GetAll(ctx context.Context) ([]sqlc.Feature, error) { - return repo.q.GetAllFeatures(ctx) -} - -func (repo *SQLiteDatastore) Upsert(ctx context.Context, feature sqlc.Feature) error { - return repo.q.UpsertFeature(ctx, sqlc.UpsertFeatureParams(feature)) -} - -func (repo *SQLiteDatastore) Delete(ctx context.Context, featureID string) error { - return repo.q.DeleteFeature(ctx, featureID) -} diff --git a/internal/repository/sql_migrator.go b/internal/repository/sqlite_migrator.go similarity index 100% rename from internal/repository/sql_migrator.go rename to internal/repository/sqlite_migrator.go