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.
Files changed (40) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +66 -17
  3. data/.github/dependabot.yml +17 -0
  4. data/.gitignore +4 -2
  5. data/.rspec +1 -1
  6. data/.rubocop.yml +18 -11
  7. data/.ruby-version +1 -1
  8. data/CHANGELOG.md +64 -45
  9. data/Gemfile +5 -5
  10. data/LICENSE.txt +22 -22
  11. data/README.md +175 -175
  12. data/creditsafe.gemspec +35 -35
  13. data/data/creditsafe-live.xml +342 -342
  14. data/data/creditsafe-test.xml +342 -342
  15. data/lib/creditsafe/client.rb +165 -158
  16. data/lib/creditsafe/{constants.rb → country.rb} +49 -49
  17. data/lib/creditsafe/errors.rb +23 -16
  18. data/lib/creditsafe/match_type.rb +115 -115
  19. data/lib/creditsafe/messages.rb +98 -97
  20. data/lib/creditsafe/namespace.rb +20 -20
  21. data/lib/creditsafe/request/company_report.rb +42 -42
  22. data/lib/creditsafe/request/find_company.rb +118 -120
  23. data/lib/creditsafe/version.rb +5 -5
  24. data/lib/creditsafe.rb +4 -4
  25. data/spec/creditsafe/client_spec.rb +431 -423
  26. data/spec/creditsafe/messages_spec.rb +76 -76
  27. data/spec/fixtures/company-report-not-found.xml +13 -13
  28. data/spec/fixtures/company-report-request.xml +1 -1
  29. data/spec/fixtures/company-report-successful.xml +582 -582
  30. data/spec/fixtures/error-fault.xml +8 -8
  31. data/spec/fixtures/error-invalid-credentials.html +31 -31
  32. data/spec/fixtures/find-companies-error-no-text.xml +11 -11
  33. data/spec/fixtures/find-companies-error.xml +11 -11
  34. data/spec/fixtures/find-companies-none-found.xml +13 -13
  35. data/spec/fixtures/find-companies-request.xml +1 -1
  36. data/spec/fixtures/find-companies-successful-multi.xml +493 -493
  37. data/spec/fixtures/find-companies-successful.xml +29 -29
  38. data/spec/spec_helper.rb +14 -14
  39. metadata +46 -46
  40. 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>