neustar-ws_get_data 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,6 @@
1
+ module Neustar
2
+ module WsGetData
3
+ # :nodoc:
4
+ VERSION = "0.0.1"
5
+ end
6
+ end
@@ -0,0 +1,30 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "neustar-ws_get_data/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "neustar-ws_get_data"
7
+ s.version = Neustar::WsGetData::VERSION
8
+
9
+ s.authors = ["TMX Credit", "Zachary Belzer"]
10
+ s.date = "2013-10-23"
11
+ s.description = "This gem wraps the SOAP interface for Neustar's WS-GetData Services. It supports both interactive and batch queries."
12
+ s.email = ["rubygems@tmxcredit.com", "zach@tmxcredit.com"]
13
+ s.homepage = "http://github.com/TMXCredit/neustar-ws_get_data"
14
+ s.licenses = ["MIT"]
15
+ s.summary = "Ruby wrapper for Neustar's WS-GetData Services"
16
+
17
+ s.files = `git ls-files`.split("\n")
18
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
+ s.require_paths = ["lib"]
21
+
22
+ s.add_runtime_dependency(%q<savon>, ["~> 2.2"])
23
+
24
+ s.add_development_dependency(%q<yard>, [">= 0"])
25
+ s.add_development_dependency(%q<bundler>, [">= 0"])
26
+ s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
27
+ s.add_development_dependency(%q<rspec>, ["~> 2.14.0"])
28
+ s.add_development_dependency(%q<metric_fu>, [">= 0"])
29
+ end
30
+
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
5
+ <soap:Body>
6
+ <soap:Fault>
7
+ <faultcode>soap:Client</faultcode>
8
+ <faultstring>Access Violation - Invalid Origination</faultstring>
9
+ <detail />
10
+ </soap:Fault>
11
+ </soap:Body>
12
+ </soap:Envelope>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
5
+ <soap:Body>
6
+ <soap:Fault>
7
+ <faultcode>soap:Client</faultcode>
8
+ <detail />
9
+ </soap:Fault>
10
+ </soap:Body>
11
+ </soap:Envelope>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
5
+ <soap:Body>
6
+ <queryResponse xmlns="http://TARGUSinfo.com/WS-GetData">
7
+ <response>
8
+ <transId>374265</transId>
9
+ <errorCode>0</errorCode>
10
+ <errorValue />
11
+ <result>
12
+ <element>
13
+ <id>1320</id>
14
+ <errorCode>0</errorCode>
15
+ <value>N,U,A1,W</value>
16
+ </element>
17
+ </result>
18
+ </response>
19
+ </queryResponse>
20
+ </soap:Body>
21
+ </soap:Envelope>
@@ -0,0 +1,139 @@
1
+ require 'spec_helper'
2
+
3
+ module Neustar::WsGetData
4
+ describe Client do
5
+ let(:credentials) { { :username => 'foo',
6
+ :password => 'bar',
7
+ :service_id => 123 } }
8
+ let(:client) { Client.new(credentials) }
9
+ let(:savon_client) { double('Savon Client') }
10
+ let(:service) { :query }
11
+
12
+ let(:successful_response) { double(Savon::Response, :body => body) }
13
+ let(:body) do
14
+ {
15
+ :query_response => {
16
+ :response => {
17
+ :trans_id => "12345",
18
+ :error_code => "0",
19
+ :error_value => nil,
20
+ :result => {
21
+ :element => {
22
+ :id => "1320",
23
+ :error_code => "0",
24
+ :value => "N,U,A1,W"
25
+ }
26
+ }
27
+ },
28
+ :@xmlns => "http://TARGUSinfo.com/WS-GetData"
29
+ }
30
+ }
31
+ end
32
+
33
+ before do
34
+ Savon.stub(:client).and_return(savon_client)
35
+ end
36
+
37
+ describe "operations" do
38
+ it "should fetch the available operations from Savon" do
39
+ operations = [:super, :duper]
40
+
41
+ savon_client.should_receive(:operations).and_return(operations)
42
+ Savon.should_receive(:client).and_return(savon_client)
43
+
44
+ client.operations.should == operations
45
+ end
46
+ end
47
+
48
+ describe "query" do
49
+ it "should call with query as a service" do
50
+ options = {:foo => 'bar'}
51
+ client.should_receive(:call).with(:query, options)
52
+
53
+ client.query(options)
54
+ end
55
+ end
56
+
57
+ describe "batch_query" do
58
+ it "should call with batch_query as a service" do
59
+ options = {:foo => 'bar'}
60
+ client.should_receive(:call).with(:batch_query, options)
61
+
62
+ client.batch_query(options)
63
+ end
64
+ end
65
+
66
+ describe "call" do
67
+ it "should execute #call on the Savon client and process the response" do
68
+ result = "mock result"
69
+
70
+ savon_client.
71
+ should_receive(:call).
72
+ with(service, hash_including(:message => anything)).
73
+ and_return(successful_response)
74
+
75
+ client.should_receive(:process_response).
76
+ with(service, successful_response).
77
+ and_return(result)
78
+ client.call(service, {}).should == result
79
+ end
80
+
81
+ it "should re-raise Savon::SOAPFault as a native exception" do
82
+ savon_client.
83
+ should_receive(:call).
84
+ and_raise(soap_fault('fault.xml'))
85
+
86
+ expect {
87
+ client.call(service, {})
88
+ }.to raise_error( Neustar::Error,
89
+ "Access Violation - Invalid Origination" )
90
+ end
91
+
92
+ it "should Neustar::Error for unknown errors" do
93
+ savon_client.
94
+ should_receive(:call).
95
+ and_raise(soap_fault('improper_fault.xml'))
96
+
97
+ expect {
98
+ client.call(service, {})
99
+ }.to raise_error( Neustar::Error,
100
+ "Unknown Error" )
101
+ end
102
+ end
103
+
104
+ describe "process_response" do
105
+ it "should extract a base query response" do
106
+ client.process_response(:query, successful_response).should == \
107
+ {
108
+ :trans_id => "12345",
109
+ :error_code => "0",
110
+ :error_value => nil,
111
+ :result => {
112
+ :element => {
113
+ :id => "1320",
114
+ :error_code => "0",
115
+ :value => "N,U,A1,W"
116
+ }
117
+ }
118
+ }
119
+ end
120
+ end
121
+
122
+ describe "origination_params" do
123
+ it "should set the username and password in the origination field" do
124
+ params = client.origination_params
125
+ params[:serviceId].should == "123"
126
+
127
+ origination = params[:origination]
128
+ origination[:username].should == "foo"
129
+ origination[:password].should == "bar"
130
+ end
131
+ end
132
+
133
+ describe "build_transaction_id" do
134
+ it "should generate an integer identifier" do
135
+ client.build_transaction_id.should be_a(Integer)
136
+ end
137
+ end
138
+ end
139
+ end
@@ -0,0 +1,96 @@
1
+ require 'spec_helper'
2
+
3
+ module Neustar::WsGetData
4
+ describe PhoneAttributes do
5
+ let(:client) { double("mock client") }
6
+ let(:phone_number) { '5555555555' }
7
+
8
+ describe "query" do
9
+ it "should send the client and the parameterized options to execute_request" do
10
+ expected_params = hash_including( :phone_number => phone_number,
11
+ :indicators => '1,2,3,4' )
12
+ raw_response = "mock raw response"
13
+ response = "mock processed response"
14
+
15
+ PhoneAttributes.should_receive(:execute_request).
16
+ with(client, expected_params).
17
+ and_return(raw_response)
18
+ PhoneAttributes.should_receive(:process_response).
19
+ with(raw_response, expected_params).
20
+ and_return(response)
21
+ PhoneAttributes.query(client, phone_number).should == response
22
+ end
23
+ end
24
+
25
+ describe "execute_request" do
26
+ it "should execute the query on the client with the correctly assembled parameters" do
27
+ indicators = "2,3"
28
+
29
+ client.should_receive(:query).with({
30
+ :elements => { :id => 1320 },
31
+ :serviceKeys => {
32
+ :serviceKey => [
33
+ {
34
+ :id => 1,
35
+ :value => phone_number
36
+ },
37
+ {
38
+ :id => 599,
39
+ :value => indicators
40
+ }
41
+ ]
42
+ }
43
+ })
44
+
45
+ PhoneAttributes.execute_request(client, :phone_number => phone_number,
46
+ :indicators => indicators)
47
+ end
48
+ end
49
+
50
+ describe "process_response" do
51
+ it "should raise OutOfDomainError" do
52
+ raw_response = {:error_code => PhoneAttributes::OUT_OF_DOMAIN_ERROR}
53
+ expect {
54
+ PhoneAttributes.process_response( raw_response,
55
+ :phone_number => phone_number )
56
+ }.to raise_error(PhoneAttributes::OutOfDomainError, phone_number)
57
+ end
58
+
59
+ it "should parse out responses from each category" do
60
+ raw_response = {:result => { :element => { :value => "N,D,I2,W" } } }
61
+ response = PhoneAttributes.process_response(
62
+ raw_response,
63
+ :phone_number => phone_number
64
+ )
65
+ response.should == {
66
+ :prepaid_phone => false,
67
+ :business_phone => :dual_phone,
68
+ :phone_in_service => "Inactive for 2 months",
69
+ :phone_type => :wireless
70
+ }
71
+ end
72
+ end
73
+
74
+ describe "parse_indicators" do
75
+ it "should return all indicators if none are supplied" do
76
+ PhoneAttributes.parse_indicators([]).should == "1,2,3,4"
77
+ end
78
+
79
+ it "should return correct individual mappings" do
80
+ PhoneAttributes.parse_indicators([:prepaid_phone] ).should == "1"
81
+ PhoneAttributes.parse_indicators([:business_phone] ).should == "2"
82
+ PhoneAttributes.parse_indicators([:phone_in_service]).should == "3"
83
+ PhoneAttributes.parse_indicators([:phone_type] ).should == "4"
84
+ end
85
+
86
+ it "should combine mappings" do
87
+ PhoneAttributes.parse_indicators([:prepaid_phone, :business_phone]).
88
+ should == "1,2"
89
+ PhoneAttributes.parse_indicators([:business_phone,
90
+ :phone_in_service,
91
+ :phone_type]).
92
+ should == "2,3,4"
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,29 @@
1
+ require 'simplecov'
2
+ SimpleCov.start do
3
+ add_filter '/spec/'
4
+ end
5
+
6
+ require 'neustar-ws_get_data'
7
+
8
+ Dir[File.expand_path("../support/*", __FILE__)].each do |file|
9
+ puts file
10
+ require file
11
+ end
12
+
13
+ # This file was generated by the `rspec --init` command. Conventionally, all
14
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
15
+ # Require this file using `require "spec_helper"` to ensure that it is only
16
+ # loaded once.
17
+ #
18
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
19
+ RSpec.configure do |config|
20
+ config.treat_symbols_as_metadata_keys_with_true_values = true
21
+ config.run_all_when_everything_filtered = true
22
+ config.filter_run :focus
23
+
24
+ # Run specs in random order to surface order dependencies. If you find an
25
+ # order dependency and want to debug it, you can fix the order by providing
26
+ # the seed, which is printed after each run.
27
+ # --seed 1234
28
+ config.order = 'random'
29
+ end
@@ -0,0 +1,25 @@
1
+ module SavonSupport
2
+ def soap_fault(name)
3
+ Savon::SOAPFault.new(new_response(:body => load_fixture(name)), nori)
4
+ end
5
+
6
+ def load_fixture(name)
7
+ File.read(File.expand_path("../../fixtures/#{name}", __FILE__))
8
+ end
9
+
10
+ def new_response(options = {})
11
+ defaults = { :code => 500, :headers => {}, :body => '' }
12
+ response = defaults.merge options
13
+
14
+ HTTPI::Response.new response[:code], response[:headers], response[:body]
15
+ end
16
+
17
+ def nori
18
+ Nori.new( :strip_namespaces => true,
19
+ :convert_tags_to => lambda { |tag| tag.snakecase.to_sym } )
20
+ end
21
+ end
22
+
23
+ RSpec.configure do |config|
24
+ config.include(SavonSupport)
25
+ end
@@ -0,0 +1,1028 @@
1
+ ---
2
+ :cane:
3
+ :total_violations: 20
4
+ :violations:
5
+ :line_style:
6
+ - :line: lib/neustar-ws_get_data/client.rb:10
7
+ :description: Line is >80 characters (85)
8
+ - :line: lib/neustar-ws_get_data/client.rb:11
9
+ :description: Line is >80 characters (85)
10
+ - :line: lib/neustar-ws_get_data/client.rb:12
11
+ :description: Line is >80 characters (89)
12
+ - :line: lib/neustar-ws_get_data/client.rb:24
13
+ :description: Line contains trailing whitespace
14
+ - :line: lib/neustar-ws_get_data/client.rb:32
15
+ :description: Line contains trailing whitespace
16
+ - :line: lib/neustar-ws_get_data/elements/phone_attributes.rb:162
17
+ :description: Line contains trailing whitespace
18
+ - :line: spec/lib/neustar-ws_get_data/client_spec.rb:5
19
+ :description: Line is >80 characters (86)
20
+ - :line: spec/lib/neustar-ws_get_data/client_spec.rb:73
21
+ :description: Line is >80 characters (102)
22
+ - :line: spec/lib/neustar-ws_get_data/client_spec.rb:84
23
+ :description: Line is >80 characters (82)
24
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:10
25
+ :description: Line is >80 characters (97)
26
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:14
27
+ :description: Line is >80 characters (111)
28
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:15
29
+ :description: Line is >80 characters (114)
30
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:40
31
+ :description: Line is >80 characters (105)
32
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:48
33
+ :description: Line is >80 characters (87)
34
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:54
35
+ :description: Line is >80 characters (96)
36
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:77
37
+ :description: Line is >80 characters (91)
38
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:78
39
+ :description: Line is >80 characters (109)
40
+ - :line: spec/lib/neustar-ws_get_data/elements/phone_attributes_spec.rb:83
41
+ :description: Line is >80 characters (87)
42
+ - :line: spec/spec_helper.rb:3
43
+ :description: Line is >80 characters (85)
44
+ - :line: spec/support/savon.rb:18
45
+ :description: Line is >80 characters (98)
46
+ :churn:
47
+ :changes: []
48
+ :class_churn: []
49
+ :method_churn: []
50
+ :changed_files: []
51
+ :changed_classes: []
52
+ :changed_methods: []
53
+ :flay:
54
+ :total_score: '0'
55
+ :matches: []
56
+ :flog:
57
+ :total: 81.56361065071735
58
+ :average: 4.797859450042197
59
+ :method_containers:
60
+ - :name: Neustar::WsGetData::PhoneAttributes
61
+ :path: lib/neustar-ws_get_data/elements/phone_attributes.rb
62
+ :total_score: 30.12820176750361
63
+ :highest_score: 14.160155366379284
64
+ :average_score: 6.025640353500722
65
+ :methods:
66
+ Neustar::WsGetData::PhoneAttributes#process_response:
67
+ :operators:
68
+ :branch: 4.9
69
+ :[]: 6.7
70
+ :==: 1.0
71
+ :raise: 1.1
72
+ :assignment: 3.900000000000001
73
+ :each: 1.2000000000000002
74
+ :detect: 1.3000000000000003
75
+ :index: 1.4000000000000004
76
+ :score: 14.160155366379284
77
+ :path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
78
+ Neustar::WsGetData::PhoneAttributes#parse_indicators:
79
+ :operators:
80
+ :assignment: 1.0
81
+ :branch: 1.0
82
+ :empty?: 1.0
83
+ :values: 1.1
84
+ :values_at: 1.1
85
+ :join: 1.0
86
+ :score: 4.431703961232068
87
+ :path: lib/neustar-ws_get_data/elements/phone_attributes.rb:152
88
+ Neustar::WsGetData::PhoneAttributes#query:
89
+ :operators:
90
+ :assignment: 3.0
91
+ :parse_indicators: 1.0
92
+ :execute_request: 1.2
93
+ :process_response: 1.0
94
+ :score: 4.386342439892262
95
+ :path: lib/neustar-ws_get_data/elements/phone_attributes.rb:90
96
+ Neustar::WsGetData::PhoneAttributes#none:
97
+ :operators:
98
+ :extend: 2.0
99
+ :lit_fixnum: 1.75
100
+ :score: 3.75
101
+ :path:
102
+ Neustar::WsGetData::PhoneAttributes#execute_request:
103
+ :operators:
104
+ :[]: 2.4
105
+ :query: 1.0
106
+ :score: 3.4
107
+ :path: lib/neustar-ws_get_data/elements/phone_attributes.rb:107
108
+ - :name: main
109
+ :path: ''
110
+ :total_score: 11.802965729002182
111
+ :highest_score: 11.802965729002182
112
+ :average_score: 11.802965729002182
113
+ :methods:
114
+ main#none:
115
+ :operators:
116
+ :require: 5.6000000000000005
117
+ :expand_path: 3.7
118
+ :assignment: 1.1
119
+ :branch: 1.1
120
+ :[]: 1.3
121
+ :each: 1.1
122
+ :score: 11.802965729002182
123
+ :path:
124
+ - :name: Neustar::WsGetData::Client
125
+ :path: lib/neustar-ws_get_data/client.rb
126
+ :total_score: 39.63244315421155
127
+ :highest_score: 11.521284650593442
128
+ :average_score: 3.6029493776555954
129
+ :methods:
130
+ Neustar::WsGetData::Client#call:
131
+ :operators:
132
+ :assignment: 4.300000000000001
133
+ :branch: 2.0
134
+ :fetch: 1.0
135
+ :build_transaction_id: 1.1
136
+ :origination_params: 1.4
137
+ :merge: 2.2
138
+ :call: 1.2000000000000002
139
+ :process_response: 1.2000000000000002
140
+ :extract_fault_message: 1.3
141
+ :raise: 1.1
142
+ :score: 11.521284650593442
143
+ :path: lib/neustar-ws_get_data/client.rb:42
144
+ Neustar::WsGetData::Client#initialize:
145
+ :operators:
146
+ :assignment: 5.300000000000001
147
+ :client: 1.0
148
+ :branch: 3.0
149
+ :[]: 3.3000000000000003
150
+ :raise: 3.3000000000000003
151
+ :score: 9.739096467332072
152
+ :path: lib/neustar-ws_get_data/client.rb:8
153
+ Neustar::WsGetData::Client#extract_fault_message:
154
+ :operators:
155
+ :assignment: 2.1
156
+ :to_hash: 1.0
157
+ :[]: 5.5
158
+ :branch: 2.0
159
+ :score: 7.117583859709698
160
+ :path: lib/neustar-ws_get_data/client.rb:100
161
+ Neustar::WsGetData::Client#process_response:
162
+ :operators:
163
+ :assignment: 1.0
164
+ :body: 1.2
165
+ :[]: 2.1
166
+ :branch: 1.0
167
+ :score: 3.590264614203248
168
+ :path: lib/neustar-ws_get_data/client.rb:63
169
+ Neustar::WsGetData::Client#phone_attributes:
170
+ :operators:
171
+ :assignment: 1.0
172
+ :query: 1.0
173
+ :score: 1.4142135623730951
174
+ :path: lib/neustar-ws_get_data/client.rb:73
175
+ Neustar::WsGetData::Client#none:
176
+ :operators:
177
+ :lit_fixnum: 0.25
178
+ :private: 1.0
179
+ :score: 1.25
180
+ :path:
181
+ Neustar::WsGetData::Client#operations:
182
+ :operators:
183
+ :operations: 1.0
184
+ :score: 1.0
185
+ :path: lib/neustar-ws_get_data/client.rb:18
186
+ Neustar::WsGetData::Client#build_transaction_id:
187
+ :operators:
188
+ :random_number: 1.0
189
+ :score: 1.0
190
+ :path: lib/neustar-ws_get_data/client.rb:92
191
+ Neustar::WsGetData::Client#origination_params:
192
+ :operators:
193
+ :to_s: 1.0
194
+ :score: 1.0
195
+ :path: lib/neustar-ws_get_data/client.rb:80
196
+ Neustar::WsGetData::Client#query:
197
+ :operators:
198
+ :call: 1.0
199
+ :score: 1.0
200
+ :path: lib/neustar-ws_get_data/client.rb:26
201
+ Neustar::WsGetData::Client#batch_query:
202
+ :operators:
203
+ :call: 1.0
204
+ :score: 1.0
205
+ :path: lib/neustar-ws_get_data/client.rb:34
206
+ :saikuro:
207
+ :files:
208
+ - :classes:
209
+ - :class_name: ''
210
+ :complexity: 0
211
+ :lines: 1
212
+ :methods: []
213
+ - :class_name: Neustar
214
+ :complexity: 13
215
+ :lines: 109
216
+ :methods:
217
+ - :name: Neustar#call
218
+ :complexity: 3
219
+ :lines: 13
220
+ - :name: Neustar#extract_fault_message
221
+ :complexity: 2
222
+ :lines: 9
223
+ - :name: Neustar#process_response
224
+ :complexity: 1
225
+ :lines: 3
226
+ - :name: Neustar#phone_attributes
227
+ :complexity: 1
228
+ :lines: 2
229
+ - :name: Neustar#origination_params
230
+ :complexity: 1
231
+ :lines: 7
232
+ - :name: Neustar#build_transaction_id
233
+ :complexity: 1
234
+ :lines: 2
235
+ - :name: Neustar#batch_query
236
+ :complexity: 1
237
+ :lines: 2
238
+ - :name: Neustar#query
239
+ :complexity: 1
240
+ :lines: 2
241
+ - :name: Neustar#operations
242
+ :complexity: 1
243
+ :lines: 2
244
+ - :name: Neustar#initialize
245
+ :complexity: 1
246
+ :lines: 5
247
+ :filename: lib/neustar-ws_get_data/client.rb
248
+ - :classes:
249
+ - :class_name: ''
250
+ :complexity: 0
251
+ :lines: 1
252
+ :methods: []
253
+ - :class_name: Neustar
254
+ :complexity: 9
255
+ :lines: 155
256
+ :methods:
257
+ - :name: Neustar#process_response
258
+ :complexity: 5
259
+ :lines: 15
260
+ - :name: Neustar#parse_indicators
261
+ :complexity: 2
262
+ :lines: 9
263
+ - :name: Neustar#execute_request
264
+ :complexity: 1
265
+ :lines: 16
266
+ - :name: Neustar#query
267
+ :complexity: 1
268
+ :lines: 9
269
+ - :class_name: Neustar::OutOfDomainError
270
+ :complexity: 0
271
+ :lines: 0
272
+ :methods: []
273
+ :filename: lib/neustar-ws_get_data/elements/phone_attributes.rb
274
+ - :classes:
275
+ - :class_name: ''
276
+ :complexity: 1
277
+ :lines: 0
278
+ :methods: []
279
+ - :class_name: Neustar
280
+ :complexity: 0
281
+ :lines: 9
282
+ :methods: []
283
+ - :class_name: Neustar::WsGetData
284
+ :complexity: 0
285
+ :lines: 3
286
+ :methods: []
287
+ - :class_name: Neustar::Error
288
+ :complexity: 0
289
+ :lines: 1
290
+ :methods: []
291
+ - :class_name: Neustar::ConfigurationError
292
+ :complexity: 0
293
+ :lines: 1
294
+ :methods: []
295
+ :filename: lib/neustar-ws_get_data.rb
296
+ - :classes:
297
+ - :class_name: Neustar
298
+ :complexity: 0
299
+ :lines: 3
300
+ :methods: []
301
+ :filename: lib/neustar-ws_get_data/version.rb
302
+ :classes:
303
+ - :name: Neustar
304
+ :complexity: 13
305
+ :lines: 109
306
+ :defs:
307
+ - :name: Neustar#initialize
308
+ :complexity: 1
309
+ :lines: 5
310
+ - :name: Neustar#operations
311
+ :complexity: 1
312
+ :lines: 2
313
+ - :name: Neustar#query
314
+ :complexity: 1
315
+ :lines: 2
316
+ - :name: Neustar#batch_query
317
+ :complexity: 1
318
+ :lines: 2
319
+ - :name: Neustar#call
320
+ :complexity: 3
321
+ :lines: 13
322
+ - :name: Neustar#process_response
323
+ :complexity: 1
324
+ :lines: 3
325
+ - :name: Neustar#phone_attributes
326
+ :complexity: 1
327
+ :lines: 2
328
+ - :name: Neustar#origination_params
329
+ :complexity: 1
330
+ :lines: 7
331
+ - :name: Neustar#build_transaction_id
332
+ :complexity: 1
333
+ :lines: 2
334
+ - :name: Neustar#extract_fault_message
335
+ :complexity: 2
336
+ :lines: 9
337
+ - :name: Neustar
338
+ :complexity: 9
339
+ :lines: 155
340
+ :defs:
341
+ - :name: Neustar#query
342
+ :complexity: 1
343
+ :lines: 9
344
+ - :name: Neustar#execute_request
345
+ :complexity: 1
346
+ :lines: 16
347
+ - :name: Neustar#process_response
348
+ :complexity: 5
349
+ :lines: 15
350
+ - :name: Neustar#parse_indicators
351
+ :complexity: 2
352
+ :lines: 9
353
+ - :name: ''
354
+ :complexity: 1
355
+ :lines: 0
356
+ - :name: Neustar
357
+ :complexity: 0
358
+ :lines: 3
359
+ - :name: Neustar
360
+ :complexity: 0
361
+ :lines: 9
362
+ - :name: Neustar::WsGetData
363
+ :complexity: 0
364
+ :lines: 3
365
+ - :name: Neustar::OutOfDomainError
366
+ :complexity: 0
367
+ :lines: 0
368
+ - :name: Neustar::Error
369
+ :complexity: 0
370
+ :lines: 1
371
+ - :name: ''
372
+ :complexity: 0
373
+ :lines: 1
374
+ - :name: Neustar::ConfigurationError
375
+ :complexity: 0
376
+ :lines: 1
377
+ - :name: ''
378
+ :complexity: 0
379
+ :lines: 1
380
+ :methods:
381
+ - :name: Neustar#process_response
382
+ :complexity: 5
383
+ :lines: 15
384
+ - :name: Neustar#call
385
+ :complexity: 3
386
+ :lines: 13
387
+ - :name: Neustar#parse_indicators
388
+ :complexity: 2
389
+ :lines: 9
390
+ - :name: Neustar#extract_fault_message
391
+ :complexity: 2
392
+ :lines: 9
393
+ - :name: Neustar#origination_params
394
+ :complexity: 1
395
+ :lines: 7
396
+ - :name: Neustar#build_transaction_id
397
+ :complexity: 1
398
+ :lines: 2
399
+ - :name: Neustar#query
400
+ :complexity: 1
401
+ :lines: 9
402
+ - :name: Neustar#phone_attributes
403
+ :complexity: 1
404
+ :lines: 2
405
+ - :name: Neustar#process_response
406
+ :complexity: 1
407
+ :lines: 3
408
+ - :name: Neustar#execute_request
409
+ :complexity: 1
410
+ :lines: 16
411
+ - :name: Neustar#batch_query
412
+ :complexity: 1
413
+ :lines: 2
414
+ - :name: Neustar#query
415
+ :complexity: 1
416
+ :lines: 2
417
+ - :name: Neustar#operations
418
+ :complexity: 1
419
+ :lines: 2
420
+ - :name: Neustar#initialize
421
+ :complexity: 1
422
+ :lines: 5
423
+ :reek:
424
+ :matches:
425
+ - :file_path: lib/neustar-ws_get_data.rb
426
+ :code_smells: []
427
+ - :file_path: lib/neustar-ws_get_data/client.rb
428
+ :code_smells:
429
+ - :method: '[102,'
430
+ :message: 104]:Neustar::WsGetData::Client#extract_fault_message calls data[:fault]
431
+ twice
432
+ :type: DuplicateMethodCall
433
+ - :method: '[104,'
434
+ :message: 105]:Neustar::WsGetData::Client#extract_fault_message calls fault[:faultstring]
435
+ twice
436
+ :type: DuplicateMethodCall
437
+ - :method: '[100]:Neustar::WsGetData::Client#extract_fault_message'
438
+ :message: doesn't depend on instance state
439
+ :type: UtilityFunction
440
+ - :method: '[100]:Neustar::WsGetData::Client#extract_fault_message'
441
+ :message: refers to data more than self
442
+ :type: FeatureEnvy
443
+ - :method: '[100]:Neustar::WsGetData::Client#extract_fault_message'
444
+ :message: refers to fault more than self
445
+ :type: FeatureEnvy
446
+ - :method: '[63]:Neustar::WsGetData::Client#process_response'
447
+ :message: doesn't depend on instance state
448
+ :type: UtilityFunction
449
+ - :method: '[63]:Neustar::WsGetData::Client#process_response'
450
+ :message: refers to response more than self
451
+ :type: FeatureEnvy
452
+ - :method: '[63]:Neustar::WsGetData::Client#process_response'
453
+ :message: refers to response_wrapper more than self
454
+ :type: FeatureEnvy
455
+ - :file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb
456
+ :code_smells:
457
+ - :method: '[107]:Neustar::WsGetData::PhoneAttributes#execute_request'
458
+ :message: doesn't depend on instance state
459
+ :type: UtilityFunction
460
+ - :method: '[107]:Neustar::WsGetData::PhoneAttributes#execute_request'
461
+ :message: refers to params more than self
462
+ :type: FeatureEnvy
463
+ - :method: '[152]:Neustar::WsGetData::PhoneAttributes#parse_indicators'
464
+ :message: doesn't depend on instance state
465
+ :type: UtilityFunction
466
+ - :method: '[152]:Neustar::WsGetData::PhoneAttributes#parse_indicators'
467
+ :message: refers to indicators more than self
468
+ :type: FeatureEnvy
469
+ - :method: '[152]:Neustar::WsGetData::PhoneAttributes#parse_indicators'
470
+ :message: refers to vals more than self
471
+ :type: FeatureEnvy
472
+ - :method: '[139]:Neustar::WsGetData::PhoneAttributes#process_response'
473
+ :message: contains iterators nested 2 deep
474
+ :type: NestedIterators
475
+ - :method: '[131]:Neustar::WsGetData::PhoneAttributes#process_response'
476
+ :message: refers to response more than self
477
+ :type: FeatureEnvy
478
+ - :file_path: lib/neustar-ws_get_data/version.rb
479
+ :code_smells: []
480
+ :roodi:
481
+ :total:
482
+ - Found 0 errors.
483
+ :problems: []
484
+ :stats:
485
+ :codeLOC: 176
486
+ :testLOC: 246
487
+ :code_to_test_ratio: 1.4
488
+ :lines:
489
+ - :name: Libraries
490
+ :lines: 302
491
+ :loc: 176
492
+ :classes: 4
493
+ :methods: 14
494
+ :methods_per_class: 3
495
+ :loc_per_method: 10
496
+ - :name: Neustar-ws_get_data specs
497
+ :lines: 206
498
+ :loc: 175
499
+ :classes: 0
500
+ :methods: 0
501
+ :methods_per_class: 0
502
+ :loc_per_method: 0
503
+ - :name: Elements specs
504
+ :lines: 83
505
+ :loc: 71
506
+ :classes: 0
507
+ :methods: 0
508
+ :methods_per_class: 0
509
+ :loc_per_method: 0
510
+ - :name: Total
511
+ :lines: 591
512
+ :loc: 422
513
+ :classes: 4
514
+ :methods: 14
515
+ :methods_per_class: 3
516
+ :loc_per_method: 28
517
+ :hotspots:
518
+ files:
519
+ - location:
520
+ class_name:
521
+ method_name:
522
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
523
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
524
+ line_number: '131'
525
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:131", nil,
526
+ nil]'
527
+ details:
528
+ flog: complexity is 14.2
529
+ saikuro: average complexity is 2.2
530
+ - location:
531
+ class_name:
532
+ method_name:
533
+ file_path: lib/neustar-ws_get_data/client.rb:42
534
+ file_name: lib/neustar-ws_get_data/client.rb
535
+ line_number: '42'
536
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", nil, nil]'
537
+ details:
538
+ flog: complexity is 11.5
539
+ saikuro: average complexity is 1.3
540
+ - location:
541
+ class_name:
542
+ method_name:
543
+ file_path: lib/neustar-ws_get_data/client.rb:8
544
+ file_name: lib/neustar-ws_get_data/client.rb
545
+ line_number: '8'
546
+ hash_key: '["lib/neustar-ws_get_data/client.rb:8", nil, nil]'
547
+ details:
548
+ flog: complexity is 9.7
549
+ - location:
550
+ class_name:
551
+ method_name:
552
+ file_path: lib/neustar-ws_get_data/client.rb:100
553
+ file_name: lib/neustar-ws_get_data/client.rb
554
+ line_number: '100'
555
+ hash_key: '["lib/neustar-ws_get_data/client.rb:100", nil, nil]'
556
+ details:
557
+ flog: complexity is 7.1
558
+ - location:
559
+ class_name:
560
+ method_name:
561
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:152
562
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
563
+ line_number: '152'
564
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:152", nil,
565
+ nil]'
566
+ details:
567
+ flog: complexity is 4.4
568
+ - location:
569
+ class_name:
570
+ method_name:
571
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:90
572
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
573
+ line_number: '90'
574
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:90", nil,
575
+ nil]'
576
+ details:
577
+ flog: complexity is 4.4
578
+ - location:
579
+ class_name:
580
+ method_name:
581
+ file_path: lib/neustar-ws_get_data/client.rb:63
582
+ file_name: lib/neustar-ws_get_data/client.rb
583
+ line_number: '63'
584
+ hash_key: '["lib/neustar-ws_get_data/client.rb:63", nil, nil]'
585
+ details:
586
+ flog: complexity is 3.6
587
+ - location:
588
+ class_name:
589
+ method_name:
590
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:107
591
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
592
+ line_number: '107'
593
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:107", nil,
594
+ nil]'
595
+ details:
596
+ flog: complexity is 3.4
597
+ - location:
598
+ class_name:
599
+ method_name:
600
+ file_path: lib/neustar-ws_get_data/client.rb:73
601
+ file_name: lib/neustar-ws_get_data/client.rb
602
+ line_number: '73'
603
+ hash_key: '["lib/neustar-ws_get_data/client.rb:73", nil, nil]'
604
+ details:
605
+ flog: complexity is 1.4
606
+ - location:
607
+ class_name:
608
+ method_name:
609
+ file_path: lib/neustar-ws_get_data/client.rb:18
610
+ file_name: lib/neustar-ws_get_data/client.rb
611
+ line_number: '18'
612
+ hash_key: '["lib/neustar-ws_get_data/client.rb:18", nil, nil]'
613
+ details:
614
+ flog: complexity is 1.0
615
+ - location:
616
+ class_name:
617
+ method_name:
618
+ file_path: lib/neustar-ws_get_data/client.rb:92
619
+ file_name: lib/neustar-ws_get_data/client.rb
620
+ line_number: '92'
621
+ hash_key: '["lib/neustar-ws_get_data/client.rb:92", nil, nil]'
622
+ details:
623
+ flog: complexity is 1.0
624
+ - location:
625
+ class_name:
626
+ method_name:
627
+ file_path: lib/neustar-ws_get_data/client.rb:80
628
+ file_name: lib/neustar-ws_get_data/client.rb
629
+ line_number: '80'
630
+ hash_key: '["lib/neustar-ws_get_data/client.rb:80", nil, nil]'
631
+ details:
632
+ flog: complexity is 1.0
633
+ - location:
634
+ class_name:
635
+ method_name:
636
+ file_path: lib/neustar-ws_get_data/client.rb:34
637
+ file_name: lib/neustar-ws_get_data/client.rb
638
+ line_number: '34'
639
+ hash_key: '["lib/neustar-ws_get_data/client.rb:34", nil, nil]'
640
+ details:
641
+ flog: complexity is 1.0
642
+ - location:
643
+ class_name:
644
+ method_name:
645
+ file_path: lib/neustar-ws_get_data/client.rb:26
646
+ file_name: lib/neustar-ws_get_data/client.rb
647
+ line_number: '26'
648
+ hash_key: '["lib/neustar-ws_get_data/client.rb:26", nil, nil]'
649
+ details:
650
+ flog: complexity is 1.0
651
+ - location:
652
+ class_name:
653
+ method_name:
654
+ file_path: lib/neustar-ws_get_data/client.rb
655
+ file_name: lib/neustar-ws_get_data/client.rb
656
+ line_number:
657
+ hash_key: '["lib/neustar-ws_get_data/client.rb", nil, nil]'
658
+ details:
659
+ reek: found 8 code smells
660
+ - location:
661
+ class_name:
662
+ method_name:
663
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb
664
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
665
+ line_number:
666
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb", nil, nil]'
667
+ details:
668
+ reek: found 7 code smells
669
+ classes:
670
+ - location:
671
+ class_name: main
672
+ method_name:
673
+ file_path:
674
+ file_name:
675
+ line_number:
676
+ hash_key: '[nil, "main", nil]'
677
+ details:
678
+ flog: complexity is 11.8
679
+ - location:
680
+ class_name: PhoneAttributes
681
+ method_name:
682
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
683
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
684
+ line_number: '131'
685
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:131", "PhoneAttributes",
686
+ nil]'
687
+ details:
688
+ flog: average complexity is 6.0
689
+ reek: found 7 code smells
690
+ - location:
691
+ class_name: Client
692
+ method_name:
693
+ file_path: lib/neustar-ws_get_data/client.rb:42
694
+ file_name: lib/neustar-ws_get_data/client.rb
695
+ line_number: '42'
696
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Client", nil]'
697
+ details:
698
+ flog: average complexity is 3.6
699
+ reek: found 6 code smells
700
+ - location:
701
+ class_name: Neustar
702
+ method_name:
703
+ file_path: lib/neustar-ws_get_data/client.rb:42
704
+ file_name: lib/neustar-ws_get_data/client.rb
705
+ line_number: '42'
706
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", nil]'
707
+ details:
708
+ saikuro: average complexity is 1.6
709
+ - location:
710
+ class_name: '[104,'
711
+ method_name:
712
+ file_path: lib/neustar-ws_get_data/client.rb
713
+ file_name: lib/neustar-ws_get_data/client.rb
714
+ line_number:
715
+ hash_key: '["lib/neustar-ws_get_data/client.rb", "[104,", nil]'
716
+ details:
717
+ reek: found 1 code smells
718
+ - location:
719
+ class_name: '[102,'
720
+ method_name:
721
+ file_path: lib/neustar-ws_get_data/client.rb
722
+ file_name: lib/neustar-ws_get_data/client.rb
723
+ line_number:
724
+ hash_key: '["lib/neustar-ws_get_data/client.rb", "[102,", nil]'
725
+ details:
726
+ reek: found 1 code smells
727
+ methods:
728
+ - location:
729
+ class_name: PhoneAttributes
730
+ method_name: PhoneAttributes#process_response
731
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
732
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
733
+ line_number: '131'
734
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:131", "PhoneAttributes",
735
+ "PhoneAttributes#process_response"]'
736
+ simple_method_name: '#process_response'
737
+ details:
738
+ flog: complexity is 14.2
739
+ reek: found 2 code smells
740
+ - location:
741
+ class_name: main
742
+ method_name: main#none
743
+ file_path:
744
+ file_name:
745
+ line_number:
746
+ hash_key: '[nil, "main", "main#none"]'
747
+ simple_method_name: '#none'
748
+ details:
749
+ flog: complexity is 11.8
750
+ - location:
751
+ class_name: Client
752
+ method_name: Client#call
753
+ file_path: lib/neustar-ws_get_data/client.rb:42
754
+ file_name: lib/neustar-ws_get_data/client.rb
755
+ line_number: '42'
756
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Client", "Client#call"]'
757
+ simple_method_name: '#call'
758
+ details:
759
+ flog: complexity is 11.5
760
+ - location:
761
+ class_name: Client
762
+ method_name: Client#initialize
763
+ file_path: lib/neustar-ws_get_data/client.rb:8
764
+ file_name: lib/neustar-ws_get_data/client.rb
765
+ line_number: '8'
766
+ hash_key: '["lib/neustar-ws_get_data/client.rb:8", "Client", "Client#initialize"]'
767
+ simple_method_name: '#initialize'
768
+ details:
769
+ flog: complexity is 9.7
770
+ - location:
771
+ class_name: Client
772
+ method_name: Client#extract_fault_message
773
+ file_path: lib/neustar-ws_get_data/client.rb:100
774
+ file_name: lib/neustar-ws_get_data/client.rb
775
+ line_number: '100'
776
+ hash_key: '["lib/neustar-ws_get_data/client.rb:100", "Client", "Client#extract_fault_message"]'
777
+ simple_method_name: '#extract_fault_message'
778
+ details:
779
+ flog: complexity is 7.1
780
+ reek: found 3 code smells
781
+ - location:
782
+ class_name: PhoneAttributes
783
+ method_name: PhoneAttributes#parse_indicators
784
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:152
785
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
786
+ line_number: '152'
787
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:152", "PhoneAttributes",
788
+ "PhoneAttributes#parse_indicators"]'
789
+ simple_method_name: '#parse_indicators'
790
+ details:
791
+ flog: complexity is 4.4
792
+ reek: found 3 code smells
793
+ - location:
794
+ class_name: PhoneAttributes
795
+ method_name: PhoneAttributes#query
796
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:90
797
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
798
+ line_number: '90'
799
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:90", "PhoneAttributes",
800
+ "PhoneAttributes#query"]'
801
+ simple_method_name: '#query'
802
+ details:
803
+ flog: complexity is 4.4
804
+ - location:
805
+ class_name: Client
806
+ method_name: Client#process_response
807
+ file_path: lib/neustar-ws_get_data/client.rb:63
808
+ file_name: lib/neustar-ws_get_data/client.rb
809
+ line_number: '63'
810
+ hash_key: '["lib/neustar-ws_get_data/client.rb:63", "Client", "Client#process_response"]'
811
+ simple_method_name: '#process_response'
812
+ details:
813
+ flog: complexity is 3.6
814
+ reek: found 3 code smells
815
+ - location:
816
+ class_name: PhoneAttributes
817
+ method_name: PhoneAttributes#none
818
+ file_path:
819
+ file_name:
820
+ line_number:
821
+ hash_key: '[nil, "PhoneAttributes", "PhoneAttributes#none"]'
822
+ simple_method_name: '#none'
823
+ details:
824
+ flog: complexity is 3.8
825
+ - location:
826
+ class_name: PhoneAttributes
827
+ method_name: PhoneAttributes#execute_request
828
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:107
829
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
830
+ line_number: '107'
831
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:107", "PhoneAttributes",
832
+ "PhoneAttributes#execute_request"]'
833
+ simple_method_name: '#execute_request'
834
+ details:
835
+ flog: complexity is 3.4
836
+ reek: found 2 code smells
837
+ - location:
838
+ class_name: Neustar
839
+ method_name: Neustar#process_response
840
+ file_path: lib/neustar-ws_get_data/client.rb:42
841
+ file_name: lib/neustar-ws_get_data/client.rb
842
+ line_number: '42'
843
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#process_response"]'
844
+ simple_method_name: '#process_response'
845
+ details:
846
+ saikuro: average complexity is 3.0
847
+ - location:
848
+ class_name: Neustar
849
+ method_name: Neustar#call
850
+ file_path: lib/neustar-ws_get_data/client.rb:42
851
+ file_name: lib/neustar-ws_get_data/client.rb
852
+ line_number: '42'
853
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#call"]'
854
+ simple_method_name: '#call'
855
+ details:
856
+ saikuro: complexity is 3.0
857
+ - location:
858
+ class_name: Neustar
859
+ method_name: Neustar#parse_indicators
860
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
861
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
862
+ line_number: '131'
863
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:131", "Neustar",
864
+ "Neustar#parse_indicators"]'
865
+ simple_method_name: '#parse_indicators'
866
+ details:
867
+ saikuro: complexity is 2.0
868
+ - location:
869
+ class_name: Neustar
870
+ method_name: Neustar#extract_fault_message
871
+ file_path: lib/neustar-ws_get_data/client.rb:42
872
+ file_name: lib/neustar-ws_get_data/client.rb
873
+ line_number: '42'
874
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#extract_fault_message"]'
875
+ simple_method_name: '#extract_fault_message'
876
+ details:
877
+ saikuro: complexity is 2.0
878
+ - location:
879
+ class_name: Client
880
+ method_name: Client#phone_attributes
881
+ file_path: lib/neustar-ws_get_data/client.rb:73
882
+ file_name: lib/neustar-ws_get_data/client.rb
883
+ line_number: '73'
884
+ hash_key: '["lib/neustar-ws_get_data/client.rb:73", "Client", "Client#phone_attributes"]'
885
+ simple_method_name: '#phone_attributes'
886
+ details:
887
+ flog: complexity is 1.4
888
+ - location:
889
+ class_name: Client
890
+ method_name: Client#none
891
+ file_path:
892
+ file_name:
893
+ line_number:
894
+ hash_key: '[nil, "Client", "Client#none"]'
895
+ simple_method_name: '#none'
896
+ details:
897
+ flog: complexity is 1.2
898
+ - location:
899
+ class_name: Client
900
+ method_name: Client#origination_params
901
+ file_path: lib/neustar-ws_get_data/client.rb:80
902
+ file_name: lib/neustar-ws_get_data/client.rb
903
+ line_number: '80'
904
+ hash_key: '["lib/neustar-ws_get_data/client.rb:80", "Client", "Client#origination_params"]'
905
+ simple_method_name: '#origination_params'
906
+ details:
907
+ flog: complexity is 1.0
908
+ - location:
909
+ class_name: Client
910
+ method_name: Client#query
911
+ file_path: lib/neustar-ws_get_data/client.rb:26
912
+ file_name: lib/neustar-ws_get_data/client.rb
913
+ line_number: '26'
914
+ hash_key: '["lib/neustar-ws_get_data/client.rb:26", "Client", "Client#query"]'
915
+ simple_method_name: '#query'
916
+ details:
917
+ flog: complexity is 1.0
918
+ - location:
919
+ class_name: Client
920
+ method_name: Client#batch_query
921
+ file_path: lib/neustar-ws_get_data/client.rb:34
922
+ file_name: lib/neustar-ws_get_data/client.rb
923
+ line_number: '34'
924
+ hash_key: '["lib/neustar-ws_get_data/client.rb:34", "Client", "Client#batch_query"]'
925
+ simple_method_name: '#batch_query'
926
+ details:
927
+ flog: complexity is 1.0
928
+ - location:
929
+ class_name: Client
930
+ method_name: Client#build_transaction_id
931
+ file_path: lib/neustar-ws_get_data/client.rb:92
932
+ file_name: lib/neustar-ws_get_data/client.rb
933
+ line_number: '92'
934
+ hash_key: '["lib/neustar-ws_get_data/client.rb:92", "Client", "Client#build_transaction_id"]'
935
+ simple_method_name: '#build_transaction_id'
936
+ details:
937
+ flog: complexity is 1.0
938
+ - location:
939
+ class_name: Neustar
940
+ method_name: Neustar#phone_attributes
941
+ file_path: lib/neustar-ws_get_data/client.rb:42
942
+ file_name: lib/neustar-ws_get_data/client.rb
943
+ line_number: '42'
944
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#phone_attributes"]'
945
+ simple_method_name: '#phone_attributes'
946
+ details:
947
+ saikuro: complexity is 1.0
948
+ - location:
949
+ class_name: Neustar
950
+ method_name: Neustar#origination_params
951
+ file_path: lib/neustar-ws_get_data/client.rb:42
952
+ file_name: lib/neustar-ws_get_data/client.rb
953
+ line_number: '42'
954
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#origination_params"]'
955
+ simple_method_name: '#origination_params'
956
+ details:
957
+ saikuro: complexity is 1.0
958
+ - location:
959
+ class_name: Neustar
960
+ method_name: Neustar#build_transaction_id
961
+ file_path: lib/neustar-ws_get_data/client.rb:42
962
+ file_name: lib/neustar-ws_get_data/client.rb
963
+ line_number: '42'
964
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#build_transaction_id"]'
965
+ simple_method_name: '#build_transaction_id'
966
+ details:
967
+ saikuro: complexity is 1.0
968
+ - location:
969
+ class_name: Neustar
970
+ method_name: Neustar#batch_query
971
+ file_path: lib/neustar-ws_get_data/client.rb:42
972
+ file_name: lib/neustar-ws_get_data/client.rb
973
+ line_number: '42'
974
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#batch_query"]'
975
+ simple_method_name: '#batch_query'
976
+ details:
977
+ saikuro: complexity is 1.0
978
+ - location:
979
+ class_name: Neustar
980
+ method_name: Neustar#query
981
+ file_path: lib/neustar-ws_get_data/client.rb:42
982
+ file_name: lib/neustar-ws_get_data/client.rb
983
+ line_number: '42'
984
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#query"]'
985
+ simple_method_name: '#query'
986
+ details:
987
+ saikuro: average complexity is 1.0
988
+ - location:
989
+ class_name: Neustar
990
+ method_name: Neustar#operations
991
+ file_path: lib/neustar-ws_get_data/client.rb:42
992
+ file_name: lib/neustar-ws_get_data/client.rb
993
+ line_number: '42'
994
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#operations"]'
995
+ simple_method_name: '#operations'
996
+ details:
997
+ saikuro: complexity is 1.0
998
+ - location:
999
+ class_name: Neustar
1000
+ method_name: Neustar#initialize
1001
+ file_path: lib/neustar-ws_get_data/client.rb:42
1002
+ file_name: lib/neustar-ws_get_data/client.rb
1003
+ line_number: '42'
1004
+ hash_key: '["lib/neustar-ws_get_data/client.rb:42", "Neustar", "Neustar#initialize"]'
1005
+ simple_method_name: '#initialize'
1006
+ details:
1007
+ saikuro: complexity is 1.0
1008
+ - location:
1009
+ class_name: Client
1010
+ method_name: Client#operations
1011
+ file_path: lib/neustar-ws_get_data/client.rb:18
1012
+ file_name: lib/neustar-ws_get_data/client.rb
1013
+ line_number: '18'
1014
+ hash_key: '["lib/neustar-ws_get_data/client.rb:18", "Client", "Client#operations"]'
1015
+ simple_method_name: '#operations'
1016
+ details:
1017
+ flog: complexity is 1.0
1018
+ - location:
1019
+ class_name: Neustar
1020
+ method_name: Neustar#execute_request
1021
+ file_path: lib/neustar-ws_get_data/elements/phone_attributes.rb:131
1022
+ file_name: lib/neustar-ws_get_data/elements/phone_attributes.rb
1023
+ line_number: '131'
1024
+ hash_key: '["lib/neustar-ws_get_data/elements/phone_attributes.rb:131", "Neustar",
1025
+ "Neustar#execute_request"]'
1026
+ simple_method_name: '#execute_request'
1027
+ details:
1028
+ saikuro: complexity is 1.0