darthjee-core_ext 1.7.3 → 1.7.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.
- checksums.yaml +4 -4
- data/.circleci/config.yml +19 -8
- data/.gitignore +1 -0
- data/.rubocop.yml +7 -0
- data/.rubocop_todo.yml +7 -3
- data/Dockerfile +9 -0
- data/README.md +5 -6
- data/Rakefile +2 -0
- data/config/yardstick.rb +13 -0
- data/config/yardstick.yml +35 -0
- data/core_ext.gemspec +9 -7
- data/docker-compose.yml +3 -6
- data/lib/darthjee/core_ext/array.rb +2 -2
- data/lib/darthjee/core_ext/class.rb +90 -4
- data/lib/darthjee/core_ext/enumerable.rb +5 -1
- data/lib/darthjee/core_ext/hash.rb +30 -0
- data/lib/darthjee/core_ext/hash/cameliazable.rb +91 -0
- data/lib/darthjee/core_ext/hash/chain_fetcher.rb +10 -0
- data/lib/darthjee/core_ext/hash/key_changeable.rb +85 -53
- data/lib/darthjee/core_ext/hash/key_changer.rb +41 -31
- data/lib/darthjee/core_ext/hash/value_changer.rb +128 -11
- data/lib/darthjee/core_ext/version.rb +1 -1
- data/spec/integration/yard/{array → darthjee/core_ext/array}/hash_builder_spec.rb +3 -3
- data/spec/integration/yard/{array_spec.rb → darthjee/core_ext/array_spec.rb} +0 -0
- data/spec/integration/yard/darthjee/core_ext/class/default_value_spec.rb +143 -0
- data/spec/integration/yard/{date → darthjee/core_ext/date}/days_between_spec.rb +6 -6
- data/spec/integration/yard/{enumerable_spec.rb → darthjee/core_ext/enumerable_spec.rb} +0 -0
- data/spec/integration/yard/darthjee/core_ext/hash/cameliazable_spec.rb +34 -0
- data/spec/integration/yard/darthjee/core_ext/hash/chain_fetcher_spec.rb +51 -0
- data/spec/integration/yard/darthjee/core_ext/hash/key_changeable_spec.rb +48 -0
- data/spec/integration/yard/{hash → darthjee/core_ext/hash}/transformable_spec.rb +7 -3
- data/spec/integration/yard/darthjee/core_ext/hash/value_changer_spec.rb +66 -0
- data/spec/integration/yard/darthjee/core_ext/hash_spec.rb +42 -0
- data/spec/lib/array_spec.rb +27 -17
- data/spec/lib/class_spec.rb +108 -7
- data/spec/lib/darthjee/core_ext/hash/deep_hash_constructor_spec.rb +1 -1
- data/spec/lib/darthjee/core_ext/hash/key_changer_spec.rb +8 -8
- data/spec/lib/darthjee/core_ext/hash/keys_sorter_spec.rb +1 -0
- data/spec/lib/darthjee/core_ext/hash/to_hash_mapper_spec.rb +1 -0
- data/spec/lib/darthjee/core_ext/hash/value_changer_spec.rb +246 -0
- data/spec/lib/date_spec.rb +5 -4
- data/spec/lib/hash_spec.rb +45 -32
- data/spec/lib/math_spec.rb +1 -0
- data/spec/lib/numeric_spec.rb +39 -17
- data/spec/lib/object_spec.rb +7 -7
- data/spec/lib/symbol_spec.rb +2 -2
- data/spec/lib/time_spec.rb +5 -4
- data/spec/support/models/default_reader_model.rb +8 -0
- data/spec/support/models/default_value_model.rb +2 -0
- data/spec/support/models/dummy_iterator.rb +15 -0
- data/spec/support/models/dummy_transformer.rb +15 -0
- data/spec/support/shared_examples/array/array_random.rb +2 -1
- data/spec/support/shared_examples/clean.rb +20 -20
- data/spec/support/shared_examples/date.rb +18 -13
- data/spec/support/shared_examples/hash/chain_fetch.rb +4 -3
- data/spec/support/shared_examples/hash/chain_hash_keys_changer.rb +14 -7
- data/spec/support/shared_examples/hash/hash_keys_changer.rb +10 -4
- data/spec/support/shared_examples/hash/hash_transpose.rb +1 -1
- data/spec/support/shared_examples/hash/keys_appender.rb +14 -4
- data/spec/support/shared_examples/hash/keys_camelizer.rb +7 -7
- data/spec/support/shared_examples/hash/keys_sorter.rb +3 -3
- data/spec/support/shared_examples/hash/keys_underscorer.rb +2 -2
- data/spec/support/shared_examples/hash/map_to_hash.rb +14 -12
- data/spec/support/shared_examples/hash/remap.rb +4 -4
- data/spec/support/shared_examples/hash/value_changer.rb +40 -33
- metadata +70 -20
- data/spec/integration/yard/class/default_value_spec.rb +0 -58
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
shared_examples 'a class with camlize_keys method' do
|
4
|
-
describe
|
4
|
+
describe '#lower_camelize_keys' do
|
5
5
|
let(:expected) { { inputKey: 'value' } }
|
6
6
|
|
7
7
|
context 'with underscore keys' do
|
@@ -72,7 +72,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
|
-
describe
|
75
|
+
describe '#lower_camelize_keys!' do
|
76
76
|
let(:expected) { { inputKey: 'value' } }
|
77
77
|
|
78
78
|
context 'with underscore keys' do
|
@@ -97,7 +97,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
97
97
|
|
98
98
|
context 'with string keys' do
|
99
99
|
let(:expected) { { 'inputKey' => 'value' } }
|
100
|
-
let(:hash)
|
100
|
+
let(:hash) { { 'InputKey' => 'value' } }
|
101
101
|
|
102
102
|
it 'converts the keys to lower camel case' do
|
103
103
|
expect(hash.lower_camelize_keys).to eq(expected)
|
@@ -143,7 +143,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
143
143
|
end
|
144
144
|
end
|
145
145
|
|
146
|
-
describe
|
146
|
+
describe '#camelize_keys' do
|
147
147
|
let(:expected) { { InputKey: 'value' } }
|
148
148
|
|
149
149
|
context 'with underscore keys' do
|
@@ -168,7 +168,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
168
168
|
|
169
169
|
context 'with string keys' do
|
170
170
|
let(:expected) { { 'InputKey' => 'value' } }
|
171
|
-
let(:hash)
|
171
|
+
let(:hash) { { 'inputKey' => 'value' } }
|
172
172
|
|
173
173
|
it 'converts the keys to lower camel case' do
|
174
174
|
expect(hash.camelize_keys).to eq(expected)
|
@@ -214,7 +214,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
214
214
|
end
|
215
215
|
end
|
216
216
|
|
217
|
-
describe
|
217
|
+
describe '#camelize_keys!' do
|
218
218
|
let(:expected) { { InputKey: 'value' } }
|
219
219
|
|
220
220
|
context 'with underscore keys' do
|
@@ -239,7 +239,7 @@ shared_examples 'a class with camlize_keys method' do
|
|
239
239
|
|
240
240
|
context 'with string keys' do
|
241
241
|
let(:expected) { { 'InputKey' => 'value' } }
|
242
|
-
let(:hash)
|
242
|
+
let(:hash) { { 'inputKey' => 'value' } }
|
243
243
|
|
244
244
|
it 'converts the keys to lower camel case' do
|
245
245
|
expect(hash.camelize_keys!).to eq(expected)
|
@@ -23,13 +23,13 @@ shared_examples 'a class with a keys sort method' do
|
|
23
23
|
context 'when there is a nested hash' do
|
24
24
|
let(:hash) { { b: 1, a: { d: 3, c: 4 } } }
|
25
25
|
|
26
|
-
context '
|
26
|
+
context 'when no option is given' do
|
27
27
|
it 'sorts keys recursively' do
|
28
28
|
expect(result).to eq(a: { c: 4, d: 3 }, b: 1)
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
|
-
context '
|
32
|
+
context 'when recursive option is given' do
|
33
33
|
let(:options) { { recursive: true } }
|
34
34
|
|
35
35
|
it 'sorts keys recursively when argumen is passed' do
|
@@ -37,7 +37,7 @@ shared_examples 'a class with a keys sort method' do
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
-
context '
|
40
|
+
context 'when no recursive option is given' do
|
41
41
|
let(:options) { { recursive: false } }
|
42
42
|
|
43
43
|
it 'does not sorts keys recursively when argumen is passed' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
shared_examples 'a class with underscore_keys method basic' do |method|
|
4
|
-
describe
|
4
|
+
describe '#underscore_keys' do
|
5
5
|
let(:expected) { { input_key: 'value' } }
|
6
6
|
|
7
7
|
context 'with camel case keys' do
|
@@ -14,7 +14,7 @@ shared_examples 'a class with underscore_keys method basic' do |method|
|
|
14
14
|
|
15
15
|
context 'with string keys' do
|
16
16
|
let(:expected) { { 'input_key' => 'value' } }
|
17
|
-
let(:hash)
|
17
|
+
let(:hash) { { 'InputKey' => 'value' } }
|
18
18
|
|
19
19
|
it 'converts the keys to snake case' do
|
20
20
|
expect(hash.send(method)).to eq(expected)
|
@@ -2,36 +2,38 @@
|
|
2
2
|
|
3
3
|
shared_examples 'an array with map_to_hash method' do
|
4
4
|
describe '#map_to_hash' do
|
5
|
-
|
5
|
+
subject(:hash) { %w[word1 wooord2] }
|
6
|
+
|
6
7
|
let(:mapping_block) { proc { |word| word.length } }
|
7
|
-
let(:mapped)
|
8
|
-
let(:expected)
|
8
|
+
let(:mapped) { hash.map_to_hash(&mapping_block) }
|
9
|
+
let(:expected) { { 'word1' => 5, 'wooord2' => 7 } }
|
9
10
|
|
10
11
|
it { expect(mapped).to be_a(Hash) }
|
11
12
|
|
12
13
|
it 'has the original array as keys' do
|
13
|
-
expect(mapped.keys).to eq(
|
14
|
+
expect(mapped.keys).to eq(hash)
|
14
15
|
end
|
15
16
|
|
16
17
|
it 'has the mapped values as values' do
|
17
|
-
expect(mapped.values).to eq(
|
18
|
+
expect(mapped.values).to eq(hash.map(&mapping_block))
|
18
19
|
end
|
19
20
|
|
20
21
|
it 'correctly map keys to value' do
|
21
22
|
expect(mapped).to eq(expected)
|
22
23
|
end
|
23
24
|
|
24
|
-
context '
|
25
|
-
|
26
|
-
|
25
|
+
context 'when hash is an array' do
|
26
|
+
subject(:hash) { [%w[w1], %w[w2 w3]] }
|
27
|
+
|
28
|
+
let(:mapped) { hash.map_to_hash(&mapping_block) }
|
27
29
|
let(:expected) { { %w[w1] => 1, %w[w2 w3] => 2 } }
|
28
30
|
|
29
31
|
it 'has the original array as keys' do
|
30
|
-
expect(mapped.keys).to eq(
|
32
|
+
expect(mapped.keys).to eq(hash)
|
31
33
|
end
|
32
34
|
|
33
35
|
it 'has the mapped values as values' do
|
34
|
-
expect(mapped.values).to eq(
|
36
|
+
expect(mapped.values).to eq(hash.map(&mapping_block))
|
35
37
|
end
|
36
38
|
|
37
39
|
it 'correctly map keys to value' do
|
@@ -45,7 +47,7 @@ shared_examples 'a hash with map_to_hash method' do
|
|
45
47
|
describe '#map_to_hash' do
|
46
48
|
let(:hash) { { a: 1, b: 2 } }
|
47
49
|
let(:mapping_block) { proc { |k, v| "#{k}_#{v}" } }
|
48
|
-
let(:expected)
|
50
|
+
let(:expected) { { a: 'a_1', b: 'b_2' } }
|
49
51
|
|
50
52
|
it { expect(mapped).to be_a(Hash) }
|
51
53
|
|
@@ -68,7 +70,7 @@ shared_examples 'a hash with map_to_hash method' do
|
|
68
70
|
context 'when hash uses arrays for keys' do
|
69
71
|
let(:hash) { { %i[a b] => 1, %i[c d] => 2 } }
|
70
72
|
let(:mapping_block) { proc { |k, v| "#{k.join('_')}_#{v}" } }
|
71
|
-
let(:expected)
|
73
|
+
let(:expected) { { %i[a b] => 'a_b_1', %i[c d] => 'c_d_2' } }
|
72
74
|
|
73
75
|
it 'has the original keys as keys' do
|
74
76
|
expect(mapped.keys).to eq(hash.keys)
|
@@ -21,8 +21,8 @@ shared_examples 'a class with remap method' do
|
|
21
21
|
end
|
22
22
|
|
23
23
|
shared_examples 'a method that remaps the keys' do |method|
|
24
|
-
let(:hash)
|
25
|
-
let(:remap)
|
24
|
+
let(:hash) { { a: 1, b: 2 } }
|
25
|
+
let(:remap) { { a: :e } }
|
26
26
|
let(:result) { subject.public_send(method, remap) }
|
27
27
|
|
28
28
|
context 'when remap and hash keys match' do
|
@@ -80,8 +80,8 @@ shared_examples 'a method that remaps the keys' do |method|
|
|
80
80
|
expect(result).to eq('a' => 1, b: 2)
|
81
81
|
end
|
82
82
|
|
83
|
-
context '
|
84
|
-
let(:hash)
|
83
|
+
context 'when the original key is an string' do
|
84
|
+
let(:hash) { { 'a' => 1, 'b' => 2 } }
|
85
85
|
let(:remap) { { 'a' => :a } }
|
86
86
|
|
87
87
|
it 'does not remap the keys' do
|
@@ -1,58 +1,61 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
shared_examples 'a class with change_values method' do
|
4
|
-
|
4
|
+
subject(:hash) { { a: 1, b: 2, c: { d: 3, e: 4 } } }
|
5
|
+
|
5
6
|
let(:inner_hash) { subject[:c] }
|
6
7
|
|
7
|
-
describe
|
8
|
+
describe '#change_values' do
|
8
9
|
it_behaves_like 'a method that change the hash values', :change_values
|
9
10
|
|
10
11
|
it 'does not change original hash' do
|
11
12
|
expect do
|
12
|
-
|
13
|
-
end.not_to(change {
|
13
|
+
hash.change_values { |value| value + 1 }
|
14
|
+
end.not_to(change { hash })
|
14
15
|
end
|
15
16
|
|
16
|
-
it 'does not change original hash' do
|
17
|
+
it 'does not change original inner hash' do
|
17
18
|
expect do
|
18
|
-
|
19
|
+
hash.change_values { |value| value + 1 }
|
19
20
|
end.not_to(change { inner_hash })
|
20
21
|
end
|
21
22
|
|
22
23
|
context 'when using an array' do
|
23
|
-
|
24
|
+
subject(:hash) { { a: [{ b: 1 }] } }
|
25
|
+
|
24
26
|
let(:inner_array) { subject[:a] }
|
25
27
|
|
26
28
|
it 'does not change original hash' do
|
27
29
|
expect do
|
28
|
-
|
30
|
+
hash.change_values { |value| value + 1 }
|
29
31
|
end.not_to(change { inner_array })
|
30
32
|
end
|
31
33
|
end
|
32
34
|
end
|
33
35
|
|
34
|
-
describe
|
36
|
+
describe '#change_values!' do
|
35
37
|
it_behaves_like 'a method that change the hash values', :change_values!
|
36
38
|
|
37
39
|
it 'changes original hash' do
|
38
40
|
expect do
|
39
|
-
|
40
|
-
end.to(change {
|
41
|
+
hash.change_values! { |value| value + 1 }
|
42
|
+
end.to(change { hash })
|
41
43
|
end
|
42
44
|
|
43
|
-
it 'changes original hash' do
|
45
|
+
it 'changes original inner hash' do
|
44
46
|
expect do
|
45
|
-
|
47
|
+
hash.change_values! { |value| value + 1 }
|
46
48
|
end.to(change { inner_hash })
|
47
49
|
end
|
48
50
|
|
49
51
|
context 'when using an array' do
|
50
|
-
|
52
|
+
subject(:hash) { { a: [{ b: 1 }] } }
|
53
|
+
|
51
54
|
let(:inner_array) { subject[:a] }
|
52
55
|
|
53
56
|
it 'changes original hash' do
|
54
57
|
expect do
|
55
|
-
|
58
|
+
hash.change_values! { |value| value + 1 }
|
56
59
|
end.to(change { inner_array })
|
57
60
|
end
|
58
61
|
end
|
@@ -62,13 +65,13 @@ end
|
|
62
65
|
shared_examples 'a method that change the hash values' do |method|
|
63
66
|
context 'when using deeply nested hashes' do
|
64
67
|
it 'updates values of hash' do
|
65
|
-
result =
|
68
|
+
result = hash.public_send(method) { |value| value + 1 }
|
66
69
|
expected = { a: 2, b: 3, c: { d: 4, e: 5 } }
|
67
70
|
expect(result).to eq(expected)
|
68
71
|
end
|
69
72
|
|
70
73
|
it 'works recursively when parameter is passed' do
|
71
|
-
result =
|
74
|
+
result = hash.public_send(method, recursive: true) do |value|
|
72
75
|
value + 1
|
73
76
|
end
|
74
77
|
expected = { a: 2, b: 3, c: { d: 4, e: 5 } }
|
@@ -76,7 +79,7 @@ shared_examples 'a method that change the hash values' do |method|
|
|
76
79
|
end
|
77
80
|
|
78
81
|
it 'does not work recursively when parameter is passed as false' do
|
79
|
-
result =
|
82
|
+
result = hash.public_send(method, recursive: false) do |value|
|
80
83
|
value + 1
|
81
84
|
end
|
82
85
|
expected = { a: 2, b: 3, c: { d: 3, e: 4 } }
|
@@ -84,7 +87,7 @@ shared_examples 'a method that change the hash values' do |method|
|
|
84
87
|
end
|
85
88
|
|
86
89
|
it 'does not ignore hash when option is passed' do
|
87
|
-
result =
|
90
|
+
result = hash.public_send(method, skip_inner: false) do |value|
|
88
91
|
value.is_a?(Hash) ? 10 + value.size : value + 1
|
89
92
|
end
|
90
93
|
expected = { a: 2, b: 3, c: 12 }
|
@@ -92,7 +95,7 @@ shared_examples 'a method that change the hash values' do |method|
|
|
92
95
|
end
|
93
96
|
|
94
97
|
it 'ignore hash and work recursively when option is passed' do
|
95
|
-
result =
|
98
|
+
result = hash.public_send(method, skip_inner: true) do |value|
|
96
99
|
value.is_a?(Hash) ? 10 + value.size : value + 1
|
97
100
|
end
|
98
101
|
expect(result).to eq(a: 2, b: 3, c: { d: 4, e: 5 })
|
@@ -100,7 +103,7 @@ shared_examples 'a method that change the hash values' do |method|
|
|
100
103
|
|
101
104
|
it 'ignore hash and does not work recursively when option is passed' do
|
102
105
|
options = { skip_inner: false, recursive: false }
|
103
|
-
result =
|
106
|
+
result = hash.public_send(method, options) do |value|
|
104
107
|
value.is_a?(Hash) ? value : value + 1
|
105
108
|
end
|
106
109
|
expect(result).to eq(a: 2, b: 3, c: { d: 3, e: 4 })
|
@@ -108,30 +111,30 @@ shared_examples 'a method that change the hash values' do |method|
|
|
108
111
|
end
|
109
112
|
|
110
113
|
context 'when using deeply nested arrays' do
|
111
|
-
|
114
|
+
subject(:hash) { { a: 1, b: 2, c: [{ d: 3 }, { e: { f: 4 } }, 5] } }
|
112
115
|
|
113
116
|
it 'goes recursivly true arrays' do
|
114
|
-
result =
|
117
|
+
result = hash.public_send(method) { |value| value + 1 }
|
115
118
|
|
116
119
|
expect(result).to eq(a: 2, b: 3, c: [{ d: 4 }, { e: { f: 5 } }, 6])
|
117
120
|
end
|
118
121
|
|
119
122
|
it 'does not work recursively when parameter is passed as false' do
|
120
|
-
result =
|
123
|
+
result = hash.public_send(method, recursive: false) do |value|
|
121
124
|
value + 1
|
122
125
|
end
|
123
126
|
expect(result).to eq(a: 2, b: 3, c: [{ d: 3 }, { e: { f: 4 } }, 5])
|
124
127
|
end
|
125
128
|
|
126
129
|
it 'does not ignore array when option is passed' do
|
127
|
-
result =
|
130
|
+
result = hash.public_send(method, skip_inner: false) do |value|
|
128
131
|
value.is_a?(Array) ? 10 + value.size : value + 1
|
129
132
|
end
|
130
133
|
expect(result).to eq(a: 2, b: 3, c: 13)
|
131
134
|
end
|
132
135
|
|
133
136
|
it 'ignores array when option is passed' do
|
134
|
-
result =
|
137
|
+
result = hash.public_send(method, skip_inner: true) do |value|
|
135
138
|
value.is_a?(Array) ? 10 + value.size : value + 1
|
136
139
|
end
|
137
140
|
expect(result).to eq(a: 2, b: 3, c: [{ d: 4 }, { e: { f: 5 } }, 6])
|
@@ -139,7 +142,7 @@ shared_examples 'a method that change the hash values' do |method|
|
|
139
142
|
|
140
143
|
it 'ignore hash and does not work recursively when option is passed' do
|
141
144
|
options = { skip_inner: false, recursive: false }
|
142
|
-
result =
|
145
|
+
result = hash.public_send(method, options) do |value|
|
143
146
|
value.is_a?(Array) ? value : value + 1
|
144
147
|
end
|
145
148
|
expect(result).to eq(a: 2, b: 3, c: [{ d: 3 }, { e: { f: 4 } }, 5])
|
@@ -147,8 +150,9 @@ shared_examples 'a method that change the hash values' do |method|
|
|
147
150
|
end
|
148
151
|
|
149
152
|
context 'when using a nested extra class' do
|
150
|
-
|
151
|
-
|
153
|
+
subject(:hash) { { a: 1, b: 2, c: Hash::ValueChanger::Dummy.new(3) } }
|
154
|
+
|
155
|
+
let(:result) { hash.public_send(method) { |value| value + 1 } }
|
152
156
|
let(:expected) { { a: 2, b: 3, c: 4 } }
|
153
157
|
|
154
158
|
it 'goes perform the mapping with the extra class' do
|
@@ -156,7 +160,8 @@ shared_examples 'a method that change the hash values' do |method|
|
|
156
160
|
end
|
157
161
|
|
158
162
|
context 'when class is an interactor' do
|
159
|
-
subject { { a: 1, b: 2, c: object } }
|
163
|
+
subject(:hash) { { a: 1, b: 2, c: object } }
|
164
|
+
|
160
165
|
let(:expected) { { a: 2, b: 3, c: [{ d: 4 }, { e: { f: 5 } }] } }
|
161
166
|
let(:object) do
|
162
167
|
Hash::ValueChanger::DummyIteractor.new({ d: 3 }, e: { f: 4 })
|
@@ -168,11 +173,13 @@ shared_examples 'a method that change the hash values' do |method|
|
|
168
173
|
end
|
169
174
|
|
170
175
|
context 'when using mapping inner array with inner objecth' do
|
176
|
+
subject(:hash) { { a: 1, b: array } }
|
177
|
+
|
171
178
|
let(:object) { Hash::ValueChanger::Dummy.new(2) }
|
172
|
-
let(:array)
|
173
|
-
|
179
|
+
let(:array) { Hash::ValueChanger::DummyIteractor.new(object) }
|
180
|
+
|
174
181
|
let(:result) do
|
175
|
-
|
182
|
+
hash.public_send(method, skip_inner: false) do |value|
|
176
183
|
case value
|
177
184
|
when Numeric
|
178
185
|
value + 10
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: darthjee-core_ext
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Darthjee
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-03-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -28,16 +28,16 @@ dependencies:
|
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 1.17.x
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 1.17.x
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: pry-nav
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,6 +94,20 @@ dependencies:
|
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 0.58.1
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rubocop-rspec
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.30.0
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.30.0
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: simplecov
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -114,14 +128,28 @@ dependencies:
|
|
114
128
|
requirements:
|
115
129
|
- - ">="
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
131
|
+
version: 0.9.18
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.9.18
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: yardstick
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 0.9.9
|
118
146
|
type: :development
|
119
147
|
prerelease: false
|
120
148
|
version_requirements: !ruby/object:Gem::Requirement
|
121
149
|
requirements:
|
122
150
|
- - ">="
|
123
151
|
- !ruby/object:Gem::Version
|
124
|
-
version:
|
152
|
+
version: 0.9.9
|
125
153
|
description: Extension of basic classes with usefull methods
|
126
154
|
email:
|
127
155
|
- darthjee@gmail.com
|
@@ -136,6 +164,7 @@ files:
|
|
136
164
|
- ".rubocop_todo.yml"
|
137
165
|
- ARRAY_README.md
|
138
166
|
- DATE_README.md
|
167
|
+
- Dockerfile
|
139
168
|
- ENUMERABLE_README.md
|
140
169
|
- Gemfile
|
141
170
|
- HASH_README.md
|
@@ -145,6 +174,8 @@ files:
|
|
145
174
|
- README.md
|
146
175
|
- Rakefile
|
147
176
|
- SYMBOL_README.md
|
177
|
+
- config/yardstick.rb
|
178
|
+
- config/yardstick.yml
|
148
179
|
- core_ext.gemspec
|
149
180
|
- docker-compose.yml
|
150
181
|
- lib/darthjee.rb
|
@@ -155,6 +186,7 @@ files:
|
|
155
186
|
- lib/darthjee/core_ext/date.rb
|
156
187
|
- lib/darthjee/core_ext/enumerable.rb
|
157
188
|
- lib/darthjee/core_ext/hash.rb
|
189
|
+
- lib/darthjee/core_ext/hash/cameliazable.rb
|
158
190
|
- lib/darthjee/core_ext/hash/chain_fetcher.rb
|
159
191
|
- lib/darthjee/core_ext/hash/deep_hash_constructor.rb
|
160
192
|
- lib/darthjee/core_ext/hash/key_changeable.rb
|
@@ -172,12 +204,17 @@ files:
|
|
172
204
|
- lib/darthjee/core_ext/time.rb
|
173
205
|
- lib/darthjee/core_ext/version.rb
|
174
206
|
- mech.jpg
|
175
|
-
- spec/integration/yard/array/hash_builder_spec.rb
|
176
|
-
- spec/integration/yard/array_spec.rb
|
177
|
-
- spec/integration/yard/class/default_value_spec.rb
|
178
|
-
- spec/integration/yard/date/days_between_spec.rb
|
179
|
-
- spec/integration/yard/enumerable_spec.rb
|
180
|
-
- spec/integration/yard/hash/
|
207
|
+
- spec/integration/yard/darthjee/core_ext/array/hash_builder_spec.rb
|
208
|
+
- spec/integration/yard/darthjee/core_ext/array_spec.rb
|
209
|
+
- spec/integration/yard/darthjee/core_ext/class/default_value_spec.rb
|
210
|
+
- spec/integration/yard/darthjee/core_ext/date/days_between_spec.rb
|
211
|
+
- spec/integration/yard/darthjee/core_ext/enumerable_spec.rb
|
212
|
+
- spec/integration/yard/darthjee/core_ext/hash/cameliazable_spec.rb
|
213
|
+
- spec/integration/yard/darthjee/core_ext/hash/chain_fetcher_spec.rb
|
214
|
+
- spec/integration/yard/darthjee/core_ext/hash/key_changeable_spec.rb
|
215
|
+
- spec/integration/yard/darthjee/core_ext/hash/transformable_spec.rb
|
216
|
+
- spec/integration/yard/darthjee/core_ext/hash/value_changer_spec.rb
|
217
|
+
- spec/integration/yard/darthjee/core_ext/hash_spec.rb
|
181
218
|
- spec/lib/array_spec.rb
|
182
219
|
- spec/lib/class_spec.rb
|
183
220
|
- spec/lib/darthjee/core_ext/hash/chain_fetcher_spec.rb
|
@@ -186,6 +223,7 @@ files:
|
|
186
223
|
- spec/lib/darthjee/core_ext/hash/keys_sorter_spec.rb
|
187
224
|
- spec/lib/darthjee/core_ext/hash/squasher_spec.rb
|
188
225
|
- spec/lib/darthjee/core_ext/hash/to_hash_mapper_spec.rb
|
226
|
+
- spec/lib/darthjee/core_ext/hash/value_changer_spec.rb
|
189
227
|
- spec/lib/date_spec.rb
|
190
228
|
- spec/lib/enumerable_spec.rb
|
191
229
|
- spec/lib/hash_spec.rb
|
@@ -195,7 +233,10 @@ files:
|
|
195
233
|
- spec/lib/symbol_spec.rb
|
196
234
|
- spec/lib/time_spec.rb
|
197
235
|
- spec/spec_helper.rb
|
236
|
+
- spec/support/models/default_reader_model.rb
|
198
237
|
- spec/support/models/default_value_model.rb
|
238
|
+
- spec/support/models/dummy_iterator.rb
|
239
|
+
- spec/support/models/dummy_transformer.rb
|
199
240
|
- spec/support/models/hash/value_changer/dummy.rb
|
200
241
|
- spec/support/models/hash/value_changer/dummy_iteractor.rb
|
201
242
|
- spec/support/shared_examples/array/array_random.rb
|
@@ -238,12 +279,17 @@ signing_key:
|
|
238
279
|
specification_version: 4
|
239
280
|
summary: Core Extensions
|
240
281
|
test_files:
|
241
|
-
- spec/integration/yard/array/hash_builder_spec.rb
|
242
|
-
- spec/integration/yard/array_spec.rb
|
243
|
-
- spec/integration/yard/class/default_value_spec.rb
|
244
|
-
- spec/integration/yard/date/days_between_spec.rb
|
245
|
-
- spec/integration/yard/enumerable_spec.rb
|
246
|
-
- spec/integration/yard/hash/
|
282
|
+
- spec/integration/yard/darthjee/core_ext/array/hash_builder_spec.rb
|
283
|
+
- spec/integration/yard/darthjee/core_ext/array_spec.rb
|
284
|
+
- spec/integration/yard/darthjee/core_ext/class/default_value_spec.rb
|
285
|
+
- spec/integration/yard/darthjee/core_ext/date/days_between_spec.rb
|
286
|
+
- spec/integration/yard/darthjee/core_ext/enumerable_spec.rb
|
287
|
+
- spec/integration/yard/darthjee/core_ext/hash/cameliazable_spec.rb
|
288
|
+
- spec/integration/yard/darthjee/core_ext/hash/chain_fetcher_spec.rb
|
289
|
+
- spec/integration/yard/darthjee/core_ext/hash/key_changeable_spec.rb
|
290
|
+
- spec/integration/yard/darthjee/core_ext/hash/transformable_spec.rb
|
291
|
+
- spec/integration/yard/darthjee/core_ext/hash/value_changer_spec.rb
|
292
|
+
- spec/integration/yard/darthjee/core_ext/hash_spec.rb
|
247
293
|
- spec/lib/array_spec.rb
|
248
294
|
- spec/lib/class_spec.rb
|
249
295
|
- spec/lib/darthjee/core_ext/hash/chain_fetcher_spec.rb
|
@@ -252,6 +298,7 @@ test_files:
|
|
252
298
|
- spec/lib/darthjee/core_ext/hash/keys_sorter_spec.rb
|
253
299
|
- spec/lib/darthjee/core_ext/hash/squasher_spec.rb
|
254
300
|
- spec/lib/darthjee/core_ext/hash/to_hash_mapper_spec.rb
|
301
|
+
- spec/lib/darthjee/core_ext/hash/value_changer_spec.rb
|
255
302
|
- spec/lib/date_spec.rb
|
256
303
|
- spec/lib/enumerable_spec.rb
|
257
304
|
- spec/lib/hash_spec.rb
|
@@ -261,7 +308,10 @@ test_files:
|
|
261
308
|
- spec/lib/symbol_spec.rb
|
262
309
|
- spec/lib/time_spec.rb
|
263
310
|
- spec/spec_helper.rb
|
311
|
+
- spec/support/models/default_reader_model.rb
|
264
312
|
- spec/support/models/default_value_model.rb
|
313
|
+
- spec/support/models/dummy_iterator.rb
|
314
|
+
- spec/support/models/dummy_transformer.rb
|
265
315
|
- spec/support/models/hash/value_changer/dummy.rb
|
266
316
|
- spec/support/models/hash/value_changer/dummy_iteractor.rb
|
267
317
|
- spec/support/shared_examples/array/array_random.rb
|