Sha256: 03158c58b955f7b9a47e4cfc7a4544eaacf0df4701ec15fd813651b8f516d3fc
Contents?: true
Size: 660 Bytes
Versions: 32
Compression:
Stored size: 660 Bytes
Contents
require 'exercise_cases' class PangramCase < OpenStruct def name 'test_%s' % description.downcase.tr_s(" -'", '_').sub(/_$/, '') end def workload [ "phrase = '#{input}'\n", " #{assertion} Pangram.pangram?(phrase), \"#{message}\"" ].join end def message "\#{phrase.inspect} #{is_or_isnt} a pangram" end def is_or_isnt expected ? 'IS' : 'is NOT' end def assertion expected ? 'assert' : 'refute' end def skipped? index.zero? ? '# skip' : 'skip' end end PangramCases = proc do |data| JSON.parse(data)['cases'].map.with_index do |row, i| PangramCase.new(row.merge('index' => i)) end end
Version data entries
32 entries across 32 versions & 1 rubygems