@@ -89,7 +89,7 @@ func TestBasicNotificationRoundtrip(t *testing.T) {
89
89
t .Cleanup (func () {
90
90
assert .NoError (t , mgr .Stop (ctx ))
91
91
})
92
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
92
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
93
93
require .NoError (t , err )
94
94
95
95
user := createSampleUser (t , store )
@@ -170,7 +170,7 @@ func TestSMTPDispatch(t *testing.T) {
170
170
t .Cleanup (func () {
171
171
assert .NoError (t , mgr .Stop (ctx ))
172
172
})
173
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
173
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
174
174
require .NoError (t , err )
175
175
176
176
user := createSampleUser (t , store )
@@ -235,7 +235,7 @@ func TestWebhookDispatch(t *testing.T) {
235
235
t .Cleanup (func () {
236
236
assert .NoError (t , mgr .Stop (ctx ))
237
237
})
238
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
238
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
239
239
require .NoError (t , err )
240
240
241
241
const (
@@ -326,7 +326,7 @@ func TestBackpressure(t *testing.T) {
326
326
method : handler ,
327
327
database .NotificationMethodInbox : handler ,
328
328
})
329
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
329
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
330
330
require .NoError (t , err )
331
331
332
332
user := createSampleUser (t , store )
@@ -477,7 +477,7 @@ func TestRetries(t *testing.T) {
477
477
method : handler ,
478
478
database .NotificationMethodInbox : & fakeHandler {},
479
479
})
480
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
480
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
481
481
require .NoError (t , err )
482
482
483
483
user := createSampleUser (t , store )
@@ -541,7 +541,7 @@ func TestExpiredLeaseIsRequeued(t *testing.T) {
541
541
542
542
mgr , err := notifications .NewManager (cfg , noopInterceptor , pubsub , defaultHelpers (), createMetrics (), logger .Named ("manager" ))
543
543
require .NoError (t , err )
544
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
544
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
545
545
require .NoError (t , err )
546
546
547
547
user := createSampleUser (t , store )
@@ -666,7 +666,7 @@ func TestNotifierPaused(t *testing.T) {
666
666
t .Cleanup (func () {
667
667
assert .NoError (t , mgr .Stop (ctx ))
668
668
})
669
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
669
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
670
670
require .NoError (t , err )
671
671
672
672
// Pause the notifier.
@@ -1386,6 +1386,7 @@ func TestNotificationTemplates_Golden(t *testing.T) {
1386
1386
smtpEnqueuer , err := notifications .NewStoreEnqueuer (
1387
1387
notificationCfg ,
1388
1388
* db ,
1389
+ pubsub ,
1389
1390
defaultHelpers (),
1390
1391
logger .Named ("enqueuer" ),
1391
1392
quartz .NewReal (),
@@ -1511,6 +1512,7 @@ func TestNotificationTemplates_Golden(t *testing.T) {
1511
1512
httpEnqueuer , err := notifications .NewStoreEnqueuer (
1512
1513
defaultNotificationsConfig (database .NotificationMethodWebhook ),
1513
1514
* db ,
1515
+ pubsub ,
1514
1516
defaultHelpers (),
1515
1517
logger .Named ("enqueuer" ),
1516
1518
quartz .NewReal (),
@@ -1614,11 +1616,11 @@ func TestDisabledByDefaultBeforeEnqueue(t *testing.T) {
1614
1616
1615
1617
// nolint:gocritic // Unit test.
1616
1618
ctx := dbauthz .AsNotifier (testutil .Context (t , testutil .WaitSuperLong ))
1617
- store , _ := dbtestutil .NewDB (t )
1619
+ store , pubsub := dbtestutil .NewDB (t )
1618
1620
logger := testutil .Logger (t )
1619
1621
1620
1622
cfg := defaultNotificationsConfig (database .NotificationMethodSmtp )
1621
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1623
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1622
1624
require .NoError (t , err )
1623
1625
user := createSampleUser (t , store )
1624
1626
@@ -1640,12 +1642,12 @@ func TestDisabledBeforeEnqueue(t *testing.T) {
1640
1642
1641
1643
// nolint:gocritic // Unit test.
1642
1644
ctx := dbauthz .AsNotifier (testutil .Context (t , testutil .WaitSuperLong ))
1643
- store , _ := dbtestutil .NewDB (t )
1645
+ store , pubsub := dbtestutil .NewDB (t )
1644
1646
logger := testutil .Logger (t )
1645
1647
1646
1648
// GIVEN: an enqueuer & a sample user
1647
1649
cfg := defaultNotificationsConfig (database .NotificationMethodSmtp )
1648
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1650
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1649
1651
require .NoError (t , err )
1650
1652
user := createSampleUser (t , store )
1651
1653
@@ -1688,7 +1690,7 @@ func TestDisabledAfterEnqueue(t *testing.T) {
1688
1690
assert .NoError (t , mgr .Stop (ctx ))
1689
1691
})
1690
1692
1691
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1693
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1692
1694
require .NoError (t , err )
1693
1695
user := createSampleUser (t , store )
1694
1696
@@ -1797,7 +1799,7 @@ func TestCustomNotificationMethod(t *testing.T) {
1797
1799
_ = mgr .Stop (ctx )
1798
1800
})
1799
1801
1800
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1802
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewReal ())
1801
1803
require .NoError (t , err )
1802
1804
1803
1805
// WHEN: a notification of that template is enqueued, it should be delivered with the configured method - not the default.
@@ -1890,7 +1892,7 @@ func TestNotificationDuplicates(t *testing.T) {
1890
1892
mClock := quartz .NewMock (t )
1891
1893
mClock .Set (time .Date (2024 , 1 , 15 , 9 , 0 , 0 , 0 , time .UTC ))
1892
1894
1893
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
1895
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
1894
1896
require .NoError (t , err )
1895
1897
user := createSampleUser (t , store )
1896
1898
@@ -1916,12 +1918,12 @@ func TestNotificationDuplicates(t *testing.T) {
1916
1918
func TestNotificationMethodCannotDefaultToInbox (t * testing.T ) {
1917
1919
t .Parallel ()
1918
1920
1919
- store , _ := dbtestutil .NewDB (t )
1921
+ store , pubsub := dbtestutil .NewDB (t )
1920
1922
logger := testutil .Logger (t )
1921
1923
1922
1924
cfg := defaultNotificationsConfig (database .NotificationMethodInbox )
1923
1925
1924
- _ , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
1926
+ _ , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
1925
1927
require .ErrorIs (t , err , notifications.InvalidDefaultNotificationMethodError {Method : string (database .NotificationMethodInbox )})
1926
1928
}
1927
1929
@@ -1996,7 +1998,7 @@ func TestNotificationTargetMatrix(t *testing.T) {
1996
1998
mClock := quartz .NewMock (t )
1997
1999
mClock .Set (time .Date (2024 , 1 , 15 , 9 , 0 , 0 , 0 , time .UTC ))
1998
2000
1999
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
2001
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), mClock )
2000
2002
require .NoError (t , err )
2001
2003
user := createSampleUser (t , store )
2002
2004
@@ -2017,7 +2019,7 @@ func TestNotificationOneTimePasswordDeliveryTargets(t *testing.T) {
2017
2019
2018
2020
// nolint:gocritic // Unit test.
2019
2021
ctx := dbauthz .AsNotifier (testutil .Context (t , testutil .WaitSuperLong ))
2020
- store , _ := dbtestutil .NewDB (t )
2022
+ store , pubsub := dbtestutil .NewDB (t )
2021
2023
logger := testutil .Logger (t )
2022
2024
2023
2025
// Given: Coder Inbox is enabled and SMTP/Webhook are disabled.
@@ -2026,7 +2028,7 @@ func TestNotificationOneTimePasswordDeliveryTargets(t *testing.T) {
2026
2028
cfg .SMTP = codersdk.NotificationsEmailConfig {}
2027
2029
cfg .Webhook = codersdk.NotificationsWebhookConfig {}
2028
2030
2029
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2031
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2030
2032
require .NoError (t , err )
2031
2033
user := createSampleUser (t , store )
2032
2034
@@ -2042,15 +2044,15 @@ func TestNotificationOneTimePasswordDeliveryTargets(t *testing.T) {
2042
2044
2043
2045
// nolint:gocritic // Unit test.
2044
2046
ctx := dbauthz .AsNotifier (testutil .Context (t , testutil .WaitSuperLong ))
2045
- store , _ := dbtestutil .NewDB (t )
2047
+ store , pubsub := dbtestutil .NewDB (t )
2046
2048
logger := testutil .Logger (t )
2047
2049
2048
2050
// Given: Coder Inbox/Webhook are disabled and SMTP is enabled.
2049
2051
cfg := defaultNotificationsConfig (database .NotificationMethodSmtp )
2050
2052
cfg .Inbox .Enabled = false
2051
2053
cfg .Webhook = codersdk.NotificationsWebhookConfig {}
2052
2054
2053
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2055
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2054
2056
require .NoError (t , err )
2055
2057
user := createSampleUser (t , store )
2056
2058
@@ -2066,15 +2068,15 @@ func TestNotificationOneTimePasswordDeliveryTargets(t *testing.T) {
2066
2068
2067
2069
// nolint:gocritic // Unit test.
2068
2070
ctx := dbauthz .AsNotifier (testutil .Context (t , testutil .WaitSuperLong ))
2069
- store , _ := dbtestutil .NewDB (t )
2071
+ store , pubsub := dbtestutil .NewDB (t )
2070
2072
logger := testutil .Logger (t )
2071
2073
2072
2074
// Given: Coder Inbox/SMTP are disabled and Webhook is enabled.
2073
2075
cfg := defaultNotificationsConfig (database .NotificationMethodWebhook )
2074
2076
cfg .Inbox .Enabled = false
2075
2077
cfg .SMTP = codersdk.NotificationsEmailConfig {}
2076
2078
2077
- enq , err := notifications .NewStoreEnqueuer (cfg , store , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2079
+ enq , err := notifications .NewStoreEnqueuer (cfg , store , pubsub , defaultHelpers (), logger .Named ("enqueuer" ), quartz .NewMock (t ))
2078
2080
require .NoError (t , err )
2079
2081
user := createSampleUser (t , store )
2080
2082
0 commit comments