Sha256: 1b216d246af87a09439c575445a8001426975a6cece05155383702a8d2c8b750

Contents?: true

Size: 1003 Bytes

Versions: 127

Compression:

Stored size: 1003 Bytes

Contents

import play.api.libs.json.Json

import scala.io.Source

class IsogramTestGenerator {
  implicit val testCaseReader = Json.reads[IsogramTestCase]

  private val filename = "isogram.json"
  private val fileContents = Source.fromFile(filename).getLines.mkString
  private val json = Json.parse(fileContents)

  def write {
    val testCases = (json \ "cases").get.as[List[IsogramTestCase]]

    implicit def testCaseToGen(tc: IsogramTestCase): TestCaseGen = {
      val callSUT =
        s"""Isogram.isIsogram("${tc.input}")"""
      val expected = tc.expected.toString

      TestCaseGen(tc.description, callSUT, expected)
    }

    val testBuilder = new TestBuilder("IsogramTest")
    testBuilder.addTestCases(testCases)
    testBuilder.toFile
  }
}

case class IsogramTestCase(description: String,
                           input: String,
                           expected: Boolean)

object IsogramTestGenerator {
  def main(args: Array[String]): Unit = {
    new IsogramTestGenerator().write
  }
}

Version data entries

127 entries across 127 versions & 1 rubygems

Version Path
trackler-2.2.1.12 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.11 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.10 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.9 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.8 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.7 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.6 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.5 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.4 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.3 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.2 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.1 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.1.0 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.6 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.5 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.4 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.3 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.2 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.1 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala
trackler-2.2.0.0 tracks/scala/testgen/src/main/scala/IsogramTestGenerator.scala