bidu-core_ext 1.2.1 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 81d3366a7c3b5cd63415fc50eb42843069280983
4
- data.tar.gz: 4e5ef6782170c62c580b7128af42decde4b909f5
3
+ metadata.gz: ff128913bd7444df25b5fc6ae4842d3ad7ea6315
4
+ data.tar.gz: ecc39a938de9254da1532c18162fecd2a90e4f1c
5
5
  SHA512:
6
- metadata.gz: da316c745e01f3c425fa36c94f229b512a7a7d1794d61f5203b87f3ab99b977bd1e761eda1eea6fa5b706eeae5fc6c4d813e64c6b166288d81a63597defe354a
7
- data.tar.gz: 94a6fb92d00af8cb2527f4a2ae62b09616739b5dfd6c7817bfd17b879598946b90bfc64bd8092df771a5a182fbe682ba839600fd516ebb374d406326387084fa
6
+ metadata.gz: b5ff287b0509250b668221ffd7e25b2e0efb3c7b9ad5bf680597c2c9f9debdfbbe54799a195d2ca578447bd6c5dfa555d7e8435f0b889d09fdc869cd7dcf27b9
7
+ data.tar.gz: 3f3f108767944b904e3538029e250fb6c76f46d1e9f7bd808dddedc5a851833197599d103216f726ce6fcd7fdd7b8a57136716049ee855dd614602e36aeb27ed
data/Gemfile.lock CHANGED
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bidu-core_ext (1.2.1)
4
+ bidu-core_ext (1.2.2)
5
5
  activesupport
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (4.2.4)
10
+ activesupport (4.2.6)
11
11
  i18n (~> 0.7)
12
12
  json (~> 1.7, >= 1.7.7)
13
13
  minitest (~> 5.1)
@@ -19,7 +19,7 @@ GEM
19
19
  i18n (0.7.0)
20
20
  json (1.8.3)
21
21
  method_source (0.8.2)
22
- minitest (5.8.3)
22
+ minitest (5.9.0)
23
23
  multi_json (1.10.1)
24
24
  pry (0.10.3)
25
25
  coderay (~> 1.1.0)
@@ -59,4 +59,4 @@ DEPENDENCIES
59
59
  simplecov
60
60
 
61
61
  BUNDLED WITH
62
- 1.10.6
62
+ 1.11.2
data/lib/array.rb CHANGED
@@ -16,4 +16,8 @@ class Array
16
16
  def random
17
17
  self[rand(size)]
18
18
  end
19
+
20
+ def random!
21
+ self.slice!(rand(size))
22
+ end
19
23
  end
@@ -1,5 +1,5 @@
1
1
  module Bidu
2
2
  module CoreExt
3
- VERSION = '1.2.1'
3
+ VERSION = '1.2.2'
4
4
  end
5
5
  end
@@ -92,18 +92,18 @@ describe Array do
92
92
  end
93
93
 
94
94
  describe '#random' do
95
- let(:array) { [ 7, 5, 3 ] }
95
+ it_behaves_like 'a method that returns a random element', :random
96
+ end
96
97
 
97
- (0..2).each do |index|
98
- context "when random returns #{index}" do
99
- before do
100
- allow_any_instance_of(Array).to receive(:rand).with(array.size) { index }
101
- end
98
+ describe '#random!' do
99
+ it_behaves_like 'a method that returns a random element', :random!
102
100
 
103
- it 'returns the randomized index of the array' do
104
- expect(array.random).to eq(array[index])
105
- end
106
- end
101
+ let(:array) { [ 8,4,2 ] }
102
+
103
+ it 'removes an the returned element' do
104
+ expect do
105
+ array.random!
106
+ end.to change { array.size }.by(-1)
107
107
  end
108
108
  end
109
109
 
@@ -0,0 +1,16 @@
1
+ shared_examples 'a method that returns a random element' do |method|
2
+ let(:array) { [ 7, 5, 3 ] }
3
+
4
+ (0..2).each do |index|
5
+ context "when random returns #{index}" do
6
+ let!(:expected) { array[index] }
7
+ before do
8
+ allow_any_instance_of(Array).to receive(:rand).with(array.size) { index }
9
+ end
10
+
11
+ it 'returns the randomized index of the array' do
12
+ expect(array.public_send(method)).to eq(expected)
13
+ end
14
+ end
15
+ end
16
+ end
metadata CHANGED
@@ -1,111 +1,111 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bidu-core_ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bidu Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-07 00:00:00.000000000 Z
11
+ date: 2016-06-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.6'
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
40
  version: '1.6'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '2.14'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '2.14'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec-mocks
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry-nav
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: simplecov
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  description:
@@ -115,8 +115,8 @@ executables: []
115
115
  extensions: []
116
116
  extra_rdoc_files: []
117
117
  files:
118
- - .gitignore
119
- - .rspec
118
+ - ".gitignore"
119
+ - ".rspec"
120
120
  - Gemfile
121
121
  - Gemfile.lock
122
122
  - LICENSE
@@ -143,6 +143,7 @@ files:
143
143
  - spec/lib/numeric_spec.rb
144
144
  - spec/lib/symbol_spec.rb
145
145
  - spec/spec_helper.rb
146
+ - spec/support/shared_examples/array_random.rb
146
147
  - spec/support/shared_examples/chain_fetch.rb
147
148
  - spec/support/shared_examples/clean.rb
148
149
  - spec/support/shared_examples/hash_keys_changer.rb
@@ -160,17 +161,17 @@ require_paths:
160
161
  - lib
161
162
  required_ruby_version: !ruby/object:Gem::Requirement
162
163
  requirements:
163
- - - '>='
164
+ - - ">="
164
165
  - !ruby/object:Gem::Version
165
166
  version: '0'
166
167
  required_rubygems_version: !ruby/object:Gem::Requirement
167
168
  requirements:
168
- - - '>='
169
+ - - ">="
169
170
  - !ruby/object:Gem::Version
170
171
  version: '0'
171
172
  requirements: []
172
173
  rubyforge_project:
173
- rubygems_version: 2.4.6
174
+ rubygems_version: 2.5.1
174
175
  signing_key:
175
176
  specification_version: 4
176
177
  summary: Core Extensions
@@ -183,6 +184,7 @@ test_files:
183
184
  - spec/lib/numeric_spec.rb
184
185
  - spec/lib/symbol_spec.rb
185
186
  - spec/spec_helper.rb
187
+ - spec/support/shared_examples/array_random.rb
186
188
  - spec/support/shared_examples/chain_fetch.rb
187
189
  - spec/support/shared_examples/clean.rb
188
190
  - spec/support/shared_examples/hash_keys_changer.rb