Skip to content

Commit 790ef72

Browse files
authored
chore_: delete mailservers service (#6810)
* chore_: delete mailservers service * test_: bring back `randomNodeConfig()`
1 parent fc0f832 commit 790ef72

File tree

14 files changed

+107
-821
lines changed

14 files changed

+107
-821
lines changed

api/defaults.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,6 @@ func DefaultNodeConfig(installationID, keyUID string, request *requests.CreateAc
325325

326326
nodeConfig.BrowsersConfig = params.BrowsersConfig{Enabled: true}
327327
nodeConfig.PermissionsConfig = params.PermissionsConfig{Enabled: true}
328-
nodeConfig.MailserversConfig = params.MailserversConfig{Enabled: true}
329328

330329
fleet := request.WakuV2Fleet
331330
if fleet == "" {
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
DROP TABLE IF EXISTS mailservers;
2+
DROP TABLE IF EXISTS mailserver_request_gaps;
3+
DROP TABLE IF EXISTS mailserver_chat_request_ranges;

appdatabase/node_config_test.go

Lines changed: 87 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,91 @@ import (
1919
"github.com/status-im/status-go/t/helpers"
2020
)
2121

22-
func setupTestDB(t *testing.T) (*sql.DB, func()) {
22+
func setupTestDB(t *testing.T) *sql.DB {
2323
db, cleanup, err := helpers.SetupTestSQLDB(DbInitializer{}, "settings-tests-")
2424
require.NoError(t, err)
25-
return db, func() { require.NoError(t, cleanup()) }
25+
26+
t.Cleanup(func() { require.NoError(t, cleanup()) })
27+
return db
28+
}
29+
30+
func randomNodeConfig() *params.NodeConfig {
31+
return &params.NodeConfig{
32+
NetworkID: uint64(int64(randomInt(math.MaxInt64))),
33+
DataDir: randomString(),
34+
NodeKey: randomString(),
35+
APIModules: randomString(),
36+
WalletConfig: params.WalletConfig{Enabled: randomBool()},
37+
BrowsersConfig: params.BrowsersConfig{Enabled: randomBool()},
38+
PermissionsConfig: params.PermissionsConfig{Enabled: randomBool()},
39+
ConnectorConfig: params.ConnectorConfig{Enabled: randomBool()},
40+
HTTPEnabled: randomBool(),
41+
HTTPHost: randomString(),
42+
HTTPPort: randomInt(math.MaxInt64),
43+
HTTPVirtualHosts: randomStringSlice(),
44+
HTTPCors: randomStringSlice(),
45+
WSEnabled: false, // NOTE: leaving ws field idle since we are moving away from the storing the whole config
46+
WSHost: "",
47+
WSPort: 0,
48+
IPCEnabled: randomBool(),
49+
IPCFile: randomString(),
50+
LogEnabled: randomBool(),
51+
LogDir: randomString(),
52+
LogFile: randomString(),
53+
LogLevel: randomString(),
54+
LogMaxBackups: randomInt(math.MaxInt64),
55+
LogMaxSize: randomInt(math.MaxInt64),
56+
LogCompressRotated: randomBool(),
57+
LogToStderr: randomBool(),
58+
ClusterConfig: params.ClusterConfig{
59+
Enabled: randomBool(),
60+
Fleet: randomString(),
61+
StaticNodes: randomStringSlice(),
62+
BootNodes: randomStringSlice(),
63+
},
64+
ShhextConfig: params.ShhextConfig{
65+
PFSEnabled: randomBool(),
66+
InstallationID: randomString(),
67+
MailServerConfirmations: randomBool(),
68+
EnableConnectionManager: randomBool(),
69+
EnableLastUsedMonitor: randomBool(),
70+
ConnectionTarget: randomInt(math.MaxInt64),
71+
RequestsDelay: time.Duration(randomInt(math.MaxInt64)),
72+
MaxServerFailures: randomInt(math.MaxInt64),
73+
MaxMessageDeliveryAttempts: randomInt(math.MaxInt64),
74+
WhisperCacheDir: randomString(),
75+
DisableGenericDiscoveryTopic: randomBool(),
76+
SendV1Messages: randomBool(),
77+
DataSyncEnabled: randomBool(),
78+
VerifyTransactionURL: randomString(),
79+
VerifyENSURL: randomString(),
80+
VerifyENSContractAddress: randomString(),
81+
VerifyTransactionChainID: int64(randomInt(math.MaxInt64)),
82+
AnonMetricsSendID: randomString(),
83+
AnonMetricsServerEnabled: randomBool(),
84+
AnonMetricsServerPostgresURI: randomString(),
85+
BandwidthStatsEnabled: randomBool(),
86+
},
87+
WakuV2Config: params.WakuV2Config{
88+
Enabled: randomBool(),
89+
Host: randomString(),
90+
Port: randomInt(math.MaxInt64),
91+
LightClient: randomBool(),
92+
FullNode: randomBool(),
93+
DiscoveryLimit: randomInt(math.MaxInt64),
94+
DataDir: randomString(),
95+
MaxMessageSize: uint32(randomInt(math.MaxInt64)),
96+
EnableConfirmations: randomBool(),
97+
CustomNodes: randomCustomNodes(),
98+
EnableDiscV5: randomBool(),
99+
UDPPort: randomInt(math.MaxInt64),
100+
AutoUpdate: randomBool(),
101+
},
102+
}
26103
}
27104

28105
func TestGetNodeConfig(t *testing.T) {
29-
db, stop := setupTestDB(t)
30-
defer stop()
106+
db := setupTestDB(t)
31107

32108
nodeConfig := randomNodeConfig()
33109
require.NoError(t, nodecfg.SaveNodeConfig(db, nodeConfig))
@@ -38,22 +114,19 @@ func TestGetNodeConfig(t *testing.T) {
38114
}
39115

40116
func TestSaveNodeConfig(t *testing.T) {
41-
db, stop := setupTestDB(t)
42-
defer stop()
43-
44-
newNodeConfig := randomNodeConfig()
117+
db := setupTestDB(t)
45118

46-
require.NoError(t, nodecfg.SaveNodeConfig(db, newNodeConfig))
119+
nodeConfig := randomNodeConfig()
120+
require.NoError(t, nodecfg.SaveNodeConfig(db, nodeConfig))
47121

48122
dbNodeConfig, err := nodecfg.GetNodeConfigFromDB(db)
49123
require.NoError(t, err)
50-
require.Equal(t, *newNodeConfig, *dbNodeConfig)
124+
require.Equal(t, *nodeConfig, *dbNodeConfig)
51125
}
52126

53127
func TestMigrateNodeConfig(t *testing.T) {
54128
// Migration will be run in setupTestDB. If there's an error, that function will fail
55-
db, stop := setupTestDB(t)
56-
defer stop()
129+
db := setupTestDB(t)
57130

58131
// node_config column should be empty
59132
var result string
@@ -114,86 +187,9 @@ func randomCustomNodes() map[string]string {
114187
return result
115188
}
116189

117-
func randomNodeConfig() *params.NodeConfig {
118-
return &params.NodeConfig{
119-
NetworkID: uint64(int64(randomInt(math.MaxInt64))),
120-
DataDir: randomString(),
121-
NodeKey: randomString(),
122-
APIModules: randomString(),
123-
WalletConfig: params.WalletConfig{Enabled: randomBool()},
124-
BrowsersConfig: params.BrowsersConfig{Enabled: randomBool()},
125-
PermissionsConfig: params.PermissionsConfig{Enabled: randomBool()},
126-
MailserversConfig: params.MailserversConfig{Enabled: randomBool()},
127-
ConnectorConfig: params.ConnectorConfig{Enabled: randomBool()},
128-
HTTPEnabled: randomBool(),
129-
HTTPHost: randomString(),
130-
HTTPPort: randomInt(math.MaxInt64),
131-
HTTPVirtualHosts: randomStringSlice(),
132-
HTTPCors: randomStringSlice(),
133-
WSEnabled: false, // NOTE: leaving ws field idle since we are moving away from the storing the whole config
134-
WSHost: "",
135-
WSPort: 0,
136-
IPCEnabled: randomBool(),
137-
IPCFile: randomString(),
138-
LogEnabled: randomBool(),
139-
LogDir: randomString(),
140-
LogFile: randomString(),
141-
LogLevel: randomString(),
142-
LogMaxBackups: randomInt(math.MaxInt64),
143-
LogMaxSize: randomInt(math.MaxInt64),
144-
LogCompressRotated: randomBool(),
145-
LogToStderr: randomBool(),
146-
ClusterConfig: params.ClusterConfig{
147-
Enabled: randomBool(),
148-
Fleet: randomString(),
149-
StaticNodes: randomStringSlice(),
150-
BootNodes: randomStringSlice(),
151-
},
152-
ShhextConfig: params.ShhextConfig{
153-
PFSEnabled: randomBool(),
154-
InstallationID: randomString(),
155-
MailServerConfirmations: randomBool(),
156-
EnableConnectionManager: randomBool(),
157-
EnableLastUsedMonitor: randomBool(),
158-
ConnectionTarget: randomInt(math.MaxInt64),
159-
RequestsDelay: time.Duration(randomInt(math.MaxInt64)),
160-
MaxServerFailures: randomInt(math.MaxInt64),
161-
MaxMessageDeliveryAttempts: randomInt(math.MaxInt64),
162-
WhisperCacheDir: randomString(),
163-
DisableGenericDiscoveryTopic: randomBool(),
164-
SendV1Messages: randomBool(),
165-
DataSyncEnabled: randomBool(),
166-
VerifyTransactionURL: randomString(),
167-
VerifyENSURL: randomString(),
168-
VerifyENSContractAddress: randomString(),
169-
VerifyTransactionChainID: int64(randomInt(math.MaxInt64)),
170-
AnonMetricsSendID: randomString(),
171-
AnonMetricsServerEnabled: randomBool(),
172-
AnonMetricsServerPostgresURI: randomString(),
173-
BandwidthStatsEnabled: randomBool(),
174-
},
175-
WakuV2Config: params.WakuV2Config{
176-
Enabled: randomBool(),
177-
Host: randomString(),
178-
Port: randomInt(math.MaxInt64),
179-
LightClient: randomBool(),
180-
FullNode: randomBool(),
181-
DiscoveryLimit: randomInt(math.MaxInt64),
182-
DataDir: randomString(),
183-
MaxMessageSize: uint32(randomInt(math.MaxInt64)),
184-
EnableConfirmations: randomBool(),
185-
CustomNodes: randomCustomNodes(),
186-
EnableDiscV5: randomBool(),
187-
UDPPort: randomInt(math.MaxInt64),
188-
AutoUpdate: randomBool(),
189-
},
190-
}
191-
}
192-
193190
func TestConfigValidate(t *testing.T) {
194191
// GIVEN
195-
db, stop := setupTestDB(t)
196-
defer stop()
192+
db := setupTestDB(t)
197193

198194
tmpdir := t.TempDir()
199195
nodeConfig, err := params.NewNodeConfig(tmpdir, 1777)
@@ -212,8 +208,7 @@ func TestConfigValidate(t *testing.T) {
212208

213209
func TestRepairLoadedTorrentConfig(t *testing.T) {
214210
// GIVEN
215-
db, stop := setupTestDB(t)
216-
defer stop()
211+
db := setupTestDB(t)
217212

218213
tmpdir := t.TempDir()
219214
nodeConfig, err := params.NewNodeConfig(tmpdir, 1777)

node/get_status_node.go

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ import (
3636
"github.com/status-im/status-go/services/ens"
3737
"github.com/status-im/status-go/services/gif"
3838
localnotifications "github.com/status-im/status-go/services/local-notifications"
39-
"github.com/status-im/status-go/services/mailservers"
4039
"github.com/status-im/status-go/services/permissions"
4140
"github.com/status-im/status-go/services/personal"
4241
"github.com/status-im/status-go/services/rpcstats"
@@ -90,7 +89,6 @@ type StatusNode struct {
9089
accountsSrvc *accountssvc.Service
9190
browsersSrvc *browsers.Service
9291
permissionsSrvc *permissions.Service
93-
mailserversSrvc *mailservers.Service
9492
appMetricsSrvc *appmetricsservice.Service
9593
walletSrvc *wallet.Service
9694
localNotificationsSrvc *localnotifications.Service
@@ -377,7 +375,6 @@ func (n *StatusNode) stop() error {
377375
n.accountsSrvc = nil
378376
n.browsersSrvc = nil
379377
n.permissionsSrvc = nil
380-
n.mailserversSrvc = nil
381378
n.appMetricsSrvc = nil
382379
n.walletSrvc = nil
383380
n.localNotificationsSrvc = nil

node/status_node_services.go

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import (
3131
"github.com/status-im/status-go/services/ens"
3232
"github.com/status-im/status-go/services/gif"
3333
localnotifications "github.com/status-im/status-go/services/local-notifications"
34-
"github.com/status-im/status-go/services/mailservers"
3534
"github.com/status-im/status-go/services/permissions"
3635
"github.com/status-im/status-go/services/personal"
3736
"github.com/status-im/status-go/services/rpcstats"
@@ -72,7 +71,6 @@ func (b *StatusNode) initServices(config *params.NodeConfig, mediaServer *server
7271
services = appendIf(b.appDB != nil && b.multiaccountsDB != nil, services, b.accountsService(accDB, mediaServer))
7372
services = appendIf(config.BrowsersConfig.Enabled, services, b.browsersService())
7473
services = appendIf(config.PermissionsConfig.Enabled, services, b.permissionsService())
75-
services = appendIf(config.MailserversConfig.Enabled, services, b.mailserversService())
7674
services = appendIf(config.ConnectorConfig.Enabled, services, b.connectorService())
7775
services = append(services, b.gifService(accDB))
7876
services = append(services, b.ChatService(accDB))
@@ -268,14 +266,6 @@ func (b *StatusNode) permissionsService() *permissions.Service {
268266
return b.permissionsSrvc
269267
}
270268

271-
func (b *StatusNode) mailserversService() *mailservers.Service {
272-
if b.mailserversSrvc == nil {
273-
274-
b.mailserversSrvc = mailservers.NewService(mailservers.NewDB(b.appDB))
275-
}
276-
return b.mailserversSrvc
277-
}
278-
279269
func (b *StatusNode) appmetricsService() common.StatusService {
280270
if b.appMetricsSrvc == nil {
281271
b.appMetricsSrvc = appmetricsservice.NewService(appmetrics.NewDB(b.appDB))

nodecfg/node_config.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,12 @@ func insertNodeConfigBase(tx *sql.Tx, c *params.NodeConfig, includeConnector boo
3737
INSERT OR REPLACE INTO node_config (
3838
network_id, data_dir, keystore_dir, node_key,
3939
api_modules, enable_ntp_sync, wallet_enabled,
40-
browser_enabled, permissions_enabled, mailservers_enabled`
40+
browser_enabled, permissions_enabled`
4141

4242
args := []any{
4343
c.NetworkID, c.DataDir, "", c.NodeKey, c.APIModules, true,
4444
c.WalletConfig.Enabled, c.BrowsersConfig.Enabled,
45-
c.PermissionsConfig.Enabled, c.MailserversConfig.Enabled,
45+
c.PermissionsConfig.Enabled,
4646
}
4747

4848
if includeConnector {
@@ -360,12 +360,12 @@ func loadNodeConfig(tx *sql.Tx) (*params.NodeConfig, error) {
360360
SELECT
361361
network_id, data_dir, keystore_dir, node_key, api_modules,
362362
wallet_enabled, browser_enabled, permissions_enabled,
363-
mailservers_enabled, connector_enabled FROM node_config
363+
connector_enabled FROM node_config
364364
WHERE synthetic_id = 'id'
365365
`).Scan(
366366
&nodecfg.NetworkID, &nodecfg.DataDir, &keystoreDir, &nodecfg.NodeKey, &nodecfg.APIModules,
367367
&nodecfg.WalletConfig.Enabled, &nodecfg.BrowsersConfig.Enabled, &nodecfg.PermissionsConfig.Enabled,
368-
&nodecfg.MailserversConfig.Enabled, &nodecfg.ConnectorConfig.Enabled,
368+
&nodecfg.ConnectorConfig.Enabled,
369369
)
370370
if err != nil && err != sql.ErrNoRows {
371371
return nil, err

params/config.go

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -276,10 +276,6 @@ type NodeConfig struct {
276276
// PermissionsConfig extra configuration for permissions.Service.
277277
PermissionsConfig PermissionsConfig
278278

279-
// MailserversConfig extra configuration for mailservers.Service
280-
// (persistent storage of user's mailserver records).
281-
MailserversConfig MailserversConfig
282-
283279
// ConnectorConfig extra configuration for connector.Service
284280
ConnectorConfig ConnectorConfig
285281

@@ -355,11 +351,6 @@ type PermissionsConfig struct {
355351
Enabled bool
356352
}
357353

358-
// MailserversConfig extra configuration for mailservers.Service.
359-
type MailserversConfig struct {
360-
Enabled bool
361-
}
362-
363354
// ConnectorConfig extra configuration for provider.Service
364355
type ConnectorConfig struct {
365356
Enabled bool

protocol/messenger_config_test.go

Lines changed: 0 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,9 @@
11
package protocol
22

33
import (
4-
"github.com/multiformats/go-multiaddr"
5-
"github.com/stretchr/testify/suite"
6-
7-
"github.com/status-im/status-go/appdatabase"
8-
"github.com/status-im/status-go/params"
94
"github.com/status-im/status-go/protocol/communities"
10-
"github.com/status-im/status-go/services/mailservers"
11-
"github.com/status-im/status-go/t/helpers"
12-
"github.com/status-im/status-go/waku/types"
135
)
146

15-
func WithTestStoreNode(s *suite.Suite, id string, address multiaddr.Multiaddr, fleet string, collectiblesServiceMock *CollectiblesServiceMock) Option {
16-
return func(c *config) error {
17-
sqldb, err := helpers.SetupTestMemorySQLDB(appdatabase.DbInitializer{})
18-
s.Require().NoError(err)
19-
20-
db := mailservers.NewDB(sqldb)
21-
err = db.Add(types.Mailserver{
22-
ID: id,
23-
Name: id,
24-
Addr: &address,
25-
Fleet: fleet,
26-
})
27-
s.Require().NoError(err)
28-
29-
c.mailserversDatabase = db
30-
c.clusterConfig = params.ClusterConfig{Fleet: fleet}
31-
c.communityTokensService = collectiblesServiceMock
32-
33-
return nil
34-
}
35-
}
36-
37-
func WithAutoRequestHistoricMessages(enabled bool) Option {
38-
return func(c *config) error {
39-
c.codeControlFlags.AutoRequestHistoricMessages = enabled
40-
return nil
41-
}
42-
}
43-
447
func WithCuratedCommunitiesUpdateLoop(enabled bool) Option {
458
return func(c *config) error {
469
c.codeControlFlags.CuratedCommunitiesUpdateLoopEnabled = enabled

0 commit comments

Comments
 (0)