Sha256: 1bbf2b1b0f90f29205a78474397ee6d4edc92f804c03d0632a1e5a0ac7161cda

Contents?: true

Size: 780 Bytes

Versions: 90

Compression:

Stored size: 780 Bytes

Contents

require 'exercise_cases'

class DifferenceOfSquaresCase < OpenStruct
  def test_name
    'test_%s' % description.gsub(/[ -]/, '_')
  end

  def do
    "Squares.new(#{number}).#{action}"
  end

  def action
    return 'difference' if section == 'difference_of_squares'
    section
  end

  def skipped?
    index > 0
  end

  def expected_formatted
    expected.to_s.reverse.scan(/\d{1,3}/).join('_').reverse
  end
end

DifferenceOfSquaresCases = proc do |data|
  i = 0
  json = JSON.parse(data)
  cases = []
  %w(square_of_sum sum_of_squares difference_of_squares).each do |section|
    json[section]['cases'].each do |row|
      row = row.merge(row.merge('index' => i, 'section' => section))
      cases << DifferenceOfSquaresCase.new(row)
      i += 1
    end
  end
  cases
end

Version data entries

90 entries across 90 versions & 1 rubygems

Version Path
trackler-2.0.8.16 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.15 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.14 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.13 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.12 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.11 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.10 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.9 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.8 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.7 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.6 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.5 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.4 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.3 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.2 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.1 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.7.0 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.6.44 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.6.43 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.6.42 tracks/ruby/lib/difference_of_squares_cases.rb