Sha256: fb25cd8fef86bc2b5e2456c6cba92bf8b39257f93623b0d8c6c716b8fe76563a
Contents?: true
Size: 865 Bytes
Versions: 32
Compression:
Stored size: 865 Bytes
Contents
require "../exercise_generator" require "../exercise_test_case" class BinaryGenerator < ExerciseGenerator def exercise_name "binary" end def test_cases JSON.parse(data)["cases"].map do |test_case| BinaryTestCase.new(test_case) end end end class BinaryTestCase < ExerciseTestCase private getter binary : JSON::Any private getter description : JSON::Any private getter expected : JSON::Any? def initialize(test_case) @binary = test_case["input"]["binary"] @description = test_case["description"] @expected = test_case["expected"]? end def workload if expected "Binary.to_decimal(\"#{binary}\").should eq(#{expected})" else <<-WL expect_raises(ArgumentError) do Binary.to_decimal(\"#{binary}\") end WL end end def test_name description end end
Version data entries
32 entries across 32 versions & 1 rubygems