companies_house_hub 0.1.3 → 0.1.4

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: 4c5ac91a16eae0a80a8197622ed6280bb6ee4918015e9dc34ae77523f408725b
4
- data.tar.gz: 45348b4b15c96ab7c51f6d74641fd376f4bfaf69db4afaccb7c464da08ee84c3
3
+ metadata.gz: 83ae5b2dfde24b07b5e99ce919e39d6685655e83bbf1addf94c4834eafd5e735
4
+ data.tar.gz: 823ca7613fee36bb79ce3c22ddab39631fda621e4b3a7aa0400f103b25689d21
5
5
  SHA512:
6
- metadata.gz: 107dd08400be3d337732c5525673087dec42ef7c74a1b5547e300f91d8c5791989fbf198d11b9714064a8db47625c82a2a82c9107ac4751a821fe9dbdee3653d
7
- data.tar.gz: 28d07c7ff36a4f945f9df6c0009d5e0b378ae27eefcf4a479c21f258a76fdaeb65ae43eed8243ca45804fe6fffe9fedf607505b1a73bc549305f09e183f71504
6
+ metadata.gz: f92b9a1ed0c4aaf8fe7644049e0000f7f6fffed8edcff522a7671203c85a3a02522e9b770aaff16befbacd05cccf021f0ef6f93633232d8f9d13423bad6cb7a8
7
+ data.tar.gz: 88e8ae8c30f849b8eaebda00fac7d389fe4cb99ed96b0424c0afbcad08aa6946c91bce7d0e68431395aadcb00ed92141c570d689e3e8f2fffbaa7cbd3dd414c8
data/.rubocop.yml CHANGED
@@ -1,8 +1,5 @@
1
1
  require: rubocop-rspec
2
2
 
3
- Metrics/AbcSize:
4
- Max: 30
5
-
6
3
  Style/Documentation:
7
4
  Enabled: false
8
5
 
@@ -31,9 +28,5 @@ Lint/UselessAssignment:
31
28
  RSpec/ExampleLength:
32
29
  Max: 100
33
30
 
34
- # To be compatible with older versions of ruby
35
- Performance/RegexpMatch:
36
- Enabled: false
37
-
38
31
  RSpec/MultipleExpectations:
39
32
  Enabled: false
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.5.0
1
+ 2.6.5
@@ -27,12 +27,12 @@ Gem::Specification.new do |spec|
27
27
  spec.add_dependency 'faraday'
28
28
  spec.add_dependency 'faraday_middleware'
29
29
 
30
- spec.add_development_dependency 'bundler', '~> 1.16'
30
+ spec.add_development_dependency 'bundler', '~> 2.0'
31
31
  spec.add_development_dependency 'dotenv', '~> 2.4.0'
32
32
  spec.add_development_dependency 'pry-byebug'
33
33
  spec.add_development_dependency 'rake', '~> 10.0'
34
34
  spec.add_development_dependency 'rspec'
35
- spec.add_development_dependency 'rubocop', '~> 0.54.0'
35
+ spec.add_development_dependency 'rubocop'
36
36
  spec.add_development_dependency 'rubocop-rspec'
37
37
  spec.add_development_dependency 'simplecov'
38
38
  spec.add_development_dependency 'vcr'
@@ -54,7 +54,7 @@ module CompaniesHouseHub
54
54
  @status = json.dig(:company_status)
55
55
  @type = json.dig(:type) || json.dig(:company_type)
56
56
  @accounts = json.dig(:accounts)
57
- @full_address = json.dig(:address_snippet) || @address.full
57
+ @full_address = json.fetch(:address_snippet, @address.full)
58
58
  end
59
59
 
60
60
  def filing_histories
@@ -16,9 +16,9 @@ module CompaniesHouseHub
16
16
  def self.all(options = {})
17
17
  options[:items_per_page] ||= DEFAULT_PER_PAGE
18
18
 
19
- number = options.delete(:company_number)
19
+ company_number = options.delete(:company_number)
20
20
 
21
- result = get(format_url(FIND_PATH, company_number: number), options)
21
+ result = get(format_url(FIND_PATH, company_number: company_number), options)
22
22
 
23
23
  return [] unless result.body[:items].any?
24
24
 
@@ -27,13 +27,13 @@ module CompaniesHouseHub
27
27
  filing_histories = result.body[:items].map do |filing_json|
28
28
  next if filing_json.dig(:description) == LEGACY_DOC_DESCRIPTION
29
29
 
30
- new(filing_json)
30
+ new(filing_json, company_number)
31
31
  end
32
32
 
33
33
  filing_histories.compact
34
34
  end
35
35
 
36
- def initialize(json = {})
36
+ def initialize(json = {}, company_number = nil)
37
37
  @description = json.dig(:description)
38
38
  @action_date = json.dig(:action_date)
39
39
  @date = json.dig(:date)
@@ -42,6 +42,7 @@ module CompaniesHouseHub
42
42
  @transaction_id = json.dig(:transaction_id) # helps on barcode generation
43
43
  @barcode = json.dig(:barcode) || generate_barcode
44
44
  @description_values = json.dig(:description_values)
45
+ @company_number = company_number
45
46
  end
46
47
 
47
48
  def formatted_name
@@ -49,7 +50,9 @@ module CompaniesHouseHub
49
50
  end
50
51
 
51
52
  def url(format = 'pdf')
52
- file_path = @links[:self]
53
+ file_path = @links[:self] || build_file_path
54
+
55
+ return unless file_path
53
56
 
54
57
  document_path = "#{file_path}/document?format=#{format}"
55
58
 
@@ -66,5 +69,11 @@ module CompaniesHouseHub
66
69
 
67
70
  Digest::SHA1.hexdigest(string)[0..6].upcase
68
71
  end
72
+
73
+ def build_file_path
74
+ required = [@company_number, @transaction_id].all? { |val| val && !val.empty? }
75
+
76
+ "/company/#{@company_number}/filing-history/#{@transaction_id}" if required
77
+ end
69
78
  end
70
79
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CompaniesHouseHub
4
- VERSION = '0.1.3'
4
+ VERSION = '0.1.4'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: companies_house_hub
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ricardo Otero
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-10-01 00:00:00.000000000 Z
11
+ date: 2019-12-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.16'
47
+ version: '2.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.16'
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: dotenv
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -112,16 +112,16 @@ dependencies:
112
112
  name: rubocop
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
- version: 0.54.0
117
+ version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
- version: 0.54.0
124
+ version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rubocop-rspec
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -223,8 +223,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
223
223
  - !ruby/object:Gem::Version
224
224
  version: '0'
225
225
  requirements: []
226
- rubyforge_project:
227
- rubygems_version: 2.7.3
226
+ rubygems_version: 3.0.3
228
227
  signing_key:
229
228
  specification_version: 4
230
229
  summary: A REST client for the UK Companies House API