module Test.HSpec.JUnit.Schema ( Suites(..) , Suite(..) , TestCase(..) , Result(..) ) where import Prelude import Data.Text (Text) data Suites = Suites Text [Suite] deriving (Int -> Suites -> ShowS [Suites] -> ShowS Suites -> String (Int -> Suites -> ShowS) -> (Suites -> String) -> ([Suites] -> ShowS) -> Show Suites forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Suites] -> ShowS $cshowList :: [Suites] -> ShowS show :: Suites -> String $cshow :: Suites -> String showsPrec :: Int -> Suites -> ShowS $cshowsPrec :: Int -> Suites -> ShowS Show) data Suite = Suite { Suite -> Text suiteName :: Text , Suite -> [Either Suite TestCase] suiteCases :: [Either Suite TestCase] } deriving (Int -> Suite -> ShowS [Suite] -> ShowS Suite -> String (Int -> Suite -> ShowS) -> (Suite -> String) -> ([Suite] -> ShowS) -> Show Suite forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Suite] -> ShowS $cshowList :: [Suite] -> ShowS show :: Suite -> String $cshow :: Suite -> String showsPrec :: Int -> Suite -> ShowS $cshowsPrec :: Int -> Suite -> ShowS Show) data TestCase = TestCase { TestCase -> Text testCaseClassName :: Text , TestCase -> Text testCaseName :: Text , TestCase -> Maybe Result testCaseResult :: Maybe Result } deriving (Int -> TestCase -> ShowS [TestCase] -> ShowS TestCase -> String (Int -> TestCase -> ShowS) -> (TestCase -> String) -> ([TestCase] -> ShowS) -> Show TestCase forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [TestCase] -> ShowS $cshowList :: [TestCase] -> ShowS show :: TestCase -> String $cshow :: TestCase -> String showsPrec :: Int -> TestCase -> ShowS $cshowsPrec :: Int -> TestCase -> ShowS Show) data Result = Failure Text Text | Skipped Text deriving (Int -> Result -> ShowS [Result] -> ShowS Result -> String (Int -> Result -> ShowS) -> (Result -> String) -> ([Result] -> ShowS) -> Show Result forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Result] -> ShowS $cshowList :: [Result] -> ShowS show :: Result -> String $cshow :: Result -> String showsPrec :: Int -> Result -> ShowS $cshowsPrec :: Int -> Result -> ShowS Show)