gds-api-adapters 103.4.4 → 103.5.0
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 +4 -4
- data/lib/gds_api/content_store.rb +3 -0
- data/lib/gds_api/validators/base_path_validator.rb +4 -2
- data/lib/gds_api/version.rb +1 -1
- metadata +16 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a16eeb04e5ae0282ef96464d7bdefeabb36af1abad68f13b668c48c8da9863de
|
|
4
|
+
data.tar.gz: be9ba8b486eb72d934c453190ea418ceda3f201be539d61f54e21b94ad84fb6e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 22e8d2982e271859a39da521b80271440916bb242f279f8b5f59c212ee1f51443975b71e038cd45f76b86e4b7e87114e1a0a2c95a7286af4dc230ccd0a218e8e
|
|
7
|
+
data.tar.gz: 169ff661db18aec63bcdedd26b533c5e0fcd6b3e742e5b22bed2fb195efca3049ffe1ae486cb33ba2888100f6714fcfa27c60eb71f0a3168ec9da455038cd59e
|
|
@@ -5,6 +5,9 @@ require_relative "exceptions"
|
|
|
5
5
|
|
|
6
6
|
class GdsApi::ContentStore < GdsApi::Base
|
|
7
7
|
def content_item(base_path)
|
|
8
|
+
validator = GdsApi::Validators::BasePathValidator.new(base_path)
|
|
9
|
+
raise GdsApi::HTTPBadRequest, validator.errors unless validator.valid?
|
|
10
|
+
|
|
8
11
|
get_json(content_item_url(base_path))
|
|
9
12
|
rescue GdsApi::HTTPNotFound => e
|
|
10
13
|
raise ItemNotFound.build_from(e)
|
|
@@ -10,11 +10,13 @@ module GdsApi
|
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
def valid?
|
|
13
|
-
|
|
13
|
+
return true unless base_path
|
|
14
|
+
|
|
15
|
+
!(no_leading_slash? || too_long? || potential_path_traversal? || ends_with_a_period? || invalid_chars?)
|
|
14
16
|
end
|
|
15
17
|
|
|
16
18
|
def errors
|
|
17
|
-
return {
|
|
19
|
+
return {} unless base_path
|
|
18
20
|
|
|
19
21
|
errors = []
|
|
20
22
|
errors << [:base_path_invalid, "must start with a /"] if no_leading_slash?
|
data/lib/gds_api/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: gds-api-adapters
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 103.
|
|
4
|
+
version: 103.5.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- GOV.UK Dev
|
|
@@ -163,6 +163,20 @@ dependencies:
|
|
|
163
163
|
- - "~>"
|
|
164
164
|
- !ruby/object:Gem::Version
|
|
165
165
|
version: '0.5'
|
|
166
|
+
- !ruby/object:Gem::Dependency
|
|
167
|
+
name: minitest-mock
|
|
168
|
+
requirement: !ruby/object:Gem::Requirement
|
|
169
|
+
requirements:
|
|
170
|
+
- - ">="
|
|
171
|
+
- !ruby/object:Gem::Version
|
|
172
|
+
version: '0'
|
|
173
|
+
type: :development
|
|
174
|
+
prerelease: false
|
|
175
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
176
|
+
requirements:
|
|
177
|
+
- - ">="
|
|
178
|
+
- !ruby/object:Gem::Version
|
|
179
|
+
version: '0'
|
|
166
180
|
- !ruby/object:Gem::Dependency
|
|
167
181
|
name: mocha
|
|
168
182
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -412,7 +426,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
412
426
|
- !ruby/object:Gem::Version
|
|
413
427
|
version: '0'
|
|
414
428
|
requirements: []
|
|
415
|
-
rubygems_version: 4.0.
|
|
429
|
+
rubygems_version: 4.0.20
|
|
416
430
|
specification_version: 4
|
|
417
431
|
summary: Adapters to work with GDS APIs
|
|
418
432
|
test_files: []
|