mirror of
https://github.com/mxpv/podsync.git
synced 2024-05-11 05:55:04 +00:00
Decouple config package
This commit is contained in:
+8
-2
@@ -11,7 +11,6 @@ import (
|
||||
"github.com/pkg/errors"
|
||||
log "github.com/sirupsen/logrus"
|
||||
|
||||
"github.com/mxpv/podsync/pkg/config"
|
||||
"github.com/mxpv/podsync/pkg/model"
|
||||
)
|
||||
|
||||
@@ -23,13 +22,20 @@ const (
|
||||
episodePath = "episode/%s/%s" // FeedID + EpisodeID
|
||||
)
|
||||
|
||||
// BadgerConfig represents BadgerDB configuration parameters
|
||||
// See https://github.com/dgraph-io/badger#memory-usage
|
||||
type BadgerConfig struct {
|
||||
Truncate bool `toml:"truncate"`
|
||||
FileIO bool `toml:"file_io"`
|
||||
}
|
||||
|
||||
type Badger struct {
|
||||
db *badger.DB
|
||||
}
|
||||
|
||||
var _ Storage = (*Badger)(nil)
|
||||
|
||||
func NewBadger(config *config.Database) (*Badger, error) {
|
||||
func NewBadger(config *Config) (*Badger, error) {
|
||||
var (
|
||||
dir = config.Dir
|
||||
)
|
||||
|
||||
@@ -10,7 +10,6 @@ import (
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/mxpv/podsync/pkg/config"
|
||||
"github.com/mxpv/podsync/pkg/model"
|
||||
)
|
||||
|
||||
@@ -20,7 +19,7 @@ func TestNewBadger(t *testing.T) {
|
||||
dir, err := ioutil.TempDir("", "podsync-badger-")
|
||||
require.NoError(t, err)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
|
||||
err = db.Close()
|
||||
@@ -35,7 +34,7 @@ func TestBadger_Version(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -49,7 +48,7 @@ func TestBadger_AddFeed(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -63,7 +62,7 @@ func TestBadger_GetFeed(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -83,7 +82,7 @@ func TestBadger_WalkFeeds(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -109,7 +108,7 @@ func TestBadger_DeleteFeed(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -134,7 +133,7 @@ func TestBadger_UpdateEpisode(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
@@ -164,7 +163,7 @@ func TestBadger_WalkEpisodes(t *testing.T) {
|
||||
assert.NoError(t, err)
|
||||
defer os.RemoveAll(dir)
|
||||
|
||||
db, err := NewBadger(&config.Database{Dir: dir})
|
||||
db, err := NewBadger(&Config{Dir: dir})
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
package db
|
||||
|
||||
type Config struct {
|
||||
// Dir is a directory to keep database files
|
||||
Dir string `toml:"dir"`
|
||||
Badger *BadgerConfig `toml:"badger"`
|
||||
}
|
||||
Reference in New Issue
Block a user