mug 0.5.3 → 0.5.4

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 (48) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mug/and-or.rb +26 -26
  3. data/lib/mug/any-and-all.rb +16 -16
  4. data/lib/mug/apply.rb +37 -37
  5. data/lib/mug/array/extend.rb +43 -43
  6. data/lib/mug/array/minus.rb +32 -32
  7. data/lib/mug/bool.rb +71 -71
  8. data/lib/mug/clamp.rb +35 -35
  9. data/lib/mug/counts.rb +27 -27
  10. data/lib/mug/fragile-method-chain.rb +42 -42
  11. data/lib/mug/hash/map.rb +75 -75
  12. data/lib/mug/hash/operations.rb +47 -47
  13. data/lib/mug/iterator/for.rb +7 -7
  14. data/lib/mug/iterator/method.rb +7 -7
  15. data/lib/mug/iterator_c.rb +14 -14
  16. data/lib/mug/loop-with.rb +30 -29
  17. data/lib/mug/matchdata/each.rb +40 -40
  18. data/lib/mug/matchdata/hash.rb +29 -29
  19. data/lib/mug/maybe.rb +33 -33
  20. data/lib/mug/negativity.rb +20 -20
  21. data/lib/mug/not.rb +6 -6
  22. data/lib/mug/rexproc.rb +6 -6
  23. data/lib/mug/self.rb +31 -31
  24. data/lib/mug/to_h.rb +2 -2
  25. data/lib/mug/top.rb +100 -100
  26. data/test/test-and-or.rb +32 -32
  27. data/test/test-any-and-all.rb +19 -19
  28. data/test/test-apply.rb +47 -47
  29. data/test/test-array-extend.rb +54 -54
  30. data/test/test-array-minus.rb +11 -11
  31. data/test/test-bool.rb +48 -48
  32. data/test/test-clamp.rb +42 -42
  33. data/test/test-counts.rb +21 -21
  34. data/test/test-fragile-method-chain.rb +56 -56
  35. data/test/test-hashmap.rb +14 -14
  36. data/test/test-hashop.rb +47 -47
  37. data/test/test-iterator-for.rb +12 -12
  38. data/test/test-loop-with.rb +117 -66
  39. data/test/test-matchdata_each.rb +50 -50
  40. data/test/test-matchdata_hash.rb +40 -40
  41. data/test/test-maybe.rb +76 -76
  42. data/test/test-negativity.rb +40 -40
  43. data/test/test-not.rb +53 -53
  44. data/test/test-rexproc.rb +6 -6
  45. data/test/test-self.rb +21 -21
  46. data/test/test-tau.rb +12 -12
  47. data/test/test-top.rb +100 -100
  48. metadata +4 -4
@@ -3,10 +3,10 @@ $VERBOSE = true
3
3
 
4
4
  require_relative '../lib/mug/rexproc'
5
5
  class Test_rexproc < Test::Unit::TestCase
6
- def test_rexproc
7
- a = %w[foo bar baz]
8
- assert_equal( %w[bar baz], a.select(&/\Ab/) )
9
- assert_equal( %w[foo], a.reject(&/\Ab/) )
10
- assert_equal( %[bar], a.find( &/\Ab/) )
11
- end
6
+ def test_rexproc
7
+ a = %w[foo bar baz]
8
+ assert_equal( %w[bar baz], a.select(&/\Ab/) )
9
+ assert_equal( %w[foo], a.reject(&/\Ab/) )
10
+ assert_equal( %[bar], a.find( &/\Ab/) )
11
+ end
12
12
  end
@@ -3,26 +3,26 @@ $VERBOSE = true
3
3
 
4
4
  require_relative '../lib/mug/self'
5
5
  class Test_self < Test::Unit::TestCase
6
- def test_self
7
- obj = Object.new
8
- assert_equal( 1, 1.self )
9
- assert_equal( obj, obj.self )
10
- assert_equal( 6, 2.self{|i| i*3 } )
11
- assert_equal( {1=>[1,1], 2=>[2,2], 3=>[3]}, [1,1,2,2,3].group_by(&:self) )
6
+ def test_self
7
+ obj = Object.new
8
+ assert_equal( 1, 1.self )
9
+ assert_equal( obj, obj.self )
10
+ assert_equal( 6, 2.self{|i| i*3 } )
11
+ assert_equal( {1=>[1,1], 2=>[2,2], 3=>[3]}, [1,1,2,2,3].group_by(&:self) )
12
12
 
