mirror of
https://github.com/mxpv/podsync.git
synced 2024-05-11 05:55:04 +00:00
Refactor feeds package
This commit is contained in:
+17
-4
@@ -13,9 +13,22 @@ const (
|
||||
maxPageSize = 150
|
||||
)
|
||||
|
||||
type idService interface {
|
||||
Generate(feed *api.Feed) (string, error)
|
||||
}
|
||||
|
||||
type storageService interface {
|
||||
CreateFeed(feed *api.Feed) error
|
||||
GetFeed(hashId string) (*api.Feed, error)
|
||||
}
|
||||
|
||||
type builder interface {
|
||||
Build(feed *api.Feed) (podcast *itunes.Podcast, err error)
|
||||
}
|
||||
|
||||
type service struct {
|
||||
id id
|
||||
storage storage
|
||||
id idService
|
||||
storage storageService
|
||||
builders map[api.Provider]builder
|
||||
}
|
||||
|
||||
@@ -85,13 +98,13 @@ func (s *service) GetMetadata(hashId string) (*api.Feed, error) {
|
||||
|
||||
type feedOption func(*service)
|
||||
|
||||
func WithStorage(storage storage) feedOption {
|
||||
func WithStorage(storage storageService) feedOption {
|
||||
return func(service *service) {
|
||||
service.storage = storage
|
||||
}
|
||||
}
|
||||
|
||||
func WithIdGen(id id) feedOption {
|
||||
func WithIdGen(id idService) feedOption {
|
||||
return func(service *service) {
|
||||
service.id = id
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// Code generated by MockGen. DO NOT EDIT.
|
||||
// Source: interfaces.go
|
||||
// Source: feeds.go
|
||||
|
||||
package feeds
|
||||
|
||||
@@ -10,31 +10,31 @@ import (
|
||||
reflect "reflect"
|
||||
)
|
||||
|
||||
// Mockid is a mock of id interface
|
||||
type Mockid struct {
|
||||
// MockidService is a mock of idService interface
|
||||
type MockidService struct {
|
||||
ctrl *gomock.Controller
|
||||
recorder *MockidMockRecorder
|
||||
recorder *MockidServiceMockRecorder
|
||||
}
|
||||
|
||||
// MockidMockRecorder is the mock recorder for Mockid
|
||||
type MockidMockRecorder struct {
|
||||
mock *Mockid
|
||||
// MockidServiceMockRecorder is the mock recorder for MockidService
|
||||
type MockidServiceMockRecorder struct {
|
||||
mock *MockidService
|
||||
}
|
||||
|
||||
// NewMockid creates a new mock instance
|
||||
func NewMockid(ctrl *gomock.Controller) *Mockid {
|
||||
mock := &Mockid{ctrl: ctrl}
|
||||
mock.recorder = &MockidMockRecorder{mock}
|
||||
// NewMockidService creates a new mock instance
|
||||
func NewMockidService(ctrl *gomock.Controller) *MockidService {
|
||||
mock := &MockidService{ctrl: ctrl}
|
||||
mock.recorder = &MockidServiceMockRecorder{mock}
|
||||
return mock
|
||||
}
|
||||
|
||||
// EXPECT returns an object that allows the caller to indicate expected use
|
||||
func (_m *Mockid) EXPECT() *MockidMockRecorder {
|
||||
func (_m *MockidService) EXPECT() *MockidServiceMockRecorder {
|
||||
return _m.recorder
|
||||
}
|
||||
|
||||
// Generate mocks base method
|
||||
func (_m *Mockid) Generate(feed *api.Feed) (string, error) {
|
||||
func (_m *MockidService) Generate(feed *api.Feed) (string, error) {
|
||||
ret := _m.ctrl.Call(_m, "Generate", feed)
|
||||
ret0, _ := ret[0].(string)
|
||||
ret1, _ := ret[1].(error)
|
||||
@@ -42,47 +42,47 @@ func (_m *Mockid) Generate(feed *api.Feed) (string, error) {
|
||||
}
|
||||
|
||||
// Generate indicates an expected call of Generate
|
||||
func (_mr *MockidMockRecorder) Generate(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "Generate", reflect.TypeOf((*Mockid)(nil).Generate), arg0)
|
||||
func (_mr *MockidServiceMockRecorder) Generate(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "Generate", reflect.TypeOf((*MockidService)(nil).Generate), arg0)
|
||||
}
|
||||
|
||||
// Mockstorage is a mock of storage interface
|
||||
type Mockstorage struct {
|
||||
// MockstorageService is a mock of storageService interface
|
||||
type MockstorageService struct {
|
||||
ctrl *gomock.Controller
|
||||
recorder *MockstorageMockRecorder
|
||||
recorder *MockstorageServiceMockRecorder
|
||||
}
|
||||
|
||||
// MockstorageMockRecorder is the mock recorder for Mockstorage
|
||||
type MockstorageMockRecorder struct {
|
||||
mock *Mockstorage
|
||||
// MockstorageServiceMockRecorder is the mock recorder for MockstorageService
|
||||
type MockstorageServiceMockRecorder struct {
|
||||
mock *MockstorageService
|
||||
}
|
||||
|
||||
// NewMockstorage creates a new mock instance
|
||||
func NewMockstorage(ctrl *gomock.Controller) *Mockstorage {
|
||||
mock := &Mockstorage{ctrl: ctrl}
|
||||
mock.recorder = &MockstorageMockRecorder{mock}
|
||||
// NewMockstorageService creates a new mock instance
|
||||
func NewMockstorageService(ctrl *gomock.Controller) *MockstorageService {
|
||||
mock := &MockstorageService{ctrl: ctrl}
|
||||
mock.recorder = &MockstorageServiceMockRecorder{mock}
|
||||
return mock
|
||||
}
|
||||
|
||||
// EXPECT returns an object that allows the caller to indicate expected use
|
||||
func (_m *Mockstorage) EXPECT() *MockstorageMockRecorder {
|
||||
func (_m *MockstorageService) EXPECT() *MockstorageServiceMockRecorder {
|
||||
return _m.recorder
|
||||
}
|
||||
|
||||
// CreateFeed mocks base method
|
||||
func (_m *Mockstorage) CreateFeed(feed *api.Feed) error {
|
||||
func (_m *MockstorageService) CreateFeed(feed *api.Feed) error {
|
||||
ret := _m.ctrl.Call(_m, "CreateFeed", feed)
|
||||
ret0, _ := ret[0].(error)
|
||||
return ret0
|
||||
}
|
||||
|
||||
// CreateFeed indicates an expected call of CreateFeed
|
||||
func (_mr *MockstorageMockRecorder) CreateFeed(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "CreateFeed", reflect.TypeOf((*Mockstorage)(nil).CreateFeed), arg0)
|
||||
func (_mr *MockstorageServiceMockRecorder) CreateFeed(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "CreateFeed", reflect.TypeOf((*MockstorageService)(nil).CreateFeed), arg0)
|
||||
}
|
||||
|
||||
// GetFeed mocks base method
|
||||
func (_m *Mockstorage) GetFeed(hashId string) (*api.Feed, error) {
|
||||
func (_m *MockstorageService) GetFeed(hashId string) (*api.Feed, error) {
|
||||
ret := _m.ctrl.Call(_m, "GetFeed", hashId)
|
||||
ret0, _ := ret[0].(*api.Feed)
|
||||
ret1, _ := ret[1].(error)
|
||||
@@ -90,8 +90,8 @@ func (_m *Mockstorage) GetFeed(hashId string) (*api.Feed, error) {
|
||||
}
|
||||
|
||||
// GetFeed indicates an expected call of GetFeed
|
||||
func (_mr *MockstorageMockRecorder) GetFeed(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "GetFeed", reflect.TypeOf((*Mockstorage)(nil).GetFeed), arg0)
|
||||
func (_mr *MockstorageServiceMockRecorder) GetFeed(arg0 interface{}) *gomock.Call {
|
||||
return _mr.mock.ctrl.RecordCallWithMethodType(_mr.mock, "GetFeed", reflect.TypeOf((*MockstorageService)(nil).GetFeed), arg0)
|
||||
}
|
||||
|
||||
// Mockbuilder is a mock of builder interface
|
||||
@@ -1,4 +1,4 @@
|
||||
//go:generate mockgen -source=interfaces.go -destination=interfaces_mock_test.go -package=feeds
|
||||
//go:generate mockgen -source=feeds.go -destination=feeds_mock_test.go -package=feeds
|
||||
|
||||
package feeds
|
||||
|
||||
@@ -14,10 +14,10 @@ func TestService_CreateFeed(t *testing.T) {
|
||||
ctrl := gomock.NewController(t)
|
||||
defer ctrl.Finish()
|
||||
|
||||
id := NewMockid(ctrl)
|
||||
id := NewMockidService(ctrl)
|
||||
id.EXPECT().Generate(gomock.Any()).Times(1).Return("123", nil)
|
||||
|
||||
storage := NewMockstorage(ctrl)
|
||||
storage := NewMockstorageService(ctrl)
|
||||
storage.EXPECT().CreateFeed(gomock.Any()).Times(1).Return(nil)
|
||||
|
||||
s := service{
|
||||
@@ -44,7 +44,7 @@ func TestService_GetFeed(t *testing.T) {
|
||||
|
||||
feed := &api.Feed{Provider: api.Youtube}
|
||||
|
||||
storage := NewMockstorage(ctrl)
|
||||
storage := NewMockstorageService(ctrl)
|
||||
storage.EXPECT().GetFeed("123").Times(1).Return(feed, nil)
|
||||
|
||||
bld := NewMockbuilder(ctrl)
|
||||
@@ -63,7 +63,7 @@ func TestService_GetMetadata(t *testing.T) {
|
||||
ctrl := gomock.NewController(t)
|
||||
defer ctrl.Finish()
|
||||
|
||||
storage := NewMockstorage(ctrl)
|
||||
storage := NewMockstorageService(ctrl)
|
||||
storage.EXPECT().GetFeed("123").Times(1).Return(&api.Feed{}, nil)
|
||||
|
||||
s := service{storage: storage}
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
package feeds
|
||||
|
||||
import (
|
||||
itunes "github.com/mxpv/podcast"
|
||||
"github.com/mxpv/podsync/pkg/api"
|
||||
)
|
||||
|
||||
type id interface {
|
||||
Generate(feed *api.Feed) (string, error)
|
||||
}
|
||||
|
||||
type storage interface {
|
||||
CreateFeed(feed *api.Feed) error
|
||||
GetFeed(hashId string) (*api.Feed, error)
|
||||
}
|
||||
|
||||
type builder interface {
|
||||
Build(feed *api.Feed) (podcast *itunes.Podcast, err error)
|
||||
}
|
||||
Reference in New Issue
Block a user