Sha256: 75b757ecc73c1bc6954c367b4410d773abdcef967d22a420f48c75e7712a8849

Contents?: true

Size: 796 Bytes

Versions: 185

Compression:

Stored size: 796 Bytes

Contents

require "./exercise_generator"
require "./exercise_test_case"

class HelloWorldGenerator < ExerciseGenerator
  def exercise_name
    "hello-world"
  end

  def test_cases
    JSON.parse(data)["cases"].map do |test_case|
      HelloWorldTestCase.new(test_case)
    end
  end
end

class HelloWorldTestCase < ExerciseTestCase
  private getter description : JSON::Any
  private getter name : JSON::Any?
  private getter expected : JSON::Any

  def initialize(test_case)
    @description = test_case["description"]
    @name = test_case["name"]?
    @expected = test_case["expected"]
  end

  def workload
    if name
      "HelloWorld.hello(\"#{name}\").should eq(\"#{expected}\")"
    else
      "HelloWorld.hello.should eq(\"#{expected}\")"
    end
  end

  def test_name
    description
  end
end

Version data entries

185 entries across 185 versions & 1 rubygems

Version Path
trackler-2.1.0.53 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.52 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.51 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.50 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.49 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.48 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.47 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.46 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.45 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.44 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.43 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.42 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.41 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.40 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.39 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.38 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.37 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.36 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.34 tracks/crystal/src/generator/exercises/hello_world.cr
trackler-2.1.0.33 tracks/crystal/src/generator/exercises/hello_world.cr