13
- assert_equal( 1, 1.itself )
14
- assert_equal( obj, obj.itself )
15
- assert_equal( 6, 2.itself{|i| i*3 } )
16
- assert_equal( {1=>[1,1], 2=>[2,2], 3=>[3]}, [1,1,2,2,3].group_by(&:itself) )
17
- end
18
- def test_revapply
19
- p = proc {|*args| args }
20
- assert_equal( [1], 1.revapply(&p) )
21
- assert_equal( [1,2,3], 1.revapply(2,3,&p) )
22
- if RUBY_VERSION.to_i >= 2
23
- assert_equal( 3, 1.revapply(2,3).size )
24
- else
25
- assert_equal( [1,2,3], 1.revapply(2,3).first )
26
- end
27
- end
13
+ assert_equal( 1, 1.itself )
14
+ assert_equal( obj, obj.itself )
15
+ assert_equal( 6, 2.itself{|i| i*3 } )
16
+ assert_equal( {1=>[1,1], 2=>[2,2], 3=>[3]}, [1,1,2,2,3].group_by(&:itself) )
17
+ end
18
+ def test_revapply
19
+ p = proc {|*args| args }
20
+ assert_equal( [1], 1.revapply(&p) )
21
+ assert_equal( [1,2,3], 1.revapply(2,3,&p) )
22
+ if RUBY_VERSION.to_i >= 2
23
+ assert_equal( 3, 1.revapply(2,3).size )
24
+ else
25
+ assert_equal( [1,2,3], 1.revapply(2,3).first )
26
+ end
27
+ end
28
28
  end
@@ -5,18 +5,18 @@ require 'bigdecimal/math'
5
5
  $VERBOSE = true
6
6
  require_relative '../lib/mug/tau'
7
7
  class Test_tau < Test::Unit::TestCase
8
- def test_math_tau
9
- # 6.283185307179586..
10
- assert_equal(Math::TAU, Math::PI*2.0)
11
- end
8
+ def test_math_tau
9
+ # 6.283185307179586..
10
+ assert_equal(Math::TAU, Math::PI*2.0)
11
+ end
12
12
 
13
- include BigMath
14
- def test_TAU
15
- assert_equal(TAU(1).round(1).to_s('F'), '6.3')
16
- assert_equal(TAU(100).truncate(100).to_s('F'), '6.2831853071795864769252867665590057683943387987502116419498891846156328125724179972560696506842341359')
17
- assert_raise(ArgumentError) { TAU(0) }
18
- assert_raise(ArgumentError) { TAU(-3) }
19
- assert_raise(ArgumentError) { TAU('barf') }
20
- end
13
+ include BigMath
14
+ def test_TAU
15
+ assert_equal(TAU(1).round(1).to_s('F'), '6.3')
16
+ assert_equal(TAU(100).truncate(100).to_s('F'), '6.2831853071795864769252867665590057683943387987502116419498891846156328125724179972560696506842341359')
17
+ assert_raise(ArgumentError) { TAU(0) }
18
+ assert_raise(ArgumentError) { TAU(-3) }
19
+ assert_raise(ArgumentError) { TAU('barf') }
20
+ end
21
21
  end
22
22
 
@@ -4,113 +4,113 @@ $VERBOSE = true
4
4
  require_relative '../lib/mug/top'
5
5
  class Test_and_or < Test::Unit::TestCase
6
6
 
7
- def test_top
8
- a = [1,3,5,2,4,3]
9
- assert_equal( [5], a.top )
10
- assert_equal( [5,4,3], a.top(3) )
11
- assert_equal( [5,4,3,3,2,1], a.top(100) )
12
- end
13
- def test_bottom
14
- a = [3,1,4,3,2,5]
15
- assert_equal( [1], a.bottom )
16
- assert_equal( [1,2,3], a.bottom(3) )
17
- assert_equal( [1,2,3,3,4,5], a.bottom(100) )
18
- end
7
+ def test_top
8
+ a = [1,3,5,2,4,3]
9
+ assert_equal( [5], a.top )
10
+ assert_equal( [5,4,3], a.top(3) )
11
+ assert_equal( [5,4,3,3,2,1], a.top(100) )
12
+ end
13
+ def test_bottom
14
+ a = [3,1,4,3,2,5]
15
+ assert_equal( [1], a.bottom )
16
+ assert_equal( [1,2,3], a.bottom(3) )
17
+ assert_equal( [1,2,3,3,4,5], a.bottom(100) )
18
+ end
19
19
 
