module Niv.Test (tests, test) where import qualified Niv.Git.Test as Git import Niv.GitHub.Test import Niv.Sources.Test import Niv.Update.Test import qualified Test.Tasty as Tasty import qualified Test.Tasty.HUnit as Tasty test :: IO () test = Tasty.defaultMain tests tests :: Tasty.TestTree tests = Tasty.testGroup "niv" [ Tasty.testGroup "update" [ Tasty.testCase "simply runs" simplyRuns, Tasty.testCase "picks first" picksFirst, Tasty.testCase "loads" loads, Tasty.testCase "survives checks" survivesChecks, Tasty.testCase "isn't too eager" isNotTooEager, Tasty.testCase "dirty forces update" dirtyForcesUpdate, Tasty.testCase "should run when no changes" shouldNotRunWhenNoChanges, Tasty.testCase "templates expand" templatesExpand ], Tasty.testGroup "github" [ Tasty.testCase "inits properly" test_githubInitsProperly, Tasty.testCase "updates" test_githubUpdates, Tasty.testCase "updates once" test_githubUpdatesOnce, Tasty.testCase "doesn't override rev" test_githubDoesntOverrideRev, Tasty.testCase "falls back to URL" test_githubURLFallback ], Tasty.testGroup "sources.nix" [ Tasty.testCase "has latest version" test_shippedSourcesNixIsLatest ], Tasty.testGroup "git" Git.tests ]