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.37 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.36 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.35 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.34 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.33 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.32 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.31 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.30 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.29 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.28 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.27 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.26 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.24 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.23 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.22 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.21 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.20 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.19 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.18 tracks/ruby/lib/difference_of_squares_cases.rb
trackler-2.0.8.17 tracks/ruby/lib/difference_of_squares_cases.rb