1{-# LANGUAGE ConstraintKinds, GADTs, RankNTypes, FlexibleInstances, FlexibleContexts, MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
3module Main (main) where
7import qualified Reflex.Bench.Focused as Focused
8import qualified Reflex.Test.Micro as Micro
14import System.Environment
18matchPrefixes :: [String] -> (String -> Bool)
19matchPrefixes [] = const True
20matchPrefixes args = \name -> any (`isPrefixOf` name) args
28 ["--list"] -> mapM_ putStrLn (fst <$> allTests) >> exitWith (ExitFailure 1)
29 _ -> case filter (matchPrefixes args . fst) allTests of
30 [] -> putStrLn "filter did not match any tests" >> exitWith (ExitFailure 1)
31 tests -> runTests tests
35 [ makeGroup "micro" Micro.testCases
36 , makeGroup "subscribing (100,40)" (Focused.subscribing 100 40)
37 , makeGroup "firing 1000" (Focused.firing 1000)
38 , makeGroup "merge 100" (Focused.merging 100)
39 , makeGroup "fan 50" (Focused.fans 50)
42 makeGroup name tests = first (\test -> intercalate "/" [name, test]) <$> tests
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list