waistband 0.11.2 → 0.11.3

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 ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MzlmMDdlZjQ0NjdhZDIwNjhkNDlkM2QzYTdlMmY2ZTJhMjg4YWIxNw==
5
+ data.tar.gz: !binary |-
6
+ NWQ4M2ZiYTM5MjQ1NDBkYWYzMjM0ZTNmODFlNzcxMWMwNDRlMDAyZA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ ZjRmZDU0NzBiZWU1ZjYzMzg1MGIyOWJjNDU2MzQxZDIzMDIwNzNjYWJhZmFj
10
+ NWFlZDdjZTYwNmE4MzI2ZDcwMTIwNWVlNjUyYzMyNDQ5NjY0NTI3NmU0ZmRl
11
+ ZjNiOWI3NzhlZjJmZjc0MzUxMjVmN2RlNTg0OTc0ZjE3ZTU4ODU=
12
+ data.tar.gz: !binary |-
13
+ MzYzYzY4NmU4ZDcwOWYyMjZkMDNjYmQ4YzJlZWZmNjRmOGU2ZjQwODNmNzk3
14
+ MGQxOWM2ZjNmNWJhNTg5MmNmNjVlYWFjOWY0YThhMGNmYjYxZjA0ZWM4MjU2
15
+ YWNmZjRhYzVhZDdiM2VkNTU5ZTUxOGI1NTg5ZTgyOTA0MTJhNTQ=
data/.rspec CHANGED
@@ -1,2 +1 @@
1
1
  --color
2
- --debugger
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's dependencies in waistband.gemspec
4
4
  gemspec
5
5
 
6
- gem 'rspec'
7
- gem 'debugger'
8
- gem 'kaminari', require: false
9
- gem 'timecop'
6
+ gem 'rspec', '~> 3.0.0'
7
+ gem 'debugger', '~> 1.6.8'
8
+ gem 'kaminari', '~> 0.16.1', require: false
9
+ gem 'timecop', '~> 0.7.1'
@@ -5,6 +5,14 @@ module Waistband
5
5
  @result_hash = result_hash
6
6
  end
7
7
 
8
+ def to_hash
9
+ @result_hash['_source']
10
+ end
11
+
12
+ def [](key)
13
+ @result_hash['_source'][key.to_s]
14
+ end
15
+
8
16
  def method_missing(method_name, *args, &block)
9
17
  return @result_hash[method_name.to_s] if @result_hash.keys.include?(method_name.to_s)
10
18
  return @result_hash['_source'][method_name.to_s] if @result_hash['_source'] && @result_hash['_source'].keys.include?(method_name.to_s)
@@ -1,3 +1,3 @@
1
1
  module Waistband
2
- VERSION = "0.11.2"
2
+ VERSION = "0.11.3"
3
3
  end
@@ -28,7 +28,7 @@ describe Waistband::Configuration do
28
28
 
29
29
  expect(::Waistband.config.instance_variable_get('@adapter')).to be_nil
30
30
 
31
- YAML.stub(:load).and_return({'test' => original_config.merge({'adapter' => :net_http})})
31
+ expect(YAML).to receive(:load).and_return({'test' => original_config.merge({'adapter' => :net_http})}).at_least(:once)
32
32
  ::Waistband.config.setup
33
33
  expect(::Waistband.config.instance_variable_get('@adapter')).to eql :net_http
34
34
  expect(::Waistband.client.transport.options[:adapter]).to eql :net_http
@@ -32,13 +32,13 @@ describe Waistband::Index do
32
32
  it "updates the index's mappings" do
33
33
  index.refresh
34
34
  response = index.update_mapping('event')
35
- expect(response['acknowledged']).to be_true
35
+ expect(response['acknowledged']).to be true
36
36
  end
37
37
 
38
38
  it "updates the index's settings" do
39
39
  index.refresh
40
40
  response = index.update_settings
41
- expect(response['acknowledged']).to be_true
41
+ expect(response['acknowledged']).to be true
42
42
  end
43
43
 
44
44
  it "proxies to the client's search" do
@@ -51,7 +51,7 @@ describe Waistband::Index do
51
51
  describe "storing" do
52
52
 
53
53
  it "stores data" do
