aeson-typescript-0.5.0.0: test/OmitNothingFields.hs
module OmitNothingFields (main, tests) where
import Data.Aeson as A
import Data.Aeson.TypeScript.TH
import Data.Aeson.TypeScript.Types
import Data.Proxy
import Test.Hspec
import TestBoilerplate
$(testDeclarations "OmitNothingFields" (A.defaultOptions {omitNothingFields=True}))
main :: IO ()
main = hspec $ describe "OmitNothingFields" $ do
it "encodes as expected" $ do
let decls = getTypeScriptDeclarations (Proxy :: Proxy Optional)
decls `shouldBe` [TSInterfaceDeclaration {
interfaceName = "Optional"
, interfaceGenericVariables = []
, interfaceMembers = [
TSField True "optionalInt" "number" Nothing
]
, interfaceDoc = Nothing
}]
tests