@@ -5,9 +5,11 @@ import (
55 "fmt"
66 "log"
77 "math/big"
8+ "os"
89
910 "github.com/Jetlum/WalletAlertService/config"
1011 "github.com/Jetlum/WalletAlertService/database"
12+ "github.com/Jetlum/WalletAlertService/mock"
1113 "github.com/Jetlum/WalletAlertService/models"
1214 nfts "github.com/Jetlum/WalletAlertService/nft"
1315 "github.com/Jetlum/WalletAlertService/repository"
@@ -17,6 +19,9 @@ import (
1719)
1820
1921func init () {
22+ if os .Getenv ("GO_ENV" ) == "test" {
23+ return
24+ }
2025 cfg , err := config .LoadConfig ()
2126 if err != nil {
2227 log .Fatal ("Failed to load config:" , err )
@@ -34,8 +39,17 @@ func main() {
3439 log .Fatal ("Failed to load config:" , err )
3540 }
3641
37- eventRepo := repository .NewEventRepository (database .DB )
38- userPrefRepo := repository .NewUserPreferenceRepository (database .DB )
42+ var eventRepo repository.EventRepositoryInterface
43+ var userPrefRepo repository.UserPreferenceRepositoryInterface
44+
45+ if os .Getenv ("GO_ENV" ) == "test" {
46+ eventRepo = mock .NewMockEventRepository ()
47+ userPrefRepo = mock .NewMockUserPreferenceRepository ()
48+ } else {
49+ eventRepo = repository .NewEventRepository (database .DB )
50+ userPrefRepo = repository .NewUserPreferenceRepository (database .DB )
51+ }
52+
3953 emailNotification := services .NewEmailNotification (cfg .SendGridAPIKey )
4054 nftDetector := nfts .NewNFTDetector ()
4155
0 commit comments