creditsafe 0.6.0 → 0.7.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 +5 -5
- data/.circleci/config.yml +66 -17
- data/.github/dependabot.yml +17 -0
- data/.gitignore +4 -2
- data/.rspec +1 -1
- data/.rubocop.yml +18 -11
- data/.ruby-version +1 -1
- data/CHANGELOG.md +64 -45
- data/Gemfile +5 -5
- data/LICENSE.txt +22 -22
- data/README.md +175 -175
- data/creditsafe.gemspec +35 -35
- data/data/creditsafe-live.xml +342 -342
- data/data/creditsafe-test.xml +342 -342
- data/lib/creditsafe/client.rb +165 -158
- data/lib/creditsafe/{constants.rb → country.rb} +49 -49
- data/lib/creditsafe/errors.rb +23 -16
- data/lib/creditsafe/match_type.rb +115 -115
- data/lib/creditsafe/messages.rb +98 -97
- data/lib/creditsafe/namespace.rb +20 -20
- data/lib/creditsafe/request/company_report.rb +42 -42
- data/lib/creditsafe/request/find_company.rb +118 -120
- data/lib/creditsafe/version.rb +5 -5
- data/lib/creditsafe.rb +4 -4
- data/spec/creditsafe/client_spec.rb +431 -423
- data/spec/creditsafe/messages_spec.rb +76 -76
- data/spec/fixtures/company-report-not-found.xml +13 -13
- data/spec/fixtures/company-report-request.xml +1 -1
- data/spec/fixtures/company-report-successful.xml +582 -582
- data/spec/fixtures/error-fault.xml +8 -8
- data/spec/fixtures/error-invalid-credentials.html +31 -31
- data/spec/fixtures/find-companies-error-no-text.xml +11 -11
- data/spec/fixtures/find-companies-error.xml +11 -11
- data/spec/fixtures/find-companies-none-found.xml +13 -13
- data/spec/fixtures/find-companies-request.xml +1 -1
- data/spec/fixtures/find-companies-successful-multi.xml +493 -493
- data/spec/fixtures/find-companies-successful.xml +29 -29
- data/spec/spec_helper.rb +14 -14
- metadata +46 -46
- data/Gemfile.lock +0 -129
@@ -1,76 +1,76 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "spec_helper"
|
4
|
-
require "creditsafe/messages"
|
5
|
-
|
6
|
-
RSpec.describe(Creditsafe::Messages) do
|
7
|
-
describe ".for_code" do
|
8
|
-
subject(:message) { described_class.for_code(code) }
|
9
|
-
|
10
|
-
context "for a valid code" do
|
11
|
-
let(:code) { "020101" }
|
12
|
-
|
13
|
-
its(:code) { is_expected.to eq(code) }
|
14
|
-
its(:message) { is_expected.to eq("Invalid credentials") }
|
15
|
-
its(:error_class) { is_expected.to eq(Creditsafe::AccountError) }
|
16
|
-
end
|
17
|
-
|
18
|
-
context "for a code without leading zero" do
|
19
|
-
let(:code) { "20101" }
|
20
|
-
|
21
|
-
its(:code) { is_expected.to eq("0#{code}") }
|
22
|
-
its(:message) { is_expected.to eq("Invalid credentials") }
|
23
|
-
its(:error_class) { is_expected.to eq(Creditsafe::AccountError) }
|
24
|
-
end
|
25
|
-
|
26
|
-
context "for an unknown code" do
|
27
|
-
let(:code) { "999999" }
|
28
|
-
|
29
|
-
its(:code) { is_expected.to eq(code) }
|
30
|
-
its(:message) { is_expected.to eq("Unknown error") }
|
31
|
-
its(:error_class) { is_expected.to eq(Creditsafe::UnknownApiError) }
|
32
|
-
end
|
33
|
-
|
34
|
-
context "for an empty code" do
|
35
|
-
let(:code) { "" }
|
36
|
-
|
37
|
-
it "was passed the wrong parameters" do
|
38
|
-
expect { subject(:message) }.to raise_error(ArgumentError)
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
|
43
|
-
describe(Creditsafe::Messages::Message) do
|
44
|
-
subject(:message) { described_class.new(code: code, message: text, error: error) }
|
45
|
-
|
46
|
-
let(:text) { "Error message" }
|
47
|
-
let(:code) { "020101" }
|
48
|
-
let(:error) { true }
|
49
|
-
|
50
|
-
describe "#error_class" do
|
51
|
-
subject { message.error_class }
|
52
|
-
|
53
|
-
context "when there is no error" do
|
54
|
-
let(:error) { false }
|
55
|
-
|
56
|
-
it { is_expected.to be_nil }
|
57
|
-
end
|
58
|
-
|
59
|
-
context "when there is an error" do
|
60
|
-
let(:error) { true }
|
61
|
-
|
62
|
-
context "for a processing error code" do
|
63
|
-
let(:code) { "040102" }
|
64
|
-
|
65
|
-
it { is_expected.to eq(Creditsafe::ProcessingError) }
|
66
|
-
end
|
67
|
-
|
68
|
-
context "for an unknown error code" do
|
69
|
-
let(:code) { "060102" }
|
70
|
-
|
71
|
-
it { is_expected.to eq(Creditsafe::UnknownApiError) }
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|
76
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "spec_helper"
|
4
|
+
require "creditsafe/messages"
|
5
|
+
|
6
|
+
RSpec.describe(Creditsafe::Messages) do
|
7
|
+
describe ".for_code" do
|
8
|
+
subject(:message) { described_class.for_code(code) }
|
9
|
+
|
10
|
+
context "for a valid code" do
|
11
|
+
let(:code) { "020101" }
|
12
|
+
|
13
|
+
its(:code) { is_expected.to eq(code) }
|
14
|
+
its(:message) { is_expected.to eq("Invalid credentials") }
|
15
|
+
its(:error_class) { is_expected.to eq(Creditsafe::AccountError) }
|
16
|
+
end
|
17
|
+
|
18
|
+
context "for a code without leading zero" do
|
19
|
+
let(:code) { "20101" }
|
20
|
+
|
21
|
+
its(:code) { is_expected.to eq("0#{code}") }
|
22
|
+
its(:message) { is_expected.to eq("Invalid credentials") }
|
23
|
+
its(:error_class) { is_expected.to eq(Creditsafe::AccountError) }
|
24
|
+
end
|
25
|
+
|
26
|
+
context "for an unknown code" do
|
27
|
+
let(:code) { "999999" }
|
28
|
+
|
29
|
+
its(:code) { is_expected.to eq(code) }
|
30
|
+
its(:message) { is_expected.to eq("Unknown error") }
|
31
|
+
its(:error_class) { is_expected.to eq(Creditsafe::UnknownApiError) }
|
32
|
+
end
|
33
|
+
|
34
|
+
context "for an empty code" do
|
35
|
+
let(:code) { "" }
|
36
|
+
|
37
|
+
it "was passed the wrong parameters" do
|
38
|
+
expect { subject(:message) }.to raise_error(ArgumentError)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
describe(Creditsafe::Messages::Message) do
|
44
|
+
subject(:message) { described_class.new(code: code, message: text, error: error) }
|
45
|
+
|
46
|
+
let(:text) { "Error message" }
|
47
|
+
let(:code) { "020101" }
|
48
|
+
let(:error) { true }
|
49
|
+
|
50
|
+
describe "#error_class" do
|
51
|
+
subject { message.error_class }
|
52
|
+
|
53
|
+
context "when there is no error" do
|
54
|
+
let(:error) { false }
|
55
|
+
|
56
|
+
it { is_expected.to be_nil }
|
57
|
+
end
|
58
|
+
|
59
|
+
context "when there is an error" do
|
60
|
+
let(:error) { true }
|
61
|
+
|
62
|
+
context "for a processing error code" do
|
63
|
+
let(:code) { "040102" }
|
64
|
+
|
65
|
+
it { is_expected.to eq(Creditsafe::ProcessingError) }
|
66
|
+
end
|
67
|
+
|
68
|
+
context "for an unknown error code" do
|
69
|
+
let(:code) { "060102" }
|
70
|
+
|
71
|
+
it { is_expected.to eq(Creditsafe::UnknownApiError) }
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
@@ -1,13 +1,13 @@
|
|
1
|
-
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
|
2
|
-
<s:Body>
|
3
|
-
<RetrieveCompanyOnlineReportResponse xmlns="http://www.creditsafe.com/globaldata/operations">
|
4
|
-
<RetrieveCompanyOnlineReportResult xmlns:q1="http://www.creditsafe.com/globaldata/datatypes/reports">
|
5
|
-
<Messages xmlns="http://www.creditsafe.com/globaldata/datatypes">
|
6
|
-
<Message Type="Information" Code="20103">Service access contract expires on 2015-07-07 00:00 (UTC). Please contact your account manager regarding access extension.</Message>
|
7
|
-
<Message Type="Information" Code="10101">Company number [074958955]" not found</Message>
|
8
|
-
<Message Type="Information" Code="10103">Specified report is unavailable.</Message>
|
9
|
-
</Messages>
|
10
|
-
</RetrieveCompanyOnlineReportResult>
|
11
|
-
</RetrieveCompanyOnlineReportResponse>
|
12
|
-
</s:Body>
|
13
|
-
</s:Envelope>
|
1
|
+
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
|
2
|
+
<s:Body>
|
3
|
+
<RetrieveCompanyOnlineReportResponse xmlns="http://www.creditsafe.com/globaldata/operations">
|
4
|
+
<RetrieveCompanyOnlineReportResult xmlns:q1="http://www.creditsafe.com/globaldata/datatypes/reports">
|
5
|
+
<Messages xmlns="http://www.creditsafe.com/globaldata/datatypes">
|
6
|
+
<Message Type="Information" Code="20103">Service access contract expires on 2015-07-07 00:00 (UTC). Please contact your account manager regarding access extension.</Message>
|
7
|
+
<Message Type="Information" Code="10101">Company number [074958955]" not found</Message>
|
8
|
+
<Message Type="Information" Code="10103">Specified report is unavailable.</Message>
|
9
|
+
</Messages>
|
10
|
+
</RetrieveCompanyOnlineReportResult>
|
11
|
+
</RetrieveCompanyOnlineReportResponse>
|
12
|
+
</s:Body>
|
13
|
+
</s:Envelope>
|
@@ -1 +1 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:oper="http://www.creditsafe.com/globaldata/operations" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dat="http://www.creditsafe.com/globaldata/datatypes" xmlns:cred="http://schemas.datacontract.org/2004/07/Creditsafe.GlobalData"><soapenv:Body><oper:RetrieveCompanyOnlineReport><oper:companyId>GB003/0/07495895</oper:companyId><oper:reportType>Full</oper:reportType><oper:language>EN</oper:language><oper:customData><dat:Entries><dat:Entry key="foo">bar</dat:Entry><dat:Entry key="bar">baz</dat:Entry></dat:Entries></oper:customData></oper:RetrieveCompanyOnlineReport></soapenv:Body></soapenv:Envelope>
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:oper="http://www.creditsafe.com/globaldata/operations" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:dat="http://www.creditsafe.com/globaldata/datatypes" xmlns:cred="http://schemas.datacontract.org/2004/07/Creditsafe.GlobalData"><soapenv:Body><oper:RetrieveCompanyOnlineReport><oper:companyId>GB003/0/07495895</oper:companyId><oper:reportType>Full</oper:reportType><oper:language>EN</oper:language><oper:customData><dat:Entries><dat:Entry key="foo">bar</dat:Entry><dat:Entry key="bar">baz</dat:Entry></dat:Entries></oper:customData></oper:RetrieveCompanyOnlineReport></soapenv:Body></soapenv:Envelope>
|