summaryrefslogtreecommitdiff
path: root/cli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala
diff options
context:
space:
mode:
Diffstat (limited to 'cli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala')
-rwxr-xr-xcli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala66
1 files changed, 66 insertions, 0 deletions
diff --git a/cli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala b/cli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala
new file mode 100755
index 0000000..3106b02
--- /dev/null
+++ b/cli/src/test/scala/com/rockymadden/stringmetric/cli/similarity/ngrammetricSpec.scala
@@ -0,0 +1,66 @@
+package com.rockymadden.stringmetric.cli.similarity
+
+import com.rockymadden.stringmetric.cli.ScalaTest
+import org.junit.runner.RunWith
+import org.scalatest.junit.JUnitRunner
+
+@RunWith(classOf[JUnitRunner])
+final class ngrammetricSpec extends ScalaTest { "ngrammetric" should provide {
+ "main method" when passed {
+ "valid dashless arguments and valid n argument" should executes {
+ "print if they are a match" in {
+ val out = new java.io.ByteArrayOutputStream()
+
+ Console.withOut(out)(
+ ngrammetric.main(
+ Array(
+ "--unitTest",
+ "--debug",
+ "--n=1",
+ "abc",
+ "abc"
+ )
+ )
+ )
+
+ out.toString should equal ("1.0\n")
+ out.reset()
+
+ Console.withOut(out)(
+ ngrammetric.main(
+ Array(
+ "--unitTest",
+ "--debug",
+ "--n=1",
+ "abc",
+ "xyz"
+ )
+ )
+ )
+
+ out.toString should equal ("0.0\n")
+ out.reset()
+ }
+ }
+ "valid dashless arguments and invalid n argument" should throws {
+ "IllegalArgumentException" in {
+ evaluating {
+ ngrammetric.main(
+ Array(
+ "--unitTest",
+ "abc",
+ "abc"
+ )
+ )
+ } should produce [IllegalArgumentException]
+ }
+ }
+ "no dashless arguments" should throws {
+ "IllegalArgumentException" in {
+ evaluating {
+ ngrammetric.main(Array("--unitTest", "--debug"))
+ } should produce [IllegalArgumentException]
+ }
+ }
+ }
+}}