alchemy-flux 0.1.0 → 0.1.1

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: 5a327fc796ea41d71457f4f9e249b14dda5e2f46
4
- data.tar.gz: f0ce071c56839bef1b0ae78e672c4c678da5b647
3
+ metadata.gz: 0463ad7d5c1aa55b5f1503bd3990a1545bf1788e
4
+ data.tar.gz: 770ba48ecaf36a72f1f476bf6c4b1f73aa4d8a62
5
5
  SHA512:
6
- metadata.gz: f98f19c5ddf89054ce5b6b5f15042e4bb312b6f3ad2b9f3542105961bf06306b40f2c146438b2e5453203d6808b459d89233014d59042ebe5b714edb391db864
7
- data.tar.gz: 77e07d45742a39e847f568970232c8addd7ddb7eb939d54bd2ab249dce741371e529490b19bc7dbc9a26a02ec885a8461701fddfe24bfa474b5c030ae6ea7134
6
+ metadata.gz: ca3113a2ef670409191d270b681ced6156fadb059ac3920b1f2d5f6de42151f1d11ad69823b2f5dd2d02f681956fe9d1f0fb70207c528540d0b422076ec13d9f
7
+ data.tar.gz: f3249cff4137f7db9b321d2e0b5981b0fe72873e4e6cbcd7d30d38e6c05ce7ae2239f9e0063d84e5a048cd4dd4b1b70f012b1010c700f411370d318be9fe5ba0
data/lib/alchemy-flux.rb CHANGED
@@ -221,7 +221,8 @@ module AlchemyFlux
221
221
  response = @service_fn.call(payload)
222
222
  {
223
223
  'status_code' => response['status_code'] || 200,
224
- 'body' => response['body'] || ""
224
+ 'body' => response['body'] || "",
225
+ 'headers' => response['headers'] || {}
225
226
  }
226
227
  rescue AlchemyFlux::NAckError => e
227
228
  AlchemyFlux::NAckError
data/spec/service_spec.rb CHANGED
@@ -250,6 +250,48 @@ describe AlchemyFlux::Service do
250
250
  service_b.stop
251
251
  end
252
252
 
253
+ it 'can alter headers' do
254
+ service_a = AlchemyFlux::Service.new("fluxa.service") do |message|
255
+ body = JSON.parse(message['body'])
256
+ {
257
+ 'body' => "hi #{body['name']}",
258
+ 'headers' => {"X-header" => "header1"}
259
+ }
260
+ end
261
+
262
+ service_b = AlchemyFlux::Service.new("fluxb.service")
263
+
264
+ service_a.start
265
+ service_b.start
266
+
267
+ response = service_b.send_message_to_service("fluxa.service", {'body' => '{"name" : "Bob"}'})
268
+ expect(response['body']).to eq "hi Bob"
269
+ expect(response['headers']["X-header"]).to eq "header1"
270
+ service_a.stop
271
+ service_b.stop
272
+ end
273
+
274
+ it 'can alter status_code' do
275
+ service_a = AlchemyFlux::Service.new("fluxa.service") do |message|
276
+ body = JSON.parse(message['body'])
277
+ {
278
+ 'body' => "hi #{body['name']}",
279
+ 'status_code' => 201
280
+ }
281
+ end
282
+
283
+ service_b = AlchemyFlux::Service.new("fluxb.service")
284
+
285
+ service_a.start
286
+ service_b.start
287
+
288
+ response = service_b.send_message_to_service("fluxa.service", {'body' => '{"name" : "Bob"}'})
289
+ expect(response['body']).to eq "hi Bob"
290
+ expect(response['status_code']).to eq 201
291
+ service_a.stop
292
+ service_b.stop
293
+ end
294
+
253
295
  it 'should be able to send messages within the service call' do
254
296
  service_a = AlchemyFlux::Service.new("fluxa.service") do |message|
255
297
  resp = service_a.send_message_to_service("fluxb.service", {})
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alchemy-flux
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Loyalty New Zealand
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-01-26 00:00:00.000000000 Z
11
+ date: 2016-01-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec