Sha256: a46fd6c9048eca431fc2283a6af4df95b318dacc48d5d2203884ad7d1c15b3e2

Contents?: true

Size: 732 Bytes

Versions: 189

Compression:

Stored size: 732 Bytes

Contents

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

class AcronymGenerator < ExerciseGenerator
  def exercise_name
    "acronym"
  end

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

class AcronymTestCase < ExerciseTestCase
  private getter phrase : JSON::Any
  private getter description : JSON::Any
  private getter expected : JSON::Any

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

  def workload
    "Acronym.abbreviate(\"#{phrase}\").should eq(\"#{expected}\")"
  end

  def test_name
    "does #{description}"
  end
end

Version data entries

189 entries across 189 versions & 1 rubygems

Version Path
trackler-2.0.8.7 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.6 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.5 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.4 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.3 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.2 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.8.1 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.7.0 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.44 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.43 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.42 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.41 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.40 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.39 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.38 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.37 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.36 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.35 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.34 tracks/crystal/src/generator/exercises/acronym.cr
trackler-2.0.6.33 tracks/crystal/src/generator/exercises/acronym.cr