20
- def test_top__block
21
- a = [1,3,5,2,4,3]
22
- b = proc{|x,y| y<=>x }
23
- assert_equal( [1], a.top(&b) )
24
- assert_equal( [1,2,3], a.top(3,&b) )
25
- assert_equal( [1,2,3,3,4,5], a.top(100,&b) )
26
- end
27
- def test_bottom__block
28
- a = [3,1,4,3,2,5]
29
- b = proc{|x,y| y<=>x }
30
- assert_equal( [5], a.bottom(&b) )
31
- assert_equal( [5,4,3], a.bottom(3,&b) )
32
- assert_equal( [5,4,3,3,2,1], a.bottom(100,&b) )
33
- end
20
+ def test_top__block
21
+ a = [1,3,5,2,4,3]
22
+ b = proc{|x,y| y<=>x }
23
+ assert_equal( [1], a.top(&b) )
24
+ assert_equal( [1,2,3], a.top(3,&b) )
25
+ assert_equal( [1,2,3,3,4,5], a.top(100,&b) )
26
+ end
27
+ def test_bottom__block
28
+ a = [3,1,4,3,2,5]
29
+ b = proc{|x,y| y<=>x }
30
+ assert_equal( [5], a.bottom(&b) )
31
+ assert_equal( [5,4,3], a.bottom(3,&b) )
32
+ assert_equal( [5,4,3,3,2,1], a.bottom(100,&b) )
33
+ end
34
34
 
35
- def test_top_by
36
- a = [1,3,5,2,4,3]
37
- b = proc{|x| x % 3 }
38
- assert_equal( [5], a.top_by(&b) )
39
- assert_equal( [5,2,1], a.top_by(3, &b) )
40
- assert_equal( [5,2,1,4,3,3], a.top_by(100, &b) )
41
- end
42
- def test_bottom_by
43
- a = [3,1,4,3,2,5]
44
- b = proc{|x| x % 3 }
45
- assert_equal( [3], a.bottom_by(&b) )
46
- assert_equal( [3,3,1], a.bottom_by(3, &b) )
47
- assert_equal( [3,3,1,4,2,5], a.bottom_by(100, &b) )
48
- end
35
+ def test_top_by
36
+ a = [1,3,5,2,4,3]
37
+ b = proc{|x| x % 3 }
38
+ assert_equal( [5], a.top_by(&b) )
39
+ assert_equal( [5,2,1], a.top_by(3, &b) )
40
+ assert_equal( [5,2,1,4,3,3], a.top_by(100, &b) )
41
+ end
42
+ def test_bottom_by
43
+ a = [3,1,4,3,2,5]
44
+ b = proc{|x| x % 3 }
45
+ assert_equal( [3], a.bottom_by(&b) )
46
+ assert_equal( [3,3,1], a.bottom_by(3, &b) )
47
+ assert_equal( [3,3,1,4,2,5], a.bottom_by(100, &b) )
48
+ end
49
49
 
50
- def test_top_by__noblock
51
- a = [1,3,5,2,4,3]
52
- b = proc{|x| x % 3 }
53
- assert_equal( [5], a.top_by.each(&b) )
54
- assert_equal( [5,2,1], a.top_by(3).each(&b) )
55
- assert_equal( [5,2,1,4,3,3], a.top_by(100).each(&b) )
56
- end
57
- def test_bottom_by__noblock
58
- a = [3,1,4,3,2,5]
59
- b = proc{|x| x % 3 }
60
- assert_equal( [3], a.bottom_by.each(&b) )
61
- assert_equal( [3,3,1], a.bottom_by(3).each(&b) )
62
- assert_equal( [3,3,1,4,2,5], a.bottom_by(100).each(&b) )
63
- end
50
+ def test_top_by__noblock
51
+ a = [1,3,5,2,4,3]
52
+ b = proc{|x| x % 3 }
53
+ assert_equal( [5], a.top_by.each(&b) )
54
+ assert_equal( [5,2,1], a.top_by(3).each(&b) )
55
+ assert_equal( [5,2,1,4,3,3], a.top_by(100).each(&b) )
56
+ end
57
+ def test_bottom_by__noblock
58
+ a = [3,1,4,3,2,5]
59
+ b = proc{|x| x % 3 }
60
+ assert_equal( [3], a.bottom_by.each(&b) )
61
+ assert_equal( [3,3,1], a.bottom_by(3).each(&b) )
62
+ assert_equal( [3,3,1,4,2,5], a.bottom_by(100).each(&b) )
63
+ end
64
64
 
