Sha256: ffde8e0140b3b536c72a249d4c62a0b97d6d69d0a6d2cece66be3a720310d1bb

Contents?: true

Size: 734 Bytes

Versions: 102

Compression:

Stored size: 734 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

102 entries across 102 versions & 1 rubygems

Version Path
trackler-2.2.1.72 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.71 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.70 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.69 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.68 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.67 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.66 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.65 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.64 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.63 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.62 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.61 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.60 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.59 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.58 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.57 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.56 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.55 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.54 tracks/crystal/generator/src/generators/acronym.cr
trackler-2.2.1.53 tracks/crystal/generator/src/generators/acronym.cr