Added telml-markup test suite for future expansion
Getty Ritter
8 years ago
1 | |
Name: telml-markup
|
2 | |
Version: 0.0.0
|
3 | |
Author: Getty Ritter <gettylefou@gmail.com>
|
4 | |
Maintainer: Getty Ritter <gettylefou@gmail.com>
|
5 | |
License: BSD3
|
6 | |
License-File: LICENSE
|
| 1 |
name: telml-markup
|
| 2 |
version: 0.1.0.0
|
| 3 |
author: Getty Ritter <gettylefou@gmail.com>
|
| 4 |
maintainer: Getty Ritter <gettylefou@gmail.com>
|
| 5 |
license: BSD3
|
| 6 |
license-file: LICENSE
|
7 | 7 |
-- Synopsis:
|
8 | 8 |
-- Description:
|
9 | |
Cabal-Version: >= 1.10
|
10 | |
Build-Type: Simple
|
11 | |
Extra-Source-Files: README.md, ChangeLog.md
|
| 9 |
cabal-version: >= 1.10
|
| 10 |
build-type: Simple
|
| 11 |
extra-source-files: README.md, ChangeLog.md
|
12 | 12 |
|
13 | |
Library
|
14 | |
Default-Language: Haskell2010
|
15 | |
GHC-Options: -Wall
|
16 | |
Exposed-Modules: Data.TeLML.Markup
|
17 | |
Build-Depends: base >= 4 && < 5, telml, blaze-markup, blaze-html, mtl
|
| 13 |
library
|
| 14 |
default-language: Haskell2010
|
| 15 |
ghc-options: -Wall
|
| 16 |
exposed-modules: Data.TeLML.Markup
|
| 17 |
build-depends: base >= 4 && < 5,
|
| 18 |
telml,
|
| 19 |
blaze-markup,
|
| 20 |
blaze-html,
|
| 21 |
mtl
|
18 | 22 |
|
19 | |
-- Test-Suite spec
|
20 | |
-- Type: exitcode-stdio-1.0
|
21 | |
-- Default-Language: Haskell2010
|
22 | |
-- Hs-Source-Dirs: test
|
23 | |
-- Ghc-Options: -Wall
|
24 | |
-- Main-Is: Spec.hs
|
25 | |
-- Build-Depends: base
|
26 | |
-- , hspec
|
| 23 |
test-suite spec
|
| 24 |
type: exitcode-stdio-1.0
|
| 25 |
ghc-options: -Wall
|
| 26 |
hs-source-dirs: test
|
| 27 |
main-is: Spec.hs
|
| 28 |
build-depends: base == 4.*
|
| 29 |
, telml
|
| 30 |
, telml-markup
|
| 31 |
, hspec == 2.*
|
| 32 |
, blaze-markup
|
27 | 33 |
|
28 | |
Source-Repository head
|
29 | |
Type: git
|
30 | |
-- Location:
|
| 34 |
source-repository head
|
| 35 |
type: git
|
| 36 |
location: https://github.com/aisamanra/telml-markup
|
| 1 |
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}
|
| 1 |
{-# LANGUAGE OverloadedStrings #-}
|
| 2 |
|
| 3 |
module Telml.MarkupSpec (main, spec) where
|
| 4 |
|
| 5 |
import Control.Monad ((>=>))
|
| 6 |
import Data.TeLML
|
| 7 |
import Data.TeLML.Markup
|
| 8 |
import Text.Blaze.Renderer.String (renderMarkup)
|
| 9 |
|
| 10 |
import Test.Hspec
|
| 11 |
|
| 12 |
main :: IO ()
|
| 13 |
main = hspec spec
|
| 14 |
|
| 15 |
doRender :: String -> Either String String
|
| 16 |
doRender = parse >=> render >=> return . renderMarkup
|
| 17 |
|
| 18 |
spec :: Spec
|
| 19 |
spec = do
|
| 20 |
describe "render" $ do
|
| 21 |
it "should emphasize" $ do
|
| 22 |
doRender "\\em{foo}" `shouldBe` Right "<p><em>foo</em></p>"
|
| 23 |
it "should embolden" $ do
|
| 24 |
doRender "\\strong{foo}" `shouldBe` Right "<p><strong>foo</strong></p>"
|
| 25 |
it "should lis" $ do
|
| 26 |
doRender "\\ul{\\li{one}\\li{two}}" `shouldBe`
|
| 27 |
Right "<p><ul><li>one</li><li>two</li></ul></p>"
|