sitehub 0.4.7 → 0.4.8

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 04363e00e3336d8455b4cb2c9d4eb4fc9740b8b5
4
- data.tar.gz: 6016da732dd7cdb35e7dbe0a1d74697f98dc9557
3
+ metadata.gz: 0d9f33c7bd5d70f6b2b82af2a323ad52001ab72a
4
+ data.tar.gz: 1b7e24903e21456c9ce94f2c6ae4b9e15574e257
5
5
  SHA512:
6
- metadata.gz: 96eaea637b18d9e272b526d664a9d5c748d910a8c59de339b2f091df2a3e693f3cbf5363cdf0f62f1c8831f5449fb01c1f647c66b0ecd63bd9b181db0b025ab4
7
- data.tar.gz: 5165e6d91e40ac2945fd881efe73d69f4addd303bed5d35c87bee949343fd05f3231065f2f88a2bc25cef0154a0af548705b5665e39b9d38500a5cc5a15e66b4
6
+ metadata.gz: ac6d54ab0e88de48ecd18ccd84adbe946eff83bfdcb5a4e4b0ed5ebe64ace38c53f3ce022a6baab46f63dd6b145d40c6388b64ef917b3e50b6cfee32d86d369b
7
+ data.tar.gz: 4fd1f12ee1c746b9539bbfbd704d8b83b31805ce1483d0e1508595278a28264fe23de9dabba020f81f9932d1236d6a20b2c6d1876be24ee038309a5e65678e3b
data/.reek CHANGED
@@ -16,6 +16,7 @@ TooManyStatements:
16
16
  exclude:
17
17
  - "Builder#add_default_middleware"
18
18
  - "ForwardProxy#initialize"
19
+ - "ForwardProxy#call"
19
20
  - "SiteHub::ForwardProxyBuilder#initialize"
20
21
 
21
22
  FeatureEnvy:
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sitehub (0.4.7)
4
+ sitehub (0.4.8)
5
5
  em-http-request
6
6
  em-synchrony
7
7
  faraday
@@ -19,9 +19,14 @@ class SiteHub
19
19
  request = env[REQUEST]
20
20
  request.map(mapped_path, mapped_url)
21
21
 
22
- downstream_client.call(request).tap do |response|
23
- response.set_cookie(sitehub_cookie_name, path: (sitehub_cookie_path || request.path), value: id)
24
- end
22
+ response = downstream_client.call(request)
23
+ value = request.cookies[sitehub_cookie_name.to_s] || id
24
+ response.set_cookie(sitehub_cookie_name, path: resolve_sitehub_cookie_path(request), value: value)
25
+ response
26
+ end
27
+
28
+ def resolve_sitehub_cookie_path(request)
29
+ sitehub_cookie_path || request.path
25
30
  end
26
31
 
27
32
  def ==(other)
@@ -13,6 +13,7 @@ class SiteHub
13
13
  def_delegator :@rack_request, :url
14
14
  def_delegator :@rack_request, :path
15
15
  def_delegator :@rack_request, :query_string
16
+ def_delegator :@rack_request, :cookies
16
17
 
17
18
  attr_reader :env, :rack_request, :mapped_path, :mapped_url, :time
18
19
 
@@ -1,3 +1,3 @@
1
1
  class SiteHub
2
- VERSION = '0.4.7'.freeze
2
+ VERSION = '0.4.8'.freeze
3
3
  end
@@ -26,7 +26,8 @@ class SiteHub
26
26
  end
27
27
 
28
28
  describe '#call' do
29
- let(:request) { Request.new(env: env_for(path: mapped_path)) }
29
+ let(:rack_headers) { {} }
30
+ let(:request) { Request.new(env: env_for(path: mapped_path, env: rack_headers)) }
30
31
 
31
32
  before do
32
33
  get(mapped_path, {}, REQUEST => request)
@@ -47,6 +48,14 @@ class SiteHub
47
48
  expect(last_response.cookies[:cookie_name.to_s]).to eq(value: :id.to_s, path: mapped_path)
48
49
  end
49
50
 
51
+ context 'cookie already set' do
52
+ let(:rack_headers) { { 'HTTP_COOKIE' => 'cookie_name=existing_value' } }
53
+
54
+ it 'leaves it alone' do
55
+ expect(last_response.cookies[:cookie_name.to_s]).to eq(value: :existing_value.to_s, path: mapped_path)
56
+ end
57
+ end
58
+
50
59
  context 'recorded_routes_cookie_path not set' do
51
60
  it 'sets the path to be the request path' do
52
61
  expect(last_response.cookies[:cookie_name.to_s][:path]).to eq(mapped_path)
@@ -13,7 +13,8 @@ module Rack
13
13
  end
14
14
 
15
15
  def cookie_key_value_array
16
- header['Set-Cookie'].lines.collect { |line| line.scan(%r{([\.\w]+)=([\.\w/]+)}) }
16
+ value = header['Set-Cookie'] || ''
17
+ value.lines.collect { |line| line.scan(%r{([\.\w]+)=([\.\w/]+)}) }
17
18
  end
18
19
  end
19
20
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sitehub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.7
4
+ version: 0.4.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ladtech
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-21 00:00:00.000000000 Z
11
+ date: 2016-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack