passfort 0.3.1 → 0.4.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/CHANGELOG.md +5 -0
- data/Gemfile.lock +2 -2
- data/lib/passfort/client.rb +12 -0
- data/lib/passfort/resource.rb +1 -0
- data/lib/passfort/resource/company_summary.rb +9 -0
- data/lib/passfort/version.rb +1 -1
- data/spec/fixtures/companies.json +19 -0
- data/spec/passfort/client_spec.rb +43 -0
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3fae0cf597ac783a06b37fa4edbebbbd60b55ec711ba585c216010bc3e77d5ff
|
4
|
+
data.tar.gz: 96c0f4f15f58aacebfc044a5711f7f0f28b7dad7a3398f1c7377c107a0e31065
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e05785677a8e26c10673944b56078dfca578f9b76151a07a557793393bbd811bb5b51a3ebd0d86fe460eae00092787a3ff89bff59ba08d57ab5747ed3fda78f7
|
7
|
+
data.tar.gz: 6aa7ef2c1dca9560de069a8930d2442c920bcb853a438821bc4064f79bb0eef515b72972cf37cb6bcd9075da1c66f98155e3f879f63b42fcc6e6c083e17de322
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
passfort (0.
|
4
|
+
passfort (0.4.0)
|
5
5
|
activesupport (~> 5.0)
|
6
6
|
excon (~> 0.60)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
|
-
activesupport (5.
|
11
|
+
activesupport (5.2.0)
|
12
12
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
13
13
|
i18n (>= 0.7, < 2)
|
14
14
|
minitest (~> 5.1)
|
data/lib/passfort/client.rb
CHANGED
@@ -19,5 +19,17 @@ module Passfort
|
|
19
19
|
def tasks
|
20
20
|
Endpoint::Tasks.new(@http)
|
21
21
|
end
|
22
|
+
|
23
|
+
def company_search(country, query, state = nil, provider = nil)
|
24
|
+
search_query = "/search/companies?country=#{CGI.escape(country)}"
|
25
|
+
search_query += "&query=#{CGI.escape(query)}"
|
26
|
+
search_query += "&state=#{CGI.escape(state)}" unless state.nil?
|
27
|
+
search_query += "&provider=#{CGI.escape(provider)}" unless provider.nil?
|
28
|
+
|
29
|
+
response = @http.get(search_query)
|
30
|
+
response["companies"].map do |company|
|
31
|
+
Passfort::Resource::CompanySummary.new(company)
|
32
|
+
end
|
33
|
+
end
|
22
34
|
end
|
23
35
|
end
|
data/lib/passfort/resource.rb
CHANGED
data/lib/passfort/version.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
{
|
2
|
+
"companies": [
|
3
|
+
{
|
4
|
+
"country": "GBR",
|
5
|
+
"name": "GOCARDLESS LTD",
|
6
|
+
"number": "07495895"
|
7
|
+
},
|
8
|
+
{
|
9
|
+
"country": "GBR",
|
10
|
+
"name": "GO CARD LIMITED",
|
11
|
+
"number": "07269277"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"country": "GBR",
|
15
|
+
"name": "GO CAR DIRECT LTD",
|
16
|
+
"number": "10333984"
|
17
|
+
}
|
18
|
+
]
|
19
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "spec_helper"
|
4
|
+
|
5
|
+
RSpec.describe Passfort::Client do
|
6
|
+
let(:client) { described_class.new(api_key: "api_key") }
|
7
|
+
|
8
|
+
describe "#company_search" do
|
9
|
+
let(:result) { client.company_search(country, query, state, provider) }
|
10
|
+
|
11
|
+
let(:country) { "GBR" }
|
12
|
+
let(:query) { "GoCard" }
|
13
|
+
let(:state) { nil }
|
14
|
+
let(:provider) { "duedil" }
|
15
|
+
|
16
|
+
before do
|
17
|
+
stub_request(
|
18
|
+
:get,
|
19
|
+
%r{/search/companies\?country=#{country}&provider=#{provider}&query=#{query}\z},
|
20
|
+
).to_return(status: 200, body: load_fixture("companies.json"))
|
21
|
+
end
|
22
|
+
|
23
|
+
it "returns an array of companies" do
|
24
|
+
expect(result).to be_a(Array)
|
25
|
+
end
|
26
|
+
|
27
|
+
it "returns expected number of companies" do
|
28
|
+
expect(result.count).to eq(3)
|
29
|
+
end
|
30
|
+
|
31
|
+
it "returns right type of company summary resource" do
|
32
|
+
expect(result[0]).to be_a(Passfort::Resource::CompanySummary)
|
33
|
+
end
|
34
|
+
|
35
|
+
it "returns maps company summary data" do
|
36
|
+
expect(result[0]).to have_attributes(
|
37
|
+
country: "GBR",
|
38
|
+
name: "GOCARDLESS LTD",
|
39
|
+
number: "07495895",
|
40
|
+
)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: passfort
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GoCardless
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-04-
|
11
|
+
date: 2018-04-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -157,6 +157,7 @@ files:
|
|
157
157
|
- lib/passfort/resource/base.rb
|
158
158
|
- lib/passfort/resource/check.rb
|
159
159
|
- lib/passfort/resource/company_data.rb
|
160
|
+
- lib/passfort/resource/company_summary.rb
|
160
161
|
- lib/passfort/resource/individual_data.rb
|
161
162
|
- lib/passfort/resource/profile.rb
|
162
163
|
- lib/passfort/resource/task.rb
|
@@ -164,6 +165,7 @@ files:
|
|
164
165
|
- passfort.gemspec
|
165
166
|
- spec/fixtures/check.json
|
166
167
|
- spec/fixtures/collected_data.json
|
168
|
+
- spec/fixtures/companies.json
|
167
169
|
- spec/fixtures/company_ownership_check/check.json
|
168
170
|
- spec/fixtures/company_ownership_check/collected_data.json
|
169
171
|
- spec/fixtures/company_ownership_check/collected_data_update_request.json
|
@@ -171,6 +173,7 @@ files:
|
|
171
173
|
- spec/fixtures/profile.json
|
172
174
|
- spec/fixtures/task.json
|
173
175
|
- spec/integration/company_ownership_check_spec.rb
|
176
|
+
- spec/passfort/client_spec.rb
|
174
177
|
- spec/passfort/endpoint/checks_spec.rb
|
175
178
|
- spec/passfort/endpoint/profiles_spec.rb
|
176
179
|
- spec/passfort/endpoint/tasks_spec.rb
|
@@ -203,6 +206,7 @@ summary: Client for the PassFort API
|
|
203
206
|
test_files:
|
204
207
|
- spec/fixtures/check.json
|
205
208
|
- spec/fixtures/collected_data.json
|
209
|
+
- spec/fixtures/companies.json
|
206
210
|
- spec/fixtures/company_ownership_check/check.json
|
207
211
|
- spec/fixtures/company_ownership_check/collected_data.json
|
208
212
|
- spec/fixtures/company_ownership_check/collected_data_update_request.json
|
@@ -210,6 +214,7 @@ test_files:
|
|
210
214
|
- spec/fixtures/profile.json
|
211
215
|
- spec/fixtures/task.json
|
212
216
|
- spec/integration/company_ownership_check_spec.rb
|
217
|
+
- spec/passfort/client_spec.rb
|
213
218
|
- spec/passfort/endpoint/checks_spec.rb
|
214
219
|
- spec/passfort/endpoint/profiles_spec.rb
|
215
220
|
- spec/passfort/endpoint/tasks_spec.rb
|