language-ocaml-0.2.0: test/Language/OCaml/Parser/LetBinding/Test.hs
{-# LANGUAGE QuasiQuotes #-}
module Language.OCaml.Parser.LetBinding.Test
( testStrings
) where
import Data.String.Interpolate
import qualified Language.OCaml.Parser.ExtAttributes.Test as ExtAttributes
import qualified Language.OCaml.Parser.LetBindingBody.Test as LetBindingBody
import qualified Language.OCaml.Parser.Payload.Test as Payload
import qualified Language.OCaml.Parser.PostItemAttributes.Test as PostItemAttributes
import qualified Language.OCaml.Parser.RecFlag.Test as RecFlag
limit :: Int
limit = 10
testStrings :: [String] -> [String]
testStrings structure = []
++ [ [i|let #{ea} #{rf} #{lbb} #{pia}|]
| ea <- extAttributes
, rf <- recFlag
, lbb <- letBindingBody
, pia <- postItemAttributes
]
where
extAttributes = take limit $ ExtAttributes.testStrings
recFlag = take limit $ RecFlag.testStrings
letBindingBody = take limit $ LetBindingBody.testStrings
payload = take limit $ Payload.testStrings structure
postItemAttributes = take limit $ PostItemAttributes.testStrings payload