tbpgr_utils 0.0.67 → 0.0.68

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -84,6 +84,7 @@ Or install it yourself as:
84
84
  |[TbpgrUtils Kernel#bulk_puts_eval](#kernelbulk_puts_eval) |Puts each-line-code + eval result |
85
85
  |[MetasyntacticVariable](#metasyntacticvariable) |META variable, META variable for classes |
86
86
  |[TbpgrUtils Module.alias_methods](#modulealias_methods) |create alias methods |
87
+ |[TbpgrUtils Numeric#dice_back](#numericdice_back) |return dice back number |
87
88
  |[TbpgrUtils Object#any_of?](#objectany_of) |if self match any one of items, return true |
88
89
  |[TbpgrUtils Object#boolean?](#objectboolean) |data type check for boolean |
89
90
  |[TbpgrUtils Object#guard](#objectguard) |data type check for guard |
@@ -2040,6 +2041,26 @@ end
2040
2041
 
2041
2042
  [back to list](#list)
2042
2043
 
2044
+ ### Numeric#dice_back
2045
+ each 1-6 case
2046
+
2047
+ ~~~ruby
2048
+ 1.dice_back # => return 6
2049
+ 2.dice_back # => return 5
2050
+ 3.dice_back # => return 4
2051
+ 4.dice_back # => return 3
2052
+ 5.dice_back # => return 2
2053
+ 6.dice_back # => return 1
2054
+ ~~~
2055
+
2056
+ other case
2057
+
2058
+ ~~~ruby
2059
+ 7.dice_back # => return 7
2060
+ ~~~
2061
+
2062
+ [back to list](#list)
2063
+
2043
2064
  ### Object#any_of?
2044
2065
  ~~~ruby
2045
2066
  require 'tbpgr_utils'
@@ -2529,6 +2550,7 @@ if you are Sublime Text2 user, you can use snippet for TbpgrUtils.
2529
2550
  https://github.com/tbpgr/tbpgr_utils_snippets
2530
2551
 
2531
2552
  ## History
2553
+ * version 0.0.68 : add Numeric#dice_back
2532
2554
  * version 0.0.67 : add EvalHelper#attr_accessor_init_code
2533
2555
  * version 0.0.66 : add EvalHelper#each_with_index_do_code
2534
2556
  * version 0.0.65 : add EvalHelper#each_with_index_brace_code
@@ -0,0 +1,28 @@
1
+ # encoding: utf-8
2
+
3
+ # Numeric
4
+ class Numeric
5
+ # dice number mappings
6
+ DICE = { 1 => 6, 2 => 5, 3 => 4, 4 => 3, 5 => 2, 6 => 1 }
7
+
8
+ # return dice back number
9
+ #
10
+ # ==== Examples
11
+ #
12
+ # each 1-6 case
13
+ #
14
+ # 1.dice_back # => return 6
15
+ # 2.dice_back # => return 5
16
+ # 3.dice_back # => return 4
17
+ # 4.dice_back # => return 3
18
+ # 5.dice_back # => return 2
19
+ # 6.dice_back # => return 1
20
+ #
21
+ # other case
22
+ #
23
+ # 7.dice_back # => return 7
24
+ #
25
+ def dice_back
26
+ DICE.include?(self) ? DICE[self] : self
27
+ end
28
+ end
@@ -0,0 +1,2 @@
1
+ # encoding: utf-8
2
+ require 'open_classes/numeric/dice_back'
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Tbpgr Utilities
4
4
  module TbpgrUtils
5
- VERSION = '0.0.67'
5
+ VERSION = '0.0.68'
6
6
  end
data/lib/tbpgr_utils.rb CHANGED
@@ -7,6 +7,7 @@ module TbpgrUtils
7
7
  require 'open_classes/file'
8
8
  require 'open_classes/kernel'
9
9
  require 'open_classes/module'
10
+ require 'open_classes/numeric'
10
11
  require 'open_classes/object'
11
12
  require 'open_classes/string'
12
13
  end
@@ -0,0 +1,79 @@
1
+ # encoding: utf-8
2
+ require 'spec_helper'
3
+ require 'tbpgr_utils'
4
+
5
+ describe Numeric do
6
+ context :dice_back do
7
+ cases = [
8
+ {
9
+ case_no: 1,
10
+ case_title: '1 case',
11
+ input: 1,
12
+ expected: 6,
13
+ },
14
+ {
15
+ case_no: 2,
16
+ case_title: '2 case',
17
+ input: 2,
18
+ expected: 5,
19
+ },
20
+ {
21
+ case_no: 3,
22
+ case_title: '3 case',
23
+ input: 3,
24
+ expected: 4,
25
+ },
26
+ {
27
+ case_no: 4,
28
+ case_title: '4 case',
29
+ input: 4,
30
+ expected: 3,
31
+ },
32
+ {
33
+ case_no: 5,
34
+ case_title: '5 case',
35
+ input: 5,
36
+ expected: 2,
37
+ },
38
+ {
39
+ case_no: 6,
40
+ case_title: '6 case',
41
+ input: 6,
42
+ expected: 1,
43
+ },
44
+ {
45
+ case_no: 7,
46
+ case_title: '7 case',
47
+ input: 7,
48
+ expected: 7,
49
+ },
50
+ ]
51
+
52
+ cases.each do |c|
53
+ it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do
54
+ begin
55
+ case_before c
56
+
57
+ # -- given --
58
+ # nothing
59
+
60
+ # -- when --
61
+ actual = c[:input].dice_back
62
+
63
+ # -- then --
64
+ expect(actual).to eq(c[:expected])
65
+ ensure
66
+ case_after c
67
+ end
68
+ end
69
+
70
+ def case_before(c)
71
+ # implement each case before
72
+ end
73
+
74
+ def case_after(c)
75
+ # implement each case after
76
+ end
77
+ end
78
+ end
79
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbpgr_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.67
4
+ version: 0.0.68
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-15 00:00:00.000000000 Z
12
+ date: 2014-03-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &26371188 !ruby/object:Gem::Requirement
16
+ requirement: &26039664 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 4.0.1
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *26371188
24
+ version_requirements: *26039664
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &26370900 !ruby/object:Gem::Requirement
27
+ requirement: &26039376 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.3'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *26370900
35
+ version_requirements: *26039376
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &26370672 !ruby/object:Gem::Requirement
38
+ requirement: &26039148 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *26370672
46
+ version_requirements: *26039148
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &26370348 !ruby/object:Gem::Requirement
49
+ requirement: &26038824 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 2.14.1
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *26370348
57
+ version_requirements: *26038824
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: simplecov
60
- requirement: &26370048 !ruby/object:Gem::Requirement
60
+ requirement: &26038524 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,7 +65,7 @@ dependencies:
65
65
  version: 0.8.2
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *26370048
68
+ version_requirements: *26038524
69
69
  description: Utilities
70
70
  email:
71
71
  - tbpgr@tbpgr.jp
@@ -137,6 +137,8 @@ files:
137
137
  - lib/open_classes/kernel/bulk_define_methods.rb
138
138
  - lib/open_classes/kernel/p_evals.rb
139
139
  - lib/open_classes/module.rb
140
+ - lib/open_classes/numeric.rb
141
+ - lib/open_classes/numeric/dice_back.rb
140
142
  - lib/open_classes/object.rb
141
143
  - lib/open_classes/object/any_of.rb
142
144
  - lib/open_classes/object/boolean.rb
@@ -213,6 +215,7 @@ files:
213
215
  - spec/open_classes/kernel/print_eval_spec.rb
214
216
  - spec/open_classes/kernel/puts_eval_spec.rb
215
217
  - spec/open_classes/module_spec.rb
218
+ - spec/open_classes/numeric/dice_back_spec.rb
216
219
  - spec/open_classes/object/any_of_spec.rb
217
220
  - spec/open_classes/object/boolean_spec.rb
218
221
  - spec/open_classes/object/guard_spec.rb
@@ -311,6 +314,7 @@ test_files:
311
314
  - spec/open_classes/kernel/print_eval_spec.rb
312
315
  - spec/open_classes/kernel/puts_eval_spec.rb
313
316
  - spec/open_classes/module_spec.rb
317
+ - spec/open_classes/numeric/dice_back_spec.rb
314
318
  - spec/open_classes/object/any_of_spec.rb
315
319
  - spec/open_classes/object/boolean_spec.rb
316
320
  - spec/open_classes/object/guard_spec.rb