Sha256: 193c42d42eed9b58b20b8e3fbe917b9ca2d3ef453d62826a9d9dd85dd904d499

Contents?: true

Size: 484 Bytes

Versions: 159

Compression:

Stored size: 484 Bytes

Contents

require 'generator/exercise_case'

class CollatzConjectureCase < Generator::ExerciseCase

  def workload
    case expected
    when Integer
      standard_assertion
    when Hash
      error_assertion
    end
  end

  def standard_assertion
    assert_equal { subject_of_test }
  end

  def error_assertion
    "assert_raises(ArgumentError) { #{subject_of_test} }"
  end

  def subject_of_test
    "CollatzConjecture.steps(#{input})"
  end

  def input
    literal(number)
  end
end

Version data entries

159 entries across 159 versions & 1 rubygems

Version Path
trackler-2.2.1.159 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.158 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.157 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.156 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.155 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.154 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.153 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.152 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.151 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.150 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.149 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.148 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.147 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.146 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.145 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.144 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.143 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.142 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.141 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.140 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb