diff options
| author | Ben Sima <ben@bensima.com> | 2025-11-22 13:53:49 -0500 |
|---|---|---|
| committer | Ben Sima <ben@bensima.com> | 2025-11-22 13:53:49 -0500 |
| commit | 8697fd8a11a1cf368db1e6c05afddf87906e8de3 (patch) | |
| tree | f6d5e8804c563435ff4b1e9f046c74c6b837c764 /Omni | |
| parent | d7474f376f55bbd7d7f047551b50f840bc91526d (diff) | |
| parent | a21633e61be70e1fa5ffec24267f1bf18f5497ad (diff) | |
task: complete t-rWcqsDZFM.1 (Merge)
Amp-Thread-ID:
https://ampcode.com/threads/T-ca3b086b-5a85-422a-b13d-256784c04221
Co-authored-by: Amp <amp@ampcode.com>
Diffstat (limited to 'Omni')
| -rw-r--r-- | Omni/Agent.hs | 13 | ||||
| -rw-r--r-- | Omni/Agent/LogTest.hs | 74 |
2 files changed, 12 insertions, 75 deletions
diff --git a/Omni/Agent.hs b/Omni/Agent.hs index d53bccd..f3fc29d 100644 --- a/Omni/Agent.hs +++ b/Omni/Agent.hs @@ -10,6 +10,7 @@ module Omni.Agent where import Alpha import qualified Data.Text as Text import qualified Omni.Agent.Core as Core +import qualified Omni.Agent.Log as Log import qualified Omni.Agent.Worker as Worker import qualified Omni.Cli as Cli import qualified Omni.Test as Test @@ -63,7 +64,17 @@ move args | otherwise = putStrLn (Cli.usage help) test :: Test.Tree -test = Test.group "Omni.Agent" [unitTests] +test = Test.group "Omni.Agent" [unitTests, logTests] + +logTests :: Test.Tree +logTests = + Test.group + "Log tests" + [ Test.unit "Log.emptyStatus" <| do + let s = Log.emptyStatus "worker-1" + Log.statusWorker s Test.@?= "worker-1" + Log.statusFiles s Test.@?= 0 + ] unitTests :: Test.Tree unitTests = diff --git a/Omni/Agent/LogTest.hs b/Omni/Agent/LogTest.hs deleted file mode 100644 index 97b558d..0000000 --- a/Omni/Agent/LogTest.hs +++ /dev/null @@ -1,74 +0,0 @@ -{-# LANGUAGE OverloadedStrings #-} -{-# LANGUAGE NoImplicitPrelude #-} - --- : out agent-log-test -module Omni.Agent.LogTest where - -import Alpha -import Omni.Agent.Log -import qualified Omni.Test as Test - -main :: IO () -main = Test.run tests - -tests :: Test.Tree -tests = - Test.group - "Omni.Agent.Log" - [ Test.unit "Parse LogEntry" testParse, - Test.unit "Format LogEntry" testFormat - ] - -testParse :: IO () -testParse = do - let json = "{\"message\": \"executing 1 tools in 1 batch(es)\", \"batches\": [[\"grep\"]]}" - let expected = - LogEntry - { leMessage = Just "executing 1 tools in 1 batch(es)", - leLevel = Nothing, - leToolName = Nothing, - leBatches = Just [["grep"]], - leMethod = Nothing, - lePath = Nothing - } - parseLine json @?= Just expected - -testFormat :: IO () -testFormat = do - let entry = - LogEntry - { leMessage = Just "executing 1 tools in 1 batch(es)", - leLevel = Nothing, - leToolName = Nothing, - leBatches = Just [["grep"]], - leMethod = Nothing, - lePath = Nothing - } - -- Expect NO emoji - formatLogEntry entry @?= Just "THOUGHT: Planning tool execution (grep)" - - let entry2 = - LogEntry - { leMessage = Just "some random log", - leLevel = Nothing, - leToolName = Nothing, - leBatches = Nothing, - leMethod = Nothing, - lePath = Nothing - } - formatLogEntry entry2 @?= Nothing - - let entry3 = - LogEntry - { leMessage = Just "some error", - leLevel = Just "error", - leToolName = Nothing, - leBatches = Nothing, - leMethod = Nothing, - lePath = Nothing - } - -- Expect NO emoji - formatLogEntry entry3 @?= Just "ERROR: some error" - -(@?=) :: (Eq a, Show a) => a -> a -> IO () -(@?=) = (Test.@?=) |
