From: Mart Lubbers Date: Thu, 8 Aug 2019 12:41:31 +0000 (+0200) Subject: tests X-Git-Url: https://git.martlubbers.net/?a=commitdiff_plain;h=a213c291ff305325434a46262c9ec97e04cb829e;p=clean-tests.git tests --- diff --git a/parseclass/expr.icl b/parseclass/expr.icl index 6d5dad5..e61c41b 100644 --- a/parseclass/expr.icl +++ b/parseclass/expr.icl @@ -54,10 +54,18 @@ instance eq (MaybeError String) where (==.) l r = (==) <$> l <*> r pToken c = pSatisfy ((==)c) -class parseExpr a :: Parser Char a -instance parseExpr a:: parseExpr -parseExpr :: Parser Char (v a) | expr, div v & parsable, ==, +, /, zero, toString a -parseExpr = foldr ($) parseBasic +class parseExpr v a | expr, div v +where + parseExpr :: Parser Char (v a) +instance parseExpr v Int | expr, div v where + parseExpr = parseE +instance parseExpr v Real | expr, div v where + parseExpr = parseE +//instance parseExpr (v Real) where +// parseExpr + +parseE :: Parser Char (v a) | expr, div v & parsable, ==, +, /, zero, toString a +parseE = foldr ($) parseBasic [ flip pChainl1 (pToken '+' $> (+.)) , flip pChainl1 (pToken '/' $> (/.)) ] @@ -66,6 +74,7 @@ where class parsable a :: Parser Char a instance parsable Int where parsable = foldl (\a b->10*a+digitToInt b) 0 <$> some pDigit +instance parsable Real where parsable = foldl (\a b->10*a+digitToInt b) 0 <$> some pDigit Start :: Either [Error] (Print Int) Start = parse parseExpr ['42+42'] diff --git a/test.icl b/test.icl index 06b0dec..e437b71 100644 --- a/test.icl +++ b/test.icl @@ -1,5 +1,36 @@ module test +import iTasks + +import iTasks.Extensions.DateTime +import iTasks.UI.Layout.Minimal + +Start w = doTasksWithOptions opt p2 w +where + t :: Task DateTime + t = waitForTimer 7 + t2 :: Task Int + t2 = enterInformation () [] >>= viewInformation () [] + t3 :: Task String + t3 = withShared 3 \sh-> + withTemporaryDirectory (viewInformation () []) + >>= viewInformation () [] + t4 = updateInformation () [] 42 + + t5 = sequence [return i\\i<-[0..1000]] >>= viewInformation () [] + t6 = waitForTimer 10 + + t7 :: Int -> Task Int + t7 i = viewInformation () [] i >>= \x->t7 (x + 1) + + p = parallel [(Embedded, \_->waitForTimer 5)] [] + p1 = waitForTimer 5 -||- waitForTimer 10 + p2 = withShared 3 \sh->watch sh + + opt args eo = Ok eo +// opt args eo = Ok {eo & autoLayout=False} + +/* //import StdEnv //import Data.Error //import Data.Maybe @@ -8,40 +39,33 @@ module test //import System.Socket.Ipv4 ////import System.Select // -import Data.Map => qualified get, updateAt +from Data.Map import singleton import Data.Map.GenJSON -import Data.Func +//import Data.Func import iTasks -Start w = doTasks t2 w +import iTasks.Extensions.Files + +//Start w = doTasks (onStartup (copyFile "/home/mrl/test.txt" "/home/mrl/test2.txt")) w +//Start w = doTasks (onStartup (workAs SystemUser (return 42))) w +Start w = doTasks t w -t2 = enterInformation "bork" [] - >>* [OnAction ActionOk $ ifValue ((==)42) return] +t = viewInformation () [] () + >>* [OnAction ActionOk (always (return ())) + ,OnAction ActionQuit (always (return ())) + ] -t = parallel - [(Embedded, - \stl->appendTask Embedded (\_->viewInformation "int" [] 42 <<@ markActive <<@ markActive) stl - >>= \tid->viewInformation "go" [] "go" @! 42 -// >>* [OnAction ActionOk $ always $ set -// ([(tid, put "answer" "42" (singleton "bork" "bork"))]) -// (sdsFocus {onlyIndex=Nothing,onlyTaskId=Just [tid],onlySelf=False,includeValue=True,includeAttributes=True,includeProgress=True} stl)] -// >>= \_->viewSharedInformation "parallel task list" [] +//Start w = doTasks t w +// +//t :: Task [(Int, TaskValue Int)] +//t = parallel +// [(Embedded, \stl-> +// appendTask Embedded (\_->viewInformation "Int" [] 42) stl +// >>! \i->set (singleton "focus" "true") (sdsFocus i (taskListEntryMeta stl)) +// >>~ \_->viewSharedInformation "Parallel task list" [] // (sdsFocus {onlyIndex=Nothing,onlyTaskId=Nothing,onlySelf=False,includeValue=True,includeProgress=True,includeAttributes=True} stl) // @! 42 -// ),(Embedded, \stl->viewSharedInformation "parallel task list" [] -// (sdsFocus {onlyIndex=Nothing,onlyTaskId=Nothing,onlySelf=False,includeValue=True,includeProgress=True,includeAttributes=True} stl) -// @! 42 - )] [] -// [OnAction (Action "bork") $ ifValue (\v->not (v =: [])) -// \_->(Embedded, \stl-> -// get (sdsFocus defaultValue stl) >>= \(_, [_,{TaskListItem|taskId}:_])-> -// set (singleton "title" "true") -// (sdsFocus taskId (taskListEntryMeta stl)) @! ()) -// set [(taskId, singleton "title" "true")] -// (sdsFocus listFilter stl) @! ())] - <<@ ArrangeWithTabs True -where - markActive = ApplyAttribute "class" "focus" +// )] [] //import StdGeneric @@ -63,3 +87,4 @@ where // # (merr, w) = close sockfd w // | isError merr = (liftError merr, w) // = (Ok msg, w) +*/