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.
Files changed (80) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +2 -1
  3. data/lib/shenanigans/array/caret.rb +3 -2
  4. data/lib/shenanigans/array/random_subarray.rb +7 -5
  5. data/lib/shenanigans/array/reductions.rb +13 -10
  6. data/lib/shenanigans/array/zip_with.rb +9 -12
  7. data/lib/shenanigans/array.rb +3 -3
  8. data/lib/shenanigans/hash/extract.rb +5 -4
  9. data/lib/shenanigans/hash/has_shape_pred.rb +6 -7
  10. data/lib/shenanigans/hash/to_ostruct.rb +8 -9
  11. data/lib/shenanigans/hash.rb +3 -3
  12. data/lib/shenanigans/integer/divisible_by.rb +13 -0
  13. data/lib/shenanigans/integer/string_length.rb +13 -0
  14. data/lib/shenanigans/integer.rb +2 -0
  15. data/lib/shenanigans/kernel/fn.rb +6 -5
  16. data/lib/shenanigans/kernel/prompt.rb +6 -7
  17. data/lib/shenanigans/kernel/require_optional.rb +7 -7
  18. data/lib/shenanigans/kernel/with.rb +3 -2
  19. data/lib/shenanigans/kernel.rb +4 -4
  20. data/lib/shenanigans/module/private_accessor.rb +5 -5
  21. data/lib/shenanigans/module.rb +1 -1
  22. data/lib/shenanigans/object/display.rb +5 -4
  23. data/lib/shenanigans/object.rb +1 -2
  24. data/lib/shenanigans/string/cmpi.rb +9 -0
  25. data/lib/shenanigans/string/in_groups_of.rb +4 -6
  26. data/lib/shenanigans/string.rb +2 -1
  27. data/lib/shenanigans.rb +7 -7
  28. data/test/array/caret_test.rb +9 -0
  29. data/test/array/{test_random_subarray.rb → random_subarray_test.rb} +3 -3
  30. data/test/array/reductions_test.rb +27 -0
  31. data/test/array/zip_with_test.rb +14 -0
  32. data/test/hash/extract_test.rb +11 -0
  33. data/test/hash/{test_has_shape_pred.rb → has_shape_pred_test.rb} +3 -3
  34. data/test/hash/{test_to_ostruct.rb → to_ostruct_test.rb} +3 -3
  35. data/test/integer/divisible_by_test.rb +16 -0
  36. data/test/integer/string_length_test.rb +16 -0
  37. data/test/kernel/fn_test.rb +14 -0
  38. data/test/kernel/{test_prompt.rb → prompt_test.rb} +4 -4
  39. data/test/kernel/require_optional_test.rb +15 -0
  40. data/test/kernel/with_test.rb +12 -0
  41. data/test/module/{test_private_accessor.rb → private_accessor_test.rb} +3 -3
  42. data/test/object/{test_display.rb → display_test.rb} +4 -5
  43. data/test/string/cmpi_test.rb +10 -0
  44. data/test/string/in_groups_of_test.rb +11 -0
  45. metadata +40 -62
  46. data/doc/Array.html +0 -518
  47. data/doc/Fixnum.html +0 -214
  48. data/doc/Hash.html +0 -415
  49. data/doc/Kernel.html +0 -462
  50. data/doc/Module.html +0 -236
  51. data/doc/Object.html +0 -284
  52. data/doc/String.html +0 -226
  53. data/doc/_index.html +0 -188
  54. data/doc/class_list.html +0 -54
  55. data/doc/css/common.css +0 -1
  56. data/doc/css/full_list.css +0 -57
  57. data/doc/css/style.css +0 -338
  58. data/doc/file.README.html +0 -162
  59. data/doc/file_list.html +0 -56
  60. data/doc/frames.html +0 -26
  61. data/doc/index.html +0 -162
  62. data/doc/js/app.js +0 -219
  63. data/doc/js/full_list.js +0 -178
  64. data/doc/js/jquery.js +0 -4
  65. data/doc/method_list.html +0 -149
  66. data/doc/top-level-namespace.html +0 -114
  67. data/lib/shenanigans/fixnum/string_length.rb +0 -14
  68. data/lib/shenanigans/fixnum.rb +0 -1
  69. data/lib/shenanigans/object/it.rb +0 -9
  70. data/test/array/test_caret.rb +0 -9
  71. data/test/array/test_reductions.rb +0 -27
  72. data/test/array/test_zip_with.rb +0 -14
  73. data/test/fixnum/test_string_length.rb +0 -16
  74. data/test/hash/test_extract.rb +0 -11
  75. data/test/kernel/test_fn.rb +0 -14
  76. data/test/kernel/test_require_optional.rb +0 -17
  77. data/test/kernel/test_with.rb +0 -12
  78. data/test/object/test_it.rb +0 -10
  79. data/test/string/test_display.rb +0 -36
  80. data/test/string/test_in_groups_of.rb +0 -11
