module Test.FeatureFlags.SearchVisibilityInbound where import qualified API.Galley as Public import SetupHelpers import Test.FeatureFlags.Util import Testlib.Prelude testSearchVisibilityInboundInternal :: (HasCallStack) => APIAccess -> App () testSearchVisibilityInboundInternal :: HasCallStack => APIAccess -> App () testSearchVisibilityInboundInternal APIAccess access = do let featureName :: String featureName = String "searchVisibilityInbound" (Value alice, String tid, [Value] _) <- Domain -> Int -> App (Value, String, [Value]) forall domain. (HasCallStack, MakesValue domain) => domain -> Int -> App (Value, String, [Value]) createTeam Domain OwnDomain Int 2 Value eve <- Domain -> CreateUser -> App Value forall domain. (HasCallStack, MakesValue domain) => domain -> CreateUser -> App Value randomUser Domain OwnDomain CreateUser forall a. Default a => a def HasCallStack => Response -> App () Response -> App () assertForbidden (Response -> App ()) -> App Response -> App () forall (m :: * -> *) a b. Monad m => (a -> m b) -> m a -> m b =<< Value -> String -> String -> App Response forall user tid. (HasCallStack, MakesValue user, MakesValue tid) => user -> tid -> String -> App Response Public.getTeamFeature Value eve String tid String featureName String -> Value -> String -> Value -> App () forall user tid. (HasCallStack, MakesValue user, MakesValue tid) => String -> user -> tid -> Value -> App () checkFeature String featureName Value alice String tid Value disabled App () -> App () forall (f :: * -> *) a. Functor f => f a -> f () void (App () -> App ()) -> App () -> App () forall a b. (a -> b) -> a -> b $ Value -> (WebSocket -> App ()) -> App () forall w a. (HasCallStack, ToWSConnect w) => w -> (WebSocket -> App a) -> App a withWebSocket Value alice ((WebSocket -> App ()) -> App ()) -> (WebSocket -> App ()) -> App () forall a b. (a -> b) -> a -> b $ \WebSocket ws -> do HasCallStack => APIAccess -> WebSocket -> String -> String -> Value -> App () APIAccess -> WebSocket -> String -> String -> Value -> App () setFlag APIAccess access WebSocket ws String tid String featureName Value enabled HasCallStack => APIAccess -> WebSocket -> String -> String -> Value -> App () APIAccess -> WebSocket -> String -> String -> Value -> App () setFlag APIAccess access WebSocket ws String tid String featureName Value disabled