Sha256: 914cdada83306aac938c4beb2e9966fc31172506a6ea1f696206774c738ff3c6
Contents?: true
Size: 1.08 KB
Versions: 20
Compression:
Stored size: 1.08 KB
Contents
#!/usr/bin/env ruby gem 'minitest', '>= 5.0.0' require 'minitest/autorun' require_relative 'accumulate' class ArrayTest < Minitest::Test def test_empty_accumulation assert_equal [], [].accumulate { |e| e * e } end def test_accumulate_squares skip result = [1, 2, 3].accumulate do |number| number * number end assert_equal [1, 4, 9], result end def test_accumulate_upcases skip result = %w(hello world).accumulate(&:upcase) assert_equal %w(HELLO WORLD), result end def test_accumulate_reversed_strings skip result = %w(the quick brown fox etc).accumulate(&:reverse) assert_equal %w(eht kciuq nworb xof cte), result end def test_accumulate_recursively skip result = %w(a b c).accumulate do |char| %w(1 2 3).accumulate do |digit| "#{char}#{digit}" end end assert_equal [%w(a1 a2 a3), %w(b1 b2 b3), %w(c1 c2 c3)], result end def test_do_not_change_in_place skip original = [1, 2, 3] copy = original.dup original.accumulate { |n| n * n } assert_equal copy, original end end
Version data entries
20 entries across 20 versions & 1 rubygems