shenanigans 1.0.13 → 1.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +2 -1
- data/doc/Array.html +104 -74
- data/doc/Hash.html +77 -56
- data/doc/{Fixnum.html → Integer.html} +31 -27
- data/doc/Kernel.html +114 -74
- data/doc/Module.html +11 -15
- data/doc/Object.html +24 -95
- data/doc/String.html +31 -30
- data/doc/_index.html +13 -13
- data/doc/class_list.html +3 -3
- data/doc/css/style.css +6 -9
- data/doc/file.README.html +19 -48
- data/doc/file_list.html +2 -2
- data/doc/frames.html +2 -2
- data/doc/index.html +19 -48
- data/doc/js/app.js +69 -3
- data/doc/method_list.html +12 -20
- data/doc/top-level-namespace.html +7 -7
- data/lib/shenanigans.rb +7 -7
- data/lib/shenanigans/array.rb +3 -3
- data/lib/shenanigans/array/caret.rb +3 -2
- data/lib/shenanigans/array/random_subarray.rb +7 -5
- data/lib/shenanigans/array/reductions.rb +13 -10
- data/lib/shenanigans/array/zip_with.rb +9 -12
- data/lib/shenanigans/hash.rb +3 -3
- data/lib/shenanigans/hash/extract.rb +5 -4
- data/lib/shenanigans/hash/has_shape_pred.rb +6 -7
- data/lib/shenanigans/hash/to_ostruct.rb +8 -9
- data/lib/shenanigans/integer.rb +1 -0
- data/lib/shenanigans/integer/string_length.rb +13 -0
- data/lib/shenanigans/kernel.rb +4 -4
- data/lib/shenanigans/kernel/fn.rb +7 -6
- data/lib/shenanigans/kernel/prompt.rb +6 -7
- data/lib/shenanigans/kernel/require_optional.rb +8 -8
- data/lib/shenanigans/kernel/with.rb +4 -3
- data/lib/shenanigans/module.rb +1 -1
- data/lib/shenanigans/module/private_accessor.rb +6 -6
- data/lib/shenanigans/object.rb +1 -2
- data/lib/shenanigans/object/display.rb +5 -4
- data/lib/shenanigans/string.rb +2 -2
- data/lib/shenanigans/string/cmpi.rb +4 -3
- data/lib/shenanigans/string/in_groups_of.rb +4 -6
- data/test/array/caret_test.rb +9 -0
- data/test/array/{test_random_subarray.rb → random_subarray_test.rb} +3 -3
- data/test/array/reductions_test.rb +27 -0
- data/test/array/zip_with_test.rb +14 -0
- data/test/hash/extract_test.rb +11 -0
- data/test/hash/{test_has_shape_pred.rb → has_shape_pred_test.rb} +3 -3
- data/test/hash/{test_to_ostruct.rb → to_ostruct_test.rb} +3 -3
- data/test/integer/string_length_test.rb +16 -0
- data/test/kernel/fn_test.rb +14 -0
- data/test/kernel/{test_prompt.rb → prompt_test.rb} +4 -4
- data/test/kernel/require_optional_test.rb +15 -0
- data/test/kernel/with_test.rb +12 -0
- data/test/module/{test_private_accessor.rb → private_accessor_test.rb} +3 -3
- data/test/object/{test_display.rb → display_test.rb} +4 -5
- data/test/string/{test_cmpi.rb → cmpi_test.rb} +3 -3
- data/test/string/in_groups_of_test.rb +11 -0
- metadata +22 -25
- data/lib/shenanigans/fixnum.rb +0 -1
- data/lib/shenanigans/fixnum/string_length.rb +0 -14
- data/lib/shenanigans/object/it.rb +0 -9
- data/test/array/test_caret.rb +0 -9
- data/test/array/test_reductions.rb +0 -27
- data/test/array/test_zip_with.rb +0 -14
- data/test/fixnum/test_string_length.rb +0 -16
- data/test/hash/test_extract.rb +0 -11
- data/test/kernel/test_fn.rb +0 -14
- data/test/kernel/test_require_optional.rb +0 -17
- data/test/kernel/test_with.rb +0 -12
- data/test/object/test_it.rb +0 -10
- data/test/string/test_in_groups_of.rb +0 -11
data/test/hash/test_extract.rb
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/hash/extract'
|
3
|
-
|
4
|
-
class Extract < MiniTest::Unit::TestCase
|
5
|
-
def test_extract
|
6
|
-
hash = { a: 1, b: 2, c: 3 }
|
7
|
-
assert_equal hash.extract(:b, :a), { a: 1, b: 2 }
|
8
|
-
assert_equal hash.extract(:a, :d), { a: 1}
|
9
|
-
assert_equal Hash.new.extract(:a, :c), Hash.new
|
10
|
-
end
|
11
|
-
end
|
data/test/kernel/test_fn.rb
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/kernel/fn'
|
3
|
-
|
4
|
-
class Fn < MiniTest::Unit::TestCase
|
5
|
-
def test_with_symbols
|
6
|
-
result = ["foo bar", "baz qux"].map &fn(:split, :last)
|
7
|
-
assert result == ["bar", "qux"]
|
8
|
-
end
|
9
|
-
|
10
|
-
def test_with_symbols_and_lambdas
|
11
|
-
result = (1..3).map &fn(:next, -> x { x * x }, -> x { x.to_f / 2 } )
|
12
|
-
assert result == [2.0, 4.5, 8.0]
|
13
|
-
end
|
14
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/kernel/require_optional'
|
3
|
-
require 'stringio'
|
4
|
-
|
5
|
-
class RequireOptional < MiniTest::Unit::TestCase
|
6
|
-
def test_require_optional
|
7
|
-
assert_equal require_optional('non_existent'), nil
|
8
|
-
end
|
9
|
-
|
10
|
-
def test_require_optional_with_block
|
11
|
-
res = require_optional 'non_existent' do
|
12
|
-
42
|
13
|
-
end
|
14
|
-
|
15
|
-
assert_equal res, 42
|
16
|
-
end
|
17
|
-
end
|
data/test/kernel/test_with.rb
DELETED
data/test/object/test_it.rb
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/object/it'
|
3
|
-
|
4
|
-
class Identity < MiniTest::Unit::TestCase
|
5
|
-
def test_identity
|
6
|
-
arr = [1, "2", :tree]
|
7
|
-
assert arr.map(&:it) == arr
|
8
|
-
assert [1,1,2,3].group_by(&:it) == {1 => [1, 1], 2 => [2], 3 => [3]}
|
9
|
-
end
|
10
|
-
end
|
@@ -1,11 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/string/in_groups_of'
|
3
|
-
|
4
|
-
class InGroupsOf < MiniTest::Unit::TestCase
|
5
|
-
def test_in_groups_of
|
6
|
-
str = "aabbcc"
|
7
|
-
assert str.in_groups_of(2) == ['aa', 'bb', 'cc']
|
8
|
-
assert "".in_groups_of(2) == []
|
9
|
-
assert_raises(ArgumentError) { "".in_groups_of(0) }
|
10
|
-
end
|
11
|
-
end
|