@@ -0,0 +1,15 @@
1
+ require "minitest/autorun"
2
+ require "shenanigans/kernel/require_optional"
3
+ require "stringio"
4
+
5
+ class RequireOptional < Minitest::Test
6
+ def test_require_optional
7
+ assert_nil require_optional("non_existent")
8
+ end
9
+
10
+ def test_require_optional_with_block
11
+ res = require_optional("non_existent") { 42 }
12
+
13
+ assert_equal res, 42
14
+ end
15
+ end
@@ -0,0 +1,12 @@
1
+ require "minitest/autorun"
2
+ require "shenanigans/kernel/with"
3
+
4
+ class With < Minitest::Test
5
+ def test_with
6
+ result = with([]) { |a|
7
+ a << "a"
8
+ a << "b"
9
+ }
10
+ assert result == %w[a b]
11
+ end
12
+ end
@@ -1,7 +1,7 @@
1
- require 'minitest/autorun'
2
- require 'shenanigans/module/private_accessor'
1
+ require "minitest/autorun"
2
+ require "shenanigans/module/private_accessor"
3
3
 
4
- class PrivateAccessor < MiniTest::Unit::TestCase
4
+ class PrivateAccessor < Minitest::Test
5
5
  class Foo
6
6
  private_accessor :bar, :baz
7
7
 
@@ -1,8 +1,8 @@
1
- require 'minitest/autorun'
2
- require 'shenanigans/object/display'
3
- require 'stringio'
1
+ require "minitest/autorun"
2
+ require "shenanigans/object/display"
3
+ require "stringio"
4
4
 
5
- class Display < MiniTest::Unit::TestCase
5
+ class Display < Minitest::Test
6
6
  def setup
7
7
  @orig_stdout = $stdout
8
8
  $stdout = StringIO.new("", "r+")
@@ -32,5 +32,4 @@ class Display < MiniTest::Unit::TestCase
32
32
  $stdout.rewind
33
33
  assert $stdout.gets == str
34
34
  end
35
-
36
35
  end
@@ -0,0 +1,10 @@
1
+ require "minitest/autorun"
2
+ require "shenanigans/string/cmpi"
3
+
4
+ class Cmpi < Minitest::Test
5
+ def cmpi
6
+ str = "aabbcc"
7
+ assert str.cmpi("AAbbcc")
8
+ assert_equal cmpi("foo"), false
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ require "minitest/autorun"
2
+ require "shenanigans/string/in_groups_of"
3
+
4
+ class InGroupsOf < Minitest::Test
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
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shenanigans
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.10
4
+ version: 1.0.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Kohl
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-31 00:00:00.000000000 Z
11
+ date: 2022-01-26 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A collection of extensions for various Ruby core classes.
14
14
  email: citizen428@gmail.com
@@ -19,91 +19,69 @@ files:
19
19
  - Gemfile
20
20
  - LICENSE
21
21
  - README.rdoc
22
- - doc/frames.html
23
- - doc/top-level-namespace.html
24
- - doc/file_list.html
25
- - doc/Fixnum.html
26
- - doc/Object.html
27
- - doc/Hash.html
28
- - doc/class_list.html
29
- - doc/Module.html
30
- - doc/index.html
31
- - doc/Array.html
32
- - doc/css/style.css
33
- - doc/css/common.css
34
- - doc/css/full_list.css
35
- - doc/String.html
36
- - doc/method_list.html
37
- - doc/Kernel.html
38
- - doc/js/jquery.js
39
- - doc/js/app.js
40
- - doc/js/full_list.js
41
- - doc/_index.html
42
- - doc/file.README.html
43
22
  - lib/shenanigans.rb
44
- - lib/shenanigans/fixnum/string_length.rb
45
- - lib/shenanigans/object.rb
46
- - lib/shenanigans/kernel.rb
47
- - lib/shenanigans/string.rb
48
- - lib/shenanigans/kernel/prompt.rb
49
- - lib/shenanigans/kernel/fn.rb
50
- - lib/shenanigans/kernel/with.rb
51
- - lib/shenanigans/kernel/require_optional.rb
52
23
  - lib/shenanigans/array.rb
