Skip to content
This repository was archived by the owner on Apr 1, 2025. It is now read-only.

Commit c6607e4

Browse files
author
Patrick Thomson
authored
Merge pull request #125 from github/tasty-golden-scrumptious-tests
Use tasty-golden for golden tests and ditch vendored hspec-expectations package.
2 parents af5c06b + d50c081 commit c6607e4

File tree

33 files changed

+167
-660
lines changed

33 files changed

+167
-660
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ before_install:
2828
- cabal --version
2929

3030
install:
31-
- cabal new-update hackage.haskell.org
31+
- cabal new-update -v hackage.haskell.org
3232
- cabal new-configure --enable-tests --write-ghc-environment-files=always
3333
- cabal new-build --only-dependencies -j
3434

cabal.project

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,3 @@ source-repository-package
1414
type: git
1515
location: https://github.com/joshvera/proto3-wire.git
1616
tag: 84664e22f01beb67870368f1f88ada5d0ad01f56
17-
18-
source-repository-package
19-
type: git
20-
location: https://github.com/rewinfrey/hspec-expectations-pretty-diff
21-
tag: 94af5871c24ba319f7f72fefa53c1a4d074c9a29

semantic.cabal

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ library
274274
autogen-modules: Paths_semantic
275275
other-modules: Paths_semantic
276276
build-depends: base >= 4.12 && < 5
277-
, ansi-terminal ^>= 0.8.2
277+
, ansi-terminal >= 0.8.2 && <1
278278
, array ^>= 0.5.3.0
279279
, attoparsec ^>= 0.13.2.2
280280
, cmark-gfm == 0.1.8
@@ -340,6 +340,7 @@ test-suite test
340340
import: haskell, dependencies, executable-flags
341341
type: exitcode-stdio-1.0
342342
hs-source-dirs: test
343+
ghc-options: -Wunused-imports
343344
main-is: Spec.hs
344345
other-modules: Analysis.Go.Spec
345346
, Analysis.PHP.Spec
@@ -381,13 +382,16 @@ test-suite test
381382
, Test.Hspec.LeanCheck
382383
build-depends: semantic
383384
, tree-sitter-json
384-
, Glob
385+
, Glob ^>= 0.10.0
385386
, hspec >= 2.6 && <3
386387
, hspec-core >= 2.6 && <3
387-
, hspec-expectations-pretty-diff ^>= 0.7.2.5
388+
, hspec-expectations ^>= 0.8.2
389+
, tasty ^>= 1.2.3
390+
, tasty-golden ^>= 2.3.2
391+
, tasty-hspec ^>= 1.1.5.1
388392
, HUnit ^>= 1.6.0.0
389393
, leancheck >= 0.8 && <1
390-
, temporary
394+
, temporary ^>= 1.3
391395
if flag(release)
392396
ghc-options: -dynamic
393397

@@ -398,9 +402,9 @@ test-suite parse-examples
398402
main-is: Examples.hs
399403
build-depends: semantic
400404
, Glob
401-
, hspec >= 2.4.1
405+
, hspec
402406
, hspec-core
403-
, hspec-expectations-pretty-diff
407+
, hspec-expectations
404408

405409
benchmark evaluation
406410
import: haskell, executable-flags
@@ -409,7 +413,7 @@ benchmark evaluation
409413
main-is: Main.hs
410414
ghc-options: -static
411415
build-depends: base
412-
, criterion
416+
, criterion ^>= 1.5
413417
, semantic
414418

415419
source-repository head

