Skip to content

Commit cb294aa

Browse files
authored
Fix Request's Show instance (#1492)
1 parent a975cfc commit cb294aa

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

servant-client-core/src/Servant/Client/Core/Request.hs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,13 @@ instance (Show a, Show b) =>
7878
. showString ", requestAccept = "
7979
. showsPrec 0 (requestAccept req)
8080
. showString ", requestHeaders = "
81-
. showsPrec 0 (redactSensitiveHeader <$> requestHeaders req))
81+
. showsPrec 0 (redactSensitiveHeader <$> requestHeaders req)
8282
. showString ", requestHttpVersion = "
8383
. showsPrec 0 (requestHttpVersion req)
8484
. showString ", requestMethod = "
8585
. showsPrec 0 (requestMethod req)
8686
. showString "}"
87+
)
8788
where
8889
redactSensitiveHeader :: Header -> Header
8990
redactSensitiveHeader ("Authorization", _) = ("Authorization", "<REDACTED>")

servant-client-core/test/Servant/Client/Core/RequestSpec.hs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,22 @@ import Data.List (isInfixOf)
1010
import Servant.Client.Core.Request
1111
import Test.Hspec
1212

13+
newtype DataWithRequest = DataWithRequest (RequestF RequestBody ())
14+
deriving Show
15+
1316
spec :: Spec
1417
spec = do
1518
describe "Request" $ do
1619
describe "show" $ do
20+
it "has parenthesis correctly positioned" $ do
21+
let d = DataWithRequest (void defaultRequest)
22+
show d `shouldBe` "DataWithRequest (Request {requestPath = ()\
23+
\, requestQueryString = fromList []\
24+
\, requestBody = Nothing\
25+
\, requestAccept = fromList []\
26+
\, requestHeaders = fromList []\
27+
\, requestHttpVersion = HTTP/1.1\
28+
\, requestMethod = \"GET\"})"
1729
it "redacts the authorization header" $ do
1830
let request = void $ defaultRequest { requestHeaders = pure ("authorization", "secret") }
1931
isInfixOf "secret" (show request) `shouldBe` False

0 commit comments

Comments
 (0)