summaryrefslogtreecommitdiff
path: root/test/Graphics/Fountainhead/MetricsSpec.hs
blob: 57747eff5733085c41601261bad6b4ab3dc725c4 (plain)
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
{- This Source Code Form is subject to the terms of the Mozilla Public License,
   v. 2.0. If a copy of the MPL was not distributed with this file, You can
   obtain one at https://mozilla.org/MPL/2.0/. -}

{-# LANGUAGE OverloadedStrings #-}

module Graphics.Fountainhead.MetricsSpec
    ( spec
    ) where

import Graphics.Fountainhead.Metrics
import Test.Hspec (Spec, describe, xit, shouldBe)
import qualified Data.ByteString as ByteString

spec :: Spec
spec =
    describe "collectMetrics" $
        xit "collects information from the name table" $ do
            let fontPath = "./fonts/OpenSans-Bold.ttf"
                expected = FontDescriptor
                    { fontName = "OpenSans−Bold"
                    , flags = [] -- 4
                    , ascender = 1068
                    , descender = -292
                    , fontBBox =  FontBBox (-548) (-271) 1201 1047
                    , italicAngle = 0
                    , capHeight = 714
                    , stemV = 105
                    , missingWidth = 600
                    }
            openSansBoldItalic <- ByteString.readFile fontPath
            collectMetrics fontPath openSansBoldItalic `shouldBe` Right expected