about summary refs log tree commit diff
path: root/test/Xanthous
diff options
context:
space:
mode:
authorGriffin Smith <root@gws.fyi>2019-09-20T23·38-0400
committerGriffin Smith <root@gws.fyi>2019-09-20T23·38-0400
commitdd1616666593f65bab70f1363b5d040fe5edd054 (patch)
tree4009c7004ad2becd2b316c9212a8c778a8c646ce /test/Xanthous
parent4db3a68efec079bdb8723f377929bfa05860bdc2 (diff)
Describe what you see when you walk over items
Every step the character takes, describe the entities at that position
excluding the character.
Diffstat (limited to 'test/Xanthous')
-rw-r--r--test/Xanthous/Util/InflectionSpec.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/test/Xanthous/Util/InflectionSpec.hs b/test/Xanthous/Util/InflectionSpec.hs
new file mode 100644
index 000000000000..fad841043152
--- /dev/null
+++ b/test/Xanthous/Util/InflectionSpec.hs
@@ -0,0 +1,18 @@
+module Xanthous.Util.InflectionSpec (main, test) where
+
+import Test.Prelude
+import Xanthous.Util.Inflection
+
+main :: IO ()
+main = defaultMain test
+
+test :: TestTree
+test = testGroup "Xanthous.Util.Inflection"
+  [ testGroup "toSentence"
+    [ testCase "empty"  $ toSentence [] @?= ""
+    , testCase "single" $ toSentence ["x"] @?= "x"
+    , testCase "two"    $ toSentence ["x", "y"] @?= "x and y"
+    , testCase "three"  $ toSentence ["x", "y", "z"] @?= "x, y, and z"
+    , testCase "four"   $ toSentence ["x", "y", "z", "w"] @?= "x, y, z, and w"
+    ]
+  ]