1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
{-# LANGUAGE Strict #-}
{-# LANGUAGE TemplateHaskell #-}
-- {-# OPTIONS_GHC -ddump-splices #-}
-- {-# OPTIONS_GHC -ddump-simpl -ddump-to-file #-}
module Regression.Issue967 (issue967) where
import Test.Tasty (TestTree)
import Test.Tasty.HUnit (testCase, assertEqual)
import qualified Data.Text.Lazy as LT
import qualified Data.Text.Lazy.Encoding as LTE
import Data.Aeson
import Data.Aeson.TH
data DataA = DataA
{ val1 :: Int,
val2 :: Int
}
deriving (Eq, Show)
-------------------------------------------------------------------------------
-- Instances
-------------------------------------------------------------------------------
$(deriveJSON defaultOptions ''DataA)
-------------------------------------------------------------------------------
-- Test
-------------------------------------------------------------------------------
issue967 :: TestTree
issue967 = testCase "issue967" $ do
let ev = DataA 1 2
encoding = encode ev
parsedEv = decode encoding :: Maybe DataA
assertEqual (LT.unpack $ LTE.decodeUtf8 encoding) (Just ev) parsedEv
|