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.119 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.118 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.117 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.116 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.115 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.114 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.113 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.111 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.110 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.109 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.108 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.107 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.106 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.105 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.104 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.103 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.102 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.101 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.100 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb
trackler-2.2.1.99 tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb