faraday-http-cache 2.5.0 → 2.5.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
  SHA256:
3
- metadata.gz: 9ec7c39769697b84b0fd12f97d8dd14953cef613f3621be2bea6561e40a77805
4
- data.tar.gz: f47c57b3233c0e7fec8ae527f33be203918393eb8efc3443bfc3e1a421ddd3b9
3
+ metadata.gz: 69e426c03cf04e5a7be4211fbed70c2aa236c3e31655aa9f742ee85351a27d00
4
+ data.tar.gz: 6954402565ff5652d96c90bb696c8bb65e8d1dc6178d985d6bbd89171893cb75
5
5
  SHA512:
6
- metadata.gz: 46ae27b09f324cea6d5d49c6f83b9ee11c00e3840dce48243534896bf9fed16cc3e2f55d9711b8355597327af7118b35aa70fa5ba6bfc97ef924ff58b249e22c
7
- data.tar.gz: 6a013f290b94a09be66880fd339885fde26df832f65eff3a0352fc1689a5bd2c7dece5e80998c0ab6ea8890ebd3b6b77e8a1d8643a94b4429e9de2a7b3ed60d1
6
+ metadata.gz: 60fedd1b2af68503eaf8b108a196ee237f74285dc12e9f526af3a43929ea297db602f357693fcaa9320b46400d1b4c7f08921ea16ebd8a51cd738d0b71a8b1eb
7
+ data.tar.gz: 9eb9c0b6b484099240d29e81bc0335777d895f88c084b29561b2cff9551bf0f36a3afa7aafa096dcadee43cce5d1a9f5583010d461e029b9e4a50257b602b5e5
@@ -99,7 +99,7 @@ module Faraday
99
99
  vary = headers['Vary'].to_s
100
100
 
101
101
  vary.empty? || (vary != '*' && vary.split(/[\s,]+/).all? do |header|
102
- request.headers[header] == cached_request[:headers][header]
102
+ request.headers[header] == (cached_request[:headers][header] || cached_request[:headers][header.downcase])
103
103
  end)
104
104
  end
105
105
 
@@ -86,6 +86,24 @@ describe Faraday::HttpCache::Strategies::ByUrl do
86
86
 
87
87
  expect(subject.read(request)).to be_a(Faraday::HttpCache::Response)
88
88
  end
89
+
90
+ context 'with a Vary header in the response in a different case than the matching request header' do
91
+ let(:request) do
92
+ Faraday::HttpCache::Request.new(
93
+ method: :get,
94
+ url: 'http://test/index',
95
+ headers: Faraday::Utils::Headers.new({ 'accept' => 'application/json' })
96
+ )
97
+ end
98
+ let(:response) do
99
+ Faraday::HttpCache::Response.new(response_headers: Faraday::Utils::Headers.new({ vary: 'Accept' }))
100
+ end
101
+
102
+ it 'reads stored message' do
103
+ subject.write(request, response)
104
+ expect(subject.read(request)).to be_a(Faraday::HttpCache::Response)
105
+ end
106
+ end
89
107
  end
90
108
 
91
109
  context 'with the JSON serializer' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faraday-http-cache
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lucas Mazza
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2023-04-27 00:00:00.000000000 Z
13
+ date: 2024-01-16 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
@@ -81,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  requirements: []
84
- rubygems_version: 3.2.22
84
+ rubygems_version: 3.4.10
85
85
  signing_key:
86
86
  specification_version: 4
87
87
  summary: A Faraday middleware that stores and validates cache expiration.