test/Analysis/Go/Spec.hs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
{-# OPTIONS_GHC -O0 #-}
22
module Analysis.Go.Spec (spec) where
33

4-
import Data.Abstract.Evaluatable (EvalError(..))
54
import qualified Data.Abstract.ModuleTable as ModuleTable
65
import qualified Data.Language as Language
7-
import qualified Language.Go.Assignment as Go
86
import SpecHelpers
97

108

test/Analysis/PHP/Spec.hs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
11
{-# OPTIONS_GHC -O0 #-}
22
module Analysis.PHP.Spec (spec) where
33

4-
import Control.Abstract
5-
import Data.Abstract.Evaluatable (EvalError (..))
64
import qualified Data.Abstract.ModuleTable as ModuleTable
75
import qualified Data.Abstract.Value.Concrete as Value
86
import qualified Data.Language as Language
9-
import qualified Language.PHP.Assignment as PHP
107
import SpecHelpers
118

129

test/Analysis/Python/Spec.hs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1+
{-# OPTIONS_GHC -O0 #-}
12
module Analysis.Python.Spec (spec) where
23

3-
import Data.Abstract.Evaluatable (EvalError(..))
44
import qualified Data.Abstract.ModuleTable as ModuleTable
55
import Data.Abstract.Value.Concrete
6-
import qualified Language.Python.Assignment as Python
76
import qualified Data.Language as Language
87

98
import SpecHelpers

test/Analysis/Ruby/Spec.hs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,13 @@
22
{-# LANGUAGE TupleSections #-}
33
module Analysis.Ruby.Spec (spec) where
44

5-
import Control.Abstract (Declaration (..), ScopeError (..), runDeref)
5+
import Control.Abstract (Declaration (..), ScopeError (..))
66
import Control.Effect.Resumable (SomeError (..))
77
import Data.Abstract.Evaluatable
88
import qualified Data.Abstract.ModuleTable as ModuleTable
99
import Data.Abstract.Number as Number
1010
import Data.Abstract.Value.Concrete as Value
1111
import qualified Data.Language as Language
12-
import Data.List.NonEmpty (NonEmpty (..))
1312
import Data.Sum
1413

1514
import SpecHelpers

test/Analysis/TypeScript/Spec.hs

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,15 @@ module Analysis.TypeScript.Spec (spec) where
55
import Data.Syntax.Statement (StatementBlock(..))
66
import qualified Data.Abstract.ScopeGraph as ScopeGraph (AccessControl(..))
77
import Control.Abstract.ScopeGraph hiding (AccessControl(..))
8-
import Control.Abstract.Value as Value hiding (String, Unit)
9-
import Control.Arrow ((&&&))
108
import Data.Abstract.Evaluatable
119
import qualified Data.Abstract.Heap as Heap
1210
import Data.Abstract.Module (ModuleInfo (..))
1311
import qualified Data.Abstract.ModuleTable as ModuleTable
1412
import Data.Abstract.Number as Number
1513
import Data.Abstract.Package (PackageInfo (..))
16-
import qualified Data.Abstract.ScopeGraph as ScopeGraph
1714
import Data.Abstract.Value.Concrete as Concrete
1815
import qualified Data.Language as Language
19-
import qualified Data.List.NonEmpty as NonEmpty
2016
import Data.Location
21-
import qualified Data.Map.Internal as Map
2217
import Data.Quieterm
2318
import Data.Scientific (scientific)
2419
import Data.Sum

test/Control/Abstract/Evaluator/Spec.hs

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,14 @@ import qualified Control.Abstract.Heap as Heap
88
import Data.Abstract.Address.Precise as Precise
99
import Data.Abstract.BaseError
1010
import Data.Abstract.Evaluatable
11-
import Data.Abstract.FreeVariables
1211
import Data.Abstract.Module
1312
import qualified Data.Abstract.Number as Number
1413
import Data.Abstract.Package
1514
import qualified Data.Abstract.ScopeGraph as ScopeGraph
1615
import Data.Abstract.Value.Concrete as Value
17-
import Data.Algebra
18-
import Data.Bifunctor (first)
19-
import Data.Functor.Const
2016
import qualified Data.Language as Language
2117
import qualified Data.Map.Strict as Map
2218
import Data.Sum
23-
import Data.Text (pack)
2419
import SpecHelpers hiding (reassociate)
2520
import System.IO.Unsafe (unsafePerformIO)
2621

test/Data/Abstract/Name/Spec.hs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ module Data.Abstract.Name.Spec where
22

33
import SpecHelpers
44

5-
import Data.Abstract.Name
6-
75
spec :: Spec
86
spec = describe "Data.Abstract.Name" $
97
it "should format anonymous names correctly" $ do

0 commit comments

Comments
 (0)