53
- - lib/shenanigans/array/zip_with.rb
54
24
  - lib/shenanigans/array/caret.rb
55
25
  - lib/shenanigans/array/random_subarray.rb
56
26
  - lib/shenanigans/array/reductions.rb
57
- - lib/shenanigans/fixnum.rb
27
+ - lib/shenanigans/array/zip_with.rb
28
+ - lib/shenanigans/hash.rb
29
+ - lib/shenanigans/hash/extract.rb
58
30
  - lib/shenanigans/hash/has_shape_pred.rb
59
31
  - lib/shenanigans/hash/to_ostruct.rb
60
- - lib/shenanigans/hash/extract.rb
32
+ - lib/shenanigans/integer.rb
33
+ - lib/shenanigans/integer/divisible_by.rb
34
+ - lib/shenanigans/integer/string_length.rb
35
+ - lib/shenanigans/kernel.rb
36
+ - lib/shenanigans/kernel/fn.rb
37
+ - lib/shenanigans/kernel/prompt.rb
38
+ - lib/shenanigans/kernel/require_optional.rb
39
+ - lib/shenanigans/kernel/with.rb
61
40
  - lib/shenanigans/module.rb
62
41
  - lib/shenanigans/module/private_accessor.rb
63
- - lib/shenanigans/string/in_groups_of.rb
64
- - lib/shenanigans/object/it.rb
42
+ - lib/shenanigans/object.rb
65
43
  - lib/shenanigans/object/display.rb
66
- - lib/shenanigans/hash.rb
67
- - test/fixnum/test_string_length.rb
68
- - test/kernel/test_prompt.rb
69
- - test/kernel/test_with.rb
70
- - test/kernel/test_fn.rb
71
- - test/kernel/test_require_optional.rb
72
- - test/array/test_zip_with.rb
73
- - test/array/test_random_subarray.rb
74
- - test/array/test_reductions.rb
75
- - test/array/test_caret.rb
76
- - test/hash/test_extract.rb
77
- - test/hash/test_to_ostruct.rb
78
- - test/hash/test_has_shape_pred.rb
79
- - test/module/test_private_accessor.rb
80
- - test/string/test_in_groups_of.rb
81
- - test/string/test_display.rb
82
- - test/object/test_it.rb
83
- - test/object/test_display.rb
44
+ - lib/shenanigans/string.rb
45
+ - lib/shenanigans/string/cmpi.rb
46
+ - lib/shenanigans/string/in_groups_of.rb
47
+ - test/array/caret_test.rb
48
+ - test/array/random_subarray_test.rb
49
+ - test/array/reductions_test.rb
50
+ - test/array/zip_with_test.rb
51
+ - test/hash/extract_test.rb
52
+ - test/hash/has_shape_pred_test.rb
53
+ - test/hash/to_ostruct_test.rb
54
+ - test/integer/divisible_by_test.rb
55
+ - test/integer/string_length_test.rb
56
+ - test/kernel/fn_test.rb
57
+ - test/kernel/prompt_test.rb
58
+ - test/kernel/require_optional_test.rb
59
+ - test/kernel/with_test.rb
60
+ - test/module/private_accessor_test.rb
61
+ - test/object/display_test.rb
62
+ - test/string/cmpi_test.rb
63
+ - test/string/in_groups_of_test.rb
84
64
  homepage: http://rubydoc.info/gems/shenanigans/frames
85
65
  licenses:
86
66
  - MIT
87
67
  metadata: {}
88
- post_install_message:
68
+ post_install_message:
89
69
  rdoc_options: []
90
70
  require_paths:
91
71
  - lib
92
72
  required_ruby_version: !ruby/object:Gem::Requirement
93
73
  requirements:
94
- - - '>='
74
+ - - ">="
95
75
  - !ruby/object:Gem::Version
96
76
  version: '0'
97
77
  required_rubygems_version: !ruby/object:Gem::Requirement
98
78
  requirements:
99
- - - '>='
79
+ - - ">="
100
80
  - !ruby/object:Gem::Version
101
81
  version: '0'
102
82
  requirements: []
103
- rubyforge_project:
104
- rubygems_version: 2.0.3
105
- signing_key:
83
+ rubygems_version: 3.2.22
84
+ signing_key:
106
85
  specification_version: 4
107
86
  summary: Think Facets, just less useful
108
87
  test_files: []
109
- has_rdoc: