summaryrefslogtreecommitdiffhomepage
path: root/test/Xmobar
diff options
context:
space:
mode:
authorSibi Prabakaran <sibi@psibi.in>2020-06-14 15:40:18 +0530
committerjao <jao@gnu.org>2020-06-23 16:38:20 +0100
commit8aec308ae2030f8bff7bc58ec435b8a610951d0a (patch)
tree75224696b25a4926388afe57c5555713038b923d /test/Xmobar
parent505615b7fab38ba81fda92e0fba5b3d59cecc948 (diff)
downloadxmobar-8aec308ae2030f8bff7bc58ec435b8a610951d0a.tar.gz
xmobar-8aec308ae2030f8bff7bc58ec435b8a610951d0a.tar.bz2
Cleanup and add some tests
Diffstat (limited to 'test/Xmobar')
-rw-r--r--test/Xmobar/Plugins/Monitors/CpuSpec.hs41
1 files changed, 41 insertions, 0 deletions
diff --git a/test/Xmobar/Plugins/Monitors/CpuSpec.hs b/test/Xmobar/Plugins/Monitors/CpuSpec.hs
new file mode 100644
index 0000000..449acd5
--- /dev/null
+++ b/test/Xmobar/Plugins/Monitors/CpuSpec.hs
@@ -0,0 +1,41 @@
+module Xmobar.Plugins.Monitors.CpuSpec
+ (
+ spec, main
+ ) where
+
+import Test.Hspec
+import Xmobar.Plugins.Monitors.Common
+import Xmobar.Plugins.Monitors.Cpu
+import Data.List
+
+main :: IO ()
+main = hspec spec
+
+spec :: Spec
+spec =
+ describe "CPU Spec" $ do
+ it "works with total template" $
+ do let args = ["-L","3","-H","50","--normal","green","--high","red", "-t", "Cpu: <total>%"]
+ cpuArgs <- getArguments args
+ cpuValue <- runCpu cpuArgs
+ cpuValue `shouldSatisfy` (\item -> "Cpu:" `isPrefixOf` item)
+ it "works with bar template" $
+ do let args = ["-L","3","-H","50","--normal","green","--high","red", "-t", "Cpu: <total>% <bar>"]
+ cpuArgs <- getArguments args
+ cpuValue <- runCpu cpuArgs
+ cpuValue `shouldSatisfy` (\item -> "::" `isSuffixOf` item)
+ it "works with no icon pattern template" $
+ do let args = ["-L","3","-H","50","--normal","green","--high","red", "-t", "Cpu: <total>% <bar>", "--", "--load-icon-pattern", "<icon=bright_%%.xpm/>"]
+ cpuArgs <- getArguments args
+ cpuValue <- runCpu cpuArgs
+ cpuValue `shouldSatisfy` (\item -> not $ "<icon=bright_" `isInfixOf` cpuValue)
+ it "works with icon pattern template" $
+ do let args = ["-L","3","-H","50","--normal","green","--high","red", "-t", "Cpu: <total>% <bar> <ipat>", "--", "--load-icon-pattern", "<icon=bright_%%.xpm/>"]
+ cpuArgs <- getArguments args
+ cpuValue <- runCpu cpuArgs
+ cpuValue `shouldSatisfy` (\item -> "<icon=bright_" `isInfixOf` cpuValue)
+ it "works with other parameters in template" $
+ do let args = ["-L","3","-H","50","--normal","green","--high","red", "-t", "Cpu: <user> <nice> <iowait>"]
+ cpuArgs <- getArguments args
+ cpuValue <- runCpu cpuArgs
+ cpuValue `shouldSatisfy` (\item -> "Cpu:" `isPrefixOf` cpuValue)