Skip to content

Commit 535fa7e

Browse files
committed
reformat and some newtypes
1 parent b933c95 commit 535fa7e

8 files changed

Lines changed: 459 additions & 411 deletions

File tree

spec/GitHub/SearchSpec.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import Test.Hspec (Spec, describe, it, pendingWith, shouldBe)
1414

1515
import qualified Data.Vector as V
1616

17-
import GitHub.Data (Auth (..), Issue (..), mkId)
17+
import GitHub.Data (Auth (..), Issue (..), mkId, IssueState (..))
1818
import GitHub.Endpoints.Search (SearchResult (..), searchIssues')
1919

2020
fromRightS :: Show a => Either a b -> b
@@ -42,13 +42,13 @@ spec = do
4242
issueId issue1 `shouldBe` mkId (Proxy :: Proxy Issue) 123898390
4343
issueNumber issue1 `shouldBe` 130
4444
issueTitle issue1 `shouldBe` "Make test runner more robust"
45-
issueState issue1 `shouldBe` "closed"
45+
issueState issue1 `shouldBe` StateClosed
4646

4747
let issue2 = issues V.! 1
4848
issueId issue2 `shouldBe` mkId (Proxy :: Proxy Issue) 119694665
4949
issueNumber issue2 `shouldBe` 127
5050
issueTitle issue2 `shouldBe` "Decouple request creation from execution"
51-
issueState issue2 `shouldBe` "open"
51+
issueState issue2 `shouldBe` StateOpen
5252

5353
it "performs an issue search via the API" $ withAuth $ \auth -> do
5454
let query = "Decouple in:title repo:phadej/github created:<=2015-12-01"

src/GitHub/Data/Gists.hs

Lines changed: 59 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -13,77 +13,79 @@ import GitHub.Data.URL (URL)
1313
import GitHub.Internal.Prelude
1414
import Prelude ()
1515

16-
data Gist = Gist {
17-
gistUser :: !SimpleUser
18-
,gistGitPushUrl :: !URL
19-
,gistUrl :: !URL
20-
,gistDescription :: !(Maybe Text)
21-
,gistCreatedAt :: !UTCTime
22-
,gistPublic :: !Bool
23-
,gistComments :: !Int
24-
,gistUpdatedAt :: !UTCTime
25-
,gistHtmlUrl :: !URL
26-
,gistId :: !(Name Gist)
27-
,gistFiles :: !(HashMap Text GistFile)
28-
,gistGitPullUrl :: !URL
29-
} deriving (Show, Data, Typeable, Eq, Generic)
16+
data Gist = Gist
17+
{ gistUser :: !SimpleUser
18+
, gistGitPushUrl :: !URL
19+
, gistUrl :: !URL
20+
, gistDescription :: !(Maybe Text)
21+
, gistCreatedAt :: !UTCTime
22+
, gistPublic :: !Bool
23+
, gistComments :: !Int
24+
, gistUpdatedAt :: !UTCTime
25+
, gistHtmlUrl :: !URL
26+
, gistId :: !(Name Gist)
27+
, gistFiles :: !(HashMap Text GistFile)
28+
, gistGitPullUrl :: !URL
29+
} deriving (Show, Data, Typeable, Eq, Generic)
3030

3131
instance NFData Gist where rnf = genericRnf
3232
instance Binary Gist
3333

3434
instance FromJSON Gist where
35-
parseJSON = withObject "Gist" $ \o ->
36-
Gist <$> o .: "owner"
37-
<*> o .: "git_push_url"
38-
<*> o .: "url"
39-
<*> o .:? "description"
40-
<*> o .: "created_at"
41-
<*> o .: "public"
42-
<*> o .: "comments"
43-
<*> o .: "updated_at"
44-
<*> o .: "html_url"
45-
<*> o .: "id"
46-
<*> o .: "files"
47-
<*> o .: "git_push_url"
35+
parseJSON = withObject "Gist" $ \o -> Gist
36+
<$> o .: "owner"
37+
<*> o .: "git_push_url"
38+
<*> o .: "url"
39+
<*> o .:? "description"
40+
<*> o .: "created_at"
41+
<*> o .: "public"
42+
<*> o .: "comments"
43+
<*> o .: "updated_at"
44+
<*> o .: "html_url"
45+
<*> o .: "id"
46+
<*> o .: "files"
47+
<*> o .: "git_push_url"
4848

49-
data GistFile = GistFile {
50-
gistFileType :: !Text
51-
,gistFileRawUrl :: !URL
52-
,gistFileSize :: !Int
53-
,gistFileLanguage :: !(Maybe Language)
54-
,gistFileFilename :: !Text
55-
,gistFileContent :: !(Maybe Text)
56-
} deriving (Show, Data, Typeable, Eq, Generic)
49+
data GistFile = GistFile
50+
{ gistFileType :: !Text
51+
, gistFileRawUrl :: !URL
52+
, gistFileSize :: !Int
53+
, gistFileLanguage :: !(Maybe Language)
54+
, gistFileFilename :: !Text
55+
, gistFileContent :: !(Maybe Text)
56+
}
57+
deriving (Show, Data, Typeable, Eq, Generic)
5758

5859
instance NFData GistFile where rnf = genericRnf
5960
instance Binary GistFile
6061

6162
instance FromJSON GistFile where
62-
parseJSON = withObject "GistFile" $ \o ->
63-
GistFile <$> o .: "type"
64-
<*> o .: "raw_url"
65-
<*> o .: "size"
66-
<*> o .:? "language"
67-
<*> o .: "filename"
68-
<*> o .:? "content"
63+
parseJSON = withObject "GistFile" $ \o -> GistFile
64+
<$> o .: "type"
65+
<*> o .: "raw_url"
66+
<*> o .: "size"
67+
<*> o .:? "language"
68+
<*> o .: "filename"
69+
<*> o .:? "content"
6970

70-
data GistComment = GistComment {
71-
gistCommentUser :: !SimpleUser
72-
,gistCommentUrl :: !URL
73-
,gistCommentCreatedAt :: !UTCTime
74-
,gistCommentBody :: !Text
75-
,gistCommentUpdatedAt :: !UTCTime
76-
,gistCommentId :: !(Id GistComment)
77-
} deriving (Show, Data, Typeable, Eq, Ord, Generic)
71+
data GistComment = GistComment
72+
{ gistCommentUser :: !SimpleUser
73+
, gistCommentUrl :: !URL
74+
, gistCommentCreatedAt :: !UTCTime
75+
, gistCommentBody :: !Text
76+
, gistCommentUpdatedAt :: !UTCTime
77+
, gistCommentId :: !(Id GistComment)
78+
}
79+
deriving (Show, Data, Typeable, Eq, Ord, Generic)
7880

7981
instance NFData GistComment where rnf = genericRnf
8082
instance Binary GistComment
8183

8284
instance FromJSON GistComment where
83-
parseJSON = withObject "GistComment" $ \o ->
84-
GistComment <$> o .: "user"
85-
<*> o .: "url"
86-
<*> o .: "created_at"
87-
<*> o .: "body"
88-
<*> o .: "updated_at"
89-
<*> o .: "id"
85+
parseJSON = withObject "GistComment" $ \o -> GistComment
86+
<$> o .: "user"
87+
<*> o .: "url"
88+
<*> o .: "created_at"
89+
<*> o .: "body"
90+
<*> o .: "updated_at"
91+
<*> o .: "id"

0 commit comments

Comments
 (0)