54
- expect(index.save('__test_write', {'ok' => 'yeah'})).to be_true
54
+ expect(index.save('__test_write', {'ok' => 'yeah'})).to be true
55
55
  expect(index.read('__test_write')).to eql({
56
56
  '_id' => '__test_write',
57
57
  '_index' => 'events_test',
@@ -164,20 +164,20 @@ describe Waistband::Index do
164
164
  config = sharded_index.send(:config)
165
165
 
166
166
  expect(sharded_index.send(:base_config_name)).to eql 'events_test'
167
- expect(config['stringify']).to be_true
167
+ expect(config['stringify']).to be true
168
168
  expect(config['settings']).to be_present
169
169
  end
170
170
 
171
171
  it "creates the sharded index with the same mappings as the parent" do
172
172
  sharded_index.delete
173
173
 
174
- expect(Waistband::Index.new('events', version: 1).exists?).to be_false
174
+ expect(Waistband::Index.new('events', version: 1).exists?).to be false
175
175
 
176
176
  expect {
177
177
  sharded_index.create!
178
178
  }.to_not raise_error
179
179
 
180
- expect(Waistband::Index.new('events', version: 1).exists?).to be_true
180
+ expect(Waistband::Index.new('events', version: 1).exists?).to be true
181
181
  end
182
182
 
183
183
  end
@@ -199,7 +199,7 @@ describe Waistband::Index do
199
199
  config = sharded_index.send(:config)
200
200
 
201
201
  expect(sharded_index.send(:base_config_name)).to eql 'events_test'
202
- expect(config['stringify']).to be_true
202
+ expect(config['stringify']).to be true
203
203
  expect(config['settings']).to be_present
204
204
  end
205
205
 
@@ -246,16 +246,16 @@ describe Waistband::Index do
246
246
  end
247
247
 
248
248
  it "if the index has a custom name, the alias name doesn't automatically append the env" do
249
- index.stub(:config).and_return({
249
+ expect(index).to receive(:config).and_return({
250
250
  'name' => 'super_custom'
251
- })
251
+ }).once
252
252
  expect(index.send(:full_alias_name, 'all_events')).to eql 'all_events'
253
253
  end
254
254
 
255
255
  it "creates aliases" do
256
- expect(index.alias_exists?('events_alias_yo')).to be_false
256
+ expect(index.alias_exists?('events_alias_yo')).to be false
257
257
  index.alias 'events_alias_yo'
258
- expect(index.alias_exists?('events_alias_yo')).to be_true
258
+ expect(index.alias_exists?('events_alias_yo')).to be true
259
259
  end
260
260
 
261
261
  describe 'versioning' do
@@ -34,8 +34,18 @@ describe ::Waistband::Result do
34
34
 
35
35
  it "provides method missing interface for the _source hash" do
36
36
  expect(result.bus_event_type).to eql 'task_opened'
37
- expect(result.timeline_event).to be_true
38
- expect(result._message).to be_true
37
+ expect(result.timeline_event).to eql 'true'
38
+ expect(result._message).to eql 'true'
39
+ end
40
+
41
+ it "provides to_hash method for jbuilder compatibility" do
42
+ expect(result.to_hash).to eql({
43
+ "bus_event_type" => "task_opened",
44
+ "timeline_event" => "true",
45
+ "_message" => "true"
46
+ })
47
+
48
+ expect(result.to_hash).to eql(result._source)
39
49
  end
40
50
 
41
51
  end
@@ -34,7 +34,7 @@ describe ::Waistband::SearchResults do
34
34
 
35
35
  it "provides a method interface for the results hash array" do
36
36
  expect(results.took).to eql 1
37
- expect(results.timed_out).to be_false
37
+ expect(results.timed_out).to be false
38
38
  expect(results._shards).to eql({
39
39
  "total" => 12,
40
40
  "successful" => 12,
@@ -71,8 +71,8 @@ describe ::Waistband::SearchResults do
71
71
  "_message" => "true"
72
72
  })
73
73
  expect(result.bus_event_type).to eql 'task_opened'
74
- expect(result.timeline_event).to be_true
75
- expect(result._message).to be_true
74
+ expect(result.timeline_event).to eql 'true'
75
+ expect(result._message).to eql 'true'
76
76
  end
77
77
 
78
78
  describe '#paginated_hits' do
data/spec/spec_helper.rb CHANGED
@@ -8,6 +8,7 @@ require 'waistband'
8
8
  require 'rspec'
9
9
  require 'timecop'
10
10
  require 'active_support/core_ext/integer/time'
11
+ require 'debugger'
11
12
 
12
13
  Dir["#{APP_DIR}/spec/support/**/*.rb"].each {|f| require f}
13
14
 
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: waistband
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.2
5
- prerelease:
4
+ version: 0.11.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - David Jairala
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-05-23 00:00:00.000000000 Z
11
+ date: 2014-06-11 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activesupport
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ! '>='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ! '>='
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: elasticsearch
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ! '>='
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ! '>='
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: json
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: bundler
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rake
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ! '>='
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ! '>='
92
81
  - !ruby/object:Gem::Version
@@ -131,27 +120,26 @@ files:
131
120
  homepage: https://github.com/taskrabbit/waistband
132
121
  licenses:
133
122
  - MIT
123
+ metadata: {}
134
124
  post_install_message:
135
125
  rdoc_options: []
136
126
  require_paths:
137
127
  - lib
138
128
  required_ruby_version: !ruby/object:Gem::Requirement
139
- none: false
140
129
  requirements:
141
130
  - - ! '>='
142
131
  - !ruby/object:Gem::Version
143
132
  version: '0'
144
133
  required_rubygems_version: !ruby/object:Gem::Requirement
145
- none: false
146
134
  requirements:
147
135
  - - ! '>='
148
136
  - !ruby/object:Gem::Version
149
137
  version: '0'
150
138
  requirements: []
151
139
  rubyforge_project:
152
- rubygems_version: 1.8.25
140
+ rubygems_version: 2.2.2
153
141
  signing_key:
154
- specification_version: 3
142
+ specification_version: 4
155
143
  summary: Configuration and sensible defaults for ElasticSearch on Ruby
156
144
  test_files:
157
145
  - spec/config/waistband/waistband.yml