chore(storage): minor refactoring
- Unexport `SyncServers` - Re-generate mock file - Remove single use function
This commit is contained in:
@@ -1,46 +0,0 @@
|
||||
// Code generated by MockGen. DO NOT EDIT.
|
||||
// Source: github.com/qdm12/gluetun/internal/storage (interfaces: InfoErrorer)
|
||||
|
||||
// Package storage is a generated GoMock package.
|
||||
package storage
|
||||
|
||||
import (
|
||||
reflect "reflect"
|
||||
|
||||
gomock "github.com/golang/mock/gomock"
|
||||
)
|
||||
|
||||
// MockInfoErrorer is a mock of InfoErrorer interface.
|
||||
type MockInfoErrorer struct {
|
||||
ctrl *gomock.Controller
|
||||
recorder *MockInfoErrorerMockRecorder
|
||||
}
|
||||
|
||||
// MockInfoErrorerMockRecorder is the mock recorder for MockInfoErrorer.
|
||||
type MockInfoErrorerMockRecorder struct {
|
||||
mock *MockInfoErrorer
|
||||
}
|
||||
|
||||
// NewMockInfoErrorer creates a new mock instance.
|
||||
func NewMockInfoErrorer(ctrl *gomock.Controller) *MockInfoErrorer {
|
||||
mock := &MockInfoErrorer{ctrl: ctrl}
|
||||
mock.recorder = &MockInfoErrorerMockRecorder{mock}
|
||||
return mock
|
||||
}
|
||||
|
||||
// EXPECT returns an object that allows the caller to indicate expected use.
|
||||
func (m *MockInfoErrorer) EXPECT() *MockInfoErrorerMockRecorder {
|
||||
return m.recorder
|
||||
}
|
||||
|
||||
// Info mocks base method.
|
||||
func (m *MockInfoErrorer) Info(arg0 string) {
|
||||
m.ctrl.T.Helper()
|
||||
m.ctrl.Call(m, "Info", arg0)
|
||||
}
|
||||
|
||||
// Info indicates an expected call of Info.
|
||||
func (mr *MockInfoErrorerMockRecorder) Info(arg0 interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Info", reflect.TypeOf((*MockInfoErrorer)(nil).Info), arg0)
|
||||
}
|
||||
@@ -7,17 +7,6 @@ import (
|
||||
"github.com/qdm12/gluetun/internal/models"
|
||||
)
|
||||
|
||||
func (s *Storage) logTimeDiff(provider string, persistedUnix, hardcodedUnix int64) {
|
||||
diff := time.Unix(persistedUnix, 0).Sub(time.Unix(hardcodedUnix, 0))
|
||||
if diff < 0 {
|
||||
diff = -diff
|
||||
}
|
||||
diff = diff.Truncate(time.Second)
|
||||
message := "Using " + provider + " servers from file which are " +
|
||||
diff.String() + " more recent"
|
||||
s.logger.Info(message)
|
||||
}
|
||||
|
||||
func (s *Storage) mergeServers(hardcoded, persisted models.AllServers) models.AllServers {
|
||||
allProviders := providers.All()
|
||||
merged := models.AllServers{
|
||||
@@ -41,6 +30,14 @@ func (s *Storage) mergeProviderServers(provider string,
|
||||
return hardcoded
|
||||
}
|
||||
|
||||
s.logTimeDiff(provider, persisted.Timestamp, hardcoded.Timestamp)
|
||||
diff := time.Unix(persisted.Timestamp, 0).Sub(time.Unix(hardcoded.Timestamp, 0))
|
||||
if diff < 0 {
|
||||
diff = -diff
|
||||
}
|
||||
diff = diff.Truncate(time.Second)
|
||||
message := "Using " + provider + " servers from file which are " +
|
||||
diff.String() + " more recent"
|
||||
s.logger.Info(message)
|
||||
|
||||
return persisted
|
||||
}
|
||||
|
||||
3
internal/storage/mocks_generate_test.go
Normal file
3
internal/storage/mocks_generate_test.go
Normal file
@@ -0,0 +1,3 @@
|
||||
package storage
|
||||
|
||||
//go:generate mockgen -destination=mocks_test.go -package $GOPACKAGE . Infoer
|
||||
46
internal/storage/mocks_test.go
Normal file
46
internal/storage/mocks_test.go
Normal file
@@ -0,0 +1,46 @@
|
||||
// Code generated by MockGen. DO NOT EDIT.
|
||||
// Source: github.com/qdm12/gluetun/internal/storage (interfaces: Infoer)
|
||||
|
||||
// Package storage is a generated GoMock package.
|
||||
package storage
|
||||
|
||||
import (
|
||||
reflect "reflect"
|
||||
|
||||
gomock "github.com/golang/mock/gomock"
|
||||
)
|
||||
|
||||
// MockInfoer is a mock of Infoer interface.
|
||||
type MockInfoer struct {
|
||||
ctrl *gomock.Controller
|
||||
recorder *MockInfoerMockRecorder
|
||||
}
|
||||
|
||||
// MockInfoerMockRecorder is the mock recorder for MockInfoer.
|
||||
type MockInfoerMockRecorder struct {
|
||||
mock *MockInfoer
|
||||
}
|
||||
|
||||
// NewMockInfoer creates a new mock instance.
|
||||
func NewMockInfoer(ctrl *gomock.Controller) *MockInfoer {
|
||||
mock := &MockInfoer{ctrl: ctrl}
|
||||
mock.recorder = &MockInfoerMockRecorder{mock}
|
||||
return mock
|
||||
}
|
||||
|
||||
// EXPECT returns an object that allows the caller to indicate expected use.
|
||||
func (m *MockInfoer) EXPECT() *MockInfoerMockRecorder {
|
||||
return m.recorder
|
||||
}
|
||||
|
||||
// Info mocks base method.
|
||||
func (m *MockInfoer) Info(arg0 string) {
|
||||
m.ctrl.T.Helper()
|
||||
m.ctrl.Call(m, "Info", arg0)
|
||||
}
|
||||
|
||||
// Info indicates an expected call of Info.
|
||||
func (mr *MockInfoerMockRecorder) Info(arg0 interface{}) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Info", reflect.TypeOf((*MockInfoer)(nil).Info), arg0)
|
||||
}
|
||||
@@ -63,7 +63,8 @@ func (s *Storage) extractServersFromBytes(b []byte, hardcodedVersions map[string
|
||||
continue
|
||||
}
|
||||
|
||||
mergedServers, versionsMatch, err := s.readServers(provider, hardcodedVersion, rawMessage, titleCaser)
|
||||
mergedServers, versionsMatch, err := s.readServers(provider,
|
||||
hardcodedVersion, rawMessage, titleCaser)
|
||||
if err != nil {
|
||||
return models.AllServers{}, err
|
||||
} else if !versionsMatch {
|
||||
|
||||
@@ -160,7 +160,7 @@ func Test_extractServersFromBytes(t *testing.T) {
|
||||
t.Parallel()
|
||||
ctrl := gomock.NewController(t)
|
||||
|
||||
logger := NewMockInfoErrorer(ctrl)
|
||||
logger := NewMockInfoer(ctrl)
|
||||
var previousLogCall *gomock.Call
|
||||
for _, logged := range testCase.logged {
|
||||
call := logger.EXPECT().Info(logged)
|
||||
|
||||
@@ -5,8 +5,6 @@ import (
|
||||
"github.com/qdm12/gluetun/internal/models"
|
||||
)
|
||||
|
||||
//go:generate mockgen -destination=infoerrorer_mock_test.go -package $GOPACKAGE . InfoErrorer
|
||||
|
||||
type Storage struct {
|
||||
mergedServers models.AllServers
|
||||
// this is stored in memory to avoid re-parsing
|
||||
@@ -35,7 +33,7 @@ func New(logger Infoer, filepath string) (storage *Storage, err error) {
|
||||
filepath: filepath,
|
||||
}
|
||||
|
||||
if err := storage.SyncServers(); err != nil {
|
||||
if err := storage.syncServers(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ func countServers(allServers models.AllServers) (count int) {
|
||||
return count
|
||||
}
|
||||
|
||||
// SyncServers merges the hardcoded servers with the ones from the file.
|
||||
func (s *Storage) SyncServers() (err error) {
|
||||
// syncServers merges the hardcoded servers with the ones from the file.
|
||||
func (s *Storage) syncServers() (err error) {
|
||||
hardcodedVersions := make(map[string]uint16, len(s.hardcodedServers.ProviderToServers))
|
||||
for provider, servers := range s.hardcodedServers.ProviderToServers {
|
||||
hardcodedVersions[provider] = servers.Version
|
||||
|
||||
Reference in New Issue
Block a user