65
- def test_topBANG
66
- a = [1,3,5,2,4,3]
67
- a.top!(3)
68
- assert_equal( [5,4,3], a )
69
- end
70
- def test_bottomBANG
71
- a = [3,1,4,3,2,5]
72
- a.bottom!(3)
73
- assert_equal( [1,2,3], a )
74
- end
65
+ def test_topBANG
66
+ a = [1,3,5,2,4,3]
67
+ a.top!(3)
68
+ assert_equal( [5,4,3], a )
69
+ end
70
+ def test_bottomBANG
71
+ a = [3,1,4,3,2,5]
72
+ a.bottom!(3)
73
+ assert_equal( [1,2,3], a )
74
+ end
75
75
 
76
- def test_topBANG__block
77
- a = [1,3,5,2,4,3]
78
- b = proc{|x,y| y<=>x }
79
- a.top!(3, &b)
80
- assert_equal( [1,2,3], a )
81
- end
82
- def test_bottomBANG__block
83
- a = [3,1,4,3,2,5]
84
- b = proc{|x,y| y<=>x }
85
- a.bottom!(3, &b)
86
- assert_equal( [5,4,3], a )
87
- end
76
+ def test_topBANG__block
77
+ a = [1,3,5,2,4,3]
78
+ b = proc{|x,y| y<=>x }
79
+ a.top!(3, &b)
80
+ assert_equal( [1,2,3], a )
81
+ end
82
+ def test_bottomBANG__block
83
+ a = [3,1,4,3,2,5]
84
+ b = proc{|x,y| y<=>x }
85
+ a.bottom!(3, &b)
86
+ assert_equal( [5,4,3], a )
87
+ end
88
88
 
89
- def test_top_byBANG
90
- a = [1,3,5,2,4,3]
91
- b = proc{|x| x % 3 }
92
- a.top_by!(3, &b)
93
- assert_equal( [5,2,1], a )
94
- end
95
- def test_bottom_byBANG
96
- a = [3,1,4,3,2,5]
97
- b = proc{|x| x % 3 }
98
- a.bottom_by!(3, &b)
99
- assert_equal( [3,3,1], a )
100
- end
89
+ def test_top_byBANG
90
+ a = [1,3,5,2,4,3]
91
+ b = proc{|x| x % 3 }
92
+ a.top_by!(3, &b)
93
+ assert_equal( [5,2,1], a )
94
+ end
95
+ def test_bottom_byBANG
96
+ a = [3,1,4,3,2,5]
97
+ b = proc{|x| x % 3 }
98
+ a.bottom_by!(3, &b)
99
+ assert_equal( [3,3,1], a )
100
+ end
101
101
 
102
- def test_top_byBANG__noblock
103
- a = [1,3,5,2,4,3]
104
- b = proc{|x| x % 3 }
105
- a.top_by!(3).each(&b)
106
- assert_equal( [5,2,1], a )
107
- end
108
- def test_bottom_byBANG__noblock
109
- a = [3,1,4,3,2,5]
110
- b = proc{|x| x % 3 }
111
- a.bottom_by!(3).each(&b)
112
- assert_equal( [3,3,1], a )
113
- end
102
+ def test_top_byBANG__noblock
103
+ a = [1,3,5,2,4,3]
104
+ b = proc{|x| x % 3 }
105
+ a.top_by!(3).each(&b)
106
+ assert_equal( [5,2,1], a )
107
+ end
108
+ def test_bottom_byBANG__noblock
109
+ a = [3,1,4,3,2,5]
110
+ b = proc{|x| x % 3 }
111
+ a.bottom_by!(3).each(&b)
112
+ assert_equal( [3,3,1], a )
113
+ end
114
114
 
115
115
  end
116
116
 
metadata CHANGED
@@ -1,21 +1,21 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mug
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew Kerwin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-09-21 00:00:00.000000000 Z
11
+ date: 2016-11-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |
14
14
  == MUG: Matty's Ultimate Gem
15
15
 
16
16
  A collection of wonders to astound the mind!!
17
17
 
18
- See the documentation at https://github.com/phluid61/mug
18
+ See the documentation at http://phluid61.github.io/mug/
19
19
  email:
20
20
  - matthew@kerwin.net.au
21
21
  executables: []
@@ -103,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
103
  version: '0'
104
104
  requirements: []
105
105
  rubyforge_project:
106
- rubygems_version: 2.6.2
106
+ rubygems_version: 2.6.7
107
107
  signing_key:
108
108
  specification_version: 4
109
109
  summary: 'MUG: Matty''s Ultimate Gem'