Skip to content

Commit 22ae7d4

Browse files
committed
services/brig/integration/*
1 parent 6aa8f1b commit 22ae7d4

File tree

4 files changed

+13
-11
lines changed

4 files changed

+13
-11
lines changed

services/brig/test/integration/API/User.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import API.User.Handles qualified
2929
import API.User.RichInfo qualified
3030
import API.User.Util
3131
import Bilge hiding (accept, timeout)
32-
import Brig.AWS qualified as AWS
3332
import Brig.App (initZAuth)
3433
import Brig.Options qualified as Opt
3534
import Cassandra qualified as DB
@@ -39,6 +38,7 @@ import Test.Tasty hiding (Timeout)
3938
import Util
4039
import Util.AWS (UserJournalWatcher)
4140
import Wire.API.Federation.Component
41+
import Wire.AWSSubsystem.AWS qualified as AWS
4242
import Wire.AuthenticationSubsystem.Config
4343

4444
tests ::

services/brig/test/integration/API/User/Account.hs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import API.Team.Util
2727
import API.User.Util
2828
import Bilge hiding (accept, timeout)
2929
import Bilge.Assert
30-
import Brig.AWS qualified as AWS
3130
import Brig.AWS.Types
3231
import Brig.Options qualified as Opt
3332
import Brig.Types.Activation
@@ -70,6 +69,7 @@ import Network.HTTP.Types qualified as Http
7069
import Network.Wai qualified as Wai
7170
import Network.Wai.Utilities.Error qualified as Error
7271
import Network.Wai.Utilities.Error qualified as Wai
72+
import Polysemy (runFinal)
7373
import Test.QuickCheck (arbitrary, generate)
7474
import Test.Tasty hiding (Timeout)
7575
import Test.Tasty.Cannon hiding (Cannon, Timeout)
@@ -93,8 +93,10 @@ import Wire.API.User.Activation
9393
import Wire.API.User.Auth
9494
import Wire.API.User.Auth qualified as Auth
9595
import Wire.API.User.Client
96+
import Wire.AWSSubsystem qualified as AWS
97+
import Wire.AWSSubsystem.AWS qualified as AWSI
9698

97-
tests :: ConnectionLimit -> Timeout -> Opt.Opts -> Manager -> Brig -> Cannon -> CargoHold -> Galley -> AWS.Env -> UserJournalWatcher -> TestTree
99+
tests :: ConnectionLimit -> Timeout -> Opt.Opts -> Manager -> Brig -> Cannon -> CargoHold -> Galley -> AWSI.Env -> UserJournalWatcher -> TestTree
98100
tests _ at opts p b c ch g aws userJournalWatcher =
99101
testGroup
100102
"account"
@@ -471,7 +473,7 @@ testCreateUserInvalidEmail _ brig = do
471473

472474
-- @END
473475

474-
testCreateUserBlacklist :: Opt.Opts -> Brig -> AWS.Env -> Http ()
476+
testCreateUserBlacklist :: Opt.Opts -> Brig -> AWSI.Env -> Http ()
475477
testCreateUserBlacklist (Opt.restrictUserCreation . Opt.settings -> Just True) _ _ = pure ()
476478
testCreateUserBlacklist _ brig aws =
477479
mapM_ ensureBlacklist ["bounce", "complaint"]
@@ -511,7 +513,7 @@ testCreateUserBlacklist _ brig aws =
511513
]
512514
-- If there is no queue available, we need to force it either by publishing an event or using the API
513515
forceBlacklist :: Text -> EmailAddress -> Http ()
514-
forceBlacklist typ em = case aws ^. AWS.sesQueue of
516+
forceBlacklist typ em = case aws ^. AWSI.sesQueue of
515517
Just queue -> publishMessage typ em queue
516518
Nothing -> Bilge.post (brig . path "i/users/blacklist" . queryItem "email" (toByteString' em)) !!! const 200 === statusCode
517519
publishMessage :: Text -> EmailAddress -> Text -> Http ()
@@ -520,7 +522,7 @@ testCreateUserBlacklist _ brig aws =
520522
"bounce" -> MailBounce BouncePermanent [Mailbox Nothing em]
521523
"complaint" -> MailComplaint [Mailbox Nothing em]
522524
x -> error ("Unsupported message type: " ++ show x)
523-
void . AWS.execute aws $ AWS.enqueueStandard queue bdy
525+
void . liftIO . runFinal . AWSI.runAWSSubsystem aws $ AWS.enqueueStandard queue bdy
524526
awaitBlacklist :: Int -> EmailAddress -> Http ()
525527
awaitBlacklist n e = do
526528
r <- Bilge.head (brig . path "i/users/blacklist" . queryItem "email" (toByteString' e))

services/brig/test/integration/Run.hs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ import API.User qualified as User
3535
import API.UserPendingActivation qualified as UserPendingActivation
3636
import Bilge hiding (header, host, port)
3737
import Bilge qualified
38-
import Brig.AWS qualified as AWS
3938
import Brig.App (initHttpManagerWithTLSConfig)
4039
import Brig.Options qualified as Opts
4140
import Cassandra.Util (defInitCassandra)
@@ -66,6 +65,7 @@ import Util.Test.SQS qualified as SQS
6665
import Web.HttpApiData
6766
import Wire.API.Federation.API
6867
import Wire.API.Routes.Version
68+
import Wire.AWSSubsystem.AWS qualified as AWS
6969

7070
data BackendConf = BackendConf
7171
{ remoteBrig :: Endpoint,
@@ -130,14 +130,14 @@ runTests iConf brigOpts otherArgs = do
130130
Opts.TurnSourceFiles files -> files
131131
Opts.TurnSourceDNS _ -> error "The integration tests can only be run when TurnServers are sourced from files"
132132
localDomain = brigOpts.settings.federationDomain
133-
awsOpts = Opts.aws brigOpts
133+
awsOpts = brigOpts.aws
134134
lg <- Logger.new Logger.defSettings -- TODO: use mkLogger'?
135135
db <- defInitCassandra (brigOpts.cassandra) lg
136136
mg <- initHttpManagerWithTLSConfig False Nothing
137137
let fedBrigClient = FedClient @'Brig mg (brig iConf)
138138
emailAWSOpts <- parseEmailAWSOpts
139139
awsEnv <- AWS.mkEnv lg awsOpts emailAWSOpts mg
140-
mUserJournalWatcher <- for (Opts.userJournalQueue awsOpts) $ SQS.watchSQSQueue (view AWS.amazonkaEnv awsEnv)
140+
mUserJournalWatcher <- for awsOpts.userJournalQueue $ SQS.watchSQSQueue (view AWS.amazonkaEnv awsEnv)
141141
userApi <- User.tests brigOpts fedBrigClient mg b c ch g n awsEnv db mUserJournalWatcher
142142
providerApi <- Provider.tests localDomain brigOpts (provider iConf) mg db b c g n
143143
searchApis <- Search.tests brigOpts iConf.additionalElasticSearch mg g b
@@ -196,7 +196,7 @@ runTests iConf brigOpts otherArgs = do
196196
latestVersion :: Version
197197
latestVersion = maxBound
198198

199-
parseEmailAWSOpts :: IO (Maybe Opts.EmailAWSOpts)
199+
parseEmailAWSOpts :: IO (Maybe AWS.EmailAWSOpts)
200200
parseEmailAWSOpts = case Opts.email . Opts.emailSMS $ brigOpts of
201201
(Opts.EmailAWS aws) -> pure (Just aws)
202202
(Opts.EmailSMTP _) -> pure Nothing

services/brig/test/integration/Util/AWS.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
module Util.AWS where
1919

20-
import Brig.AWS qualified as AWS
2120
import Control.Lens
2221
import Data.ByteString.Conversion
2322
import Data.ByteString.Lazy qualified as Lazy
@@ -31,6 +30,7 @@ import Proto.UserEvents_Fields qualified as PU
3130
import Test.Tasty.HUnit
3231
import Util.Test.SQS qualified as SQS
3332
import Wire.API.User
33+
import Wire.AWSSubsystem.AWS qualified as AWS
3434

3535
type UserJournalWatcher = Maybe (SQS.SQSWatcher PU.UserEvent)
3636

0 commit comments

Comments
 (0)