shenanigans 1.0.10 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/Gemfile +2 -1
- 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/array.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/hash.rb +3 -3
- data/lib/shenanigans/integer/divisible_by.rb +13 -0
- data/lib/shenanigans/integer/string_length.rb +13 -0
- data/lib/shenanigans/integer.rb +2 -0
- data/lib/shenanigans/kernel/fn.rb +6 -5
- data/lib/shenanigans/kernel/prompt.rb +6 -7
- data/lib/shenanigans/kernel/require_optional.rb +7 -7
- data/lib/shenanigans/kernel/with.rb +3 -2
- data/lib/shenanigans/kernel.rb +4 -4
- data/lib/shenanigans/module/private_accessor.rb +5 -5
- data/lib/shenanigans/module.rb +1 -1
- data/lib/shenanigans/object/display.rb +5 -4
- data/lib/shenanigans/object.rb +1 -2
- data/lib/shenanigans/string/cmpi.rb +9 -0
- data/lib/shenanigans/string/in_groups_of.rb +4 -6
- data/lib/shenanigans/string.rb +2 -1
- data/lib/shenanigans.rb +7 -7
- 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/divisible_by_test.rb +16 -0
- 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/cmpi_test.rb +10 -0
- data/test/string/in_groups_of_test.rb +11 -0
- metadata +40 -62
- data/doc/Array.html +0 -518
- data/doc/Fixnum.html +0 -214
- data/doc/Hash.html +0 -415
- data/doc/Kernel.html +0 -462
- data/doc/Module.html +0 -236
- data/doc/Object.html +0 -284
- data/doc/String.html +0 -226
- data/doc/_index.html +0 -188
- data/doc/class_list.html +0 -54
- data/doc/css/common.css +0 -1
- data/doc/css/full_list.css +0 -57
- data/doc/css/style.css +0 -338
- data/doc/file.README.html +0 -162
- data/doc/file_list.html +0 -56
- data/doc/frames.html +0 -26
- data/doc/index.html +0 -162
- data/doc/js/app.js +0 -219
- data/doc/js/full_list.js +0 -178
- data/doc/js/jquery.js +0 -4
- data/doc/method_list.html +0 -149
- data/doc/top-level-namespace.html +0 -114
- data/lib/shenanigans/fixnum/string_length.rb +0 -14
- data/lib/shenanigans/fixnum.rb +0 -1
- 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_display.rb +0 -36
- data/test/string/test_in_groups_of.rb +0 -11
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
|
data/test/string/test_display.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'minitest/autorun'
|
2
|
-
require 'shenanigans/object/display'
|
3
|
-
require 'stringio'
|
4
|
-
|
5
|
-
class Display < MiniTest::Unit::TestCase
|
6
|
-
def setup
|
7
|
-
@orig_stdout = $stdout
|
8
|
-
$stdout = StringIO.new("", "r+")
|
9
|
-
end
|
10
|
-
|
11
|
-
def teardown
|
12
|
-
$stdout = @orig_stdout
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_display
|
16
|
-
str = "foo"
|
17
|
-
assert str.display == str
|
18
|
-
$stdout.rewind
|
19
|
-
assert $stdout.gets.chomp == str
|
20
|
-
end
|
21
|
-
|
22
|
-
def test_display_alias
|
23
|
-
str = "foo"
|
24
|
-
assert str.d == str
|
25
|
-
$stdout.rewind
|
26
|
-
assert $stdout.gets.chomp == str
|
27
|
-
end
|
28
|
-
|
29
|
-
def test_display_no_new_line
|
30
|
-
str = "foo"
|
31
|
-
assert str.display(false) == str
|
32
|
-
$stdout.rewind
|
33
|
-
assert $stdout.gets == str
|
34
|
-
end
|
35
|
-
|
36
|
-
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
|