big_machines 0.2.0 → 0.3.0

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
  SHA1:
3
- metadata.gz: a216a48de5944b2b2fcc7543074ec46e8f191d10
4
- data.tar.gz: 1155a7074e956c23aadca7031020c90c13f8a10e
3
+ metadata.gz: fd8d3cb173966ddd3034d6d1389d98acd42f759c
4
+ data.tar.gz: bb076b8ae805e104fa336977a5114fa55106c62b
5
5
  SHA512:
6
- metadata.gz: 1aca170032182d3009e486b4d737d4d2a570d0572297e62f183b9ed4fd40abae8d6525ae82b1a831d2befa277f8f77642a32ba26a7cf6126c9b076b96dc0f117
7
- data.tar.gz: bb9c99b32b5a8e8d2cbf125a380299f1b1d308385e5b760af7d7ddc44d0341bff72bea19527f33bfbe8e5b32d04fda0502fe5be3af5cf17b2bfd90fb8e8d502e
6
+ metadata.gz: 726db915351a63c7cd89679f937bd8f5593ac6ccfe21b55df3d5aa9530509cfaffe18048846e1b9a0f81a07391d788dc3ea22001f03a269eeb2793b55db9e6c7
7
+ data.tar.gz: 0359c30687366b458184ac9447cad671a23dac49fce02a9e7ab564db0522ab3f961e5c8e5d4a862a0f65c2e8202093b56bd7bcebe1f8ec4154dd65c03aba313a
@@ -7,14 +7,14 @@ module BigMachines
7
7
  end
8
8
 
9
9
  def write(file_path)
10
- data = Base64.strict_decode64(@raw_attachment[:file_content])
10
+ data = Base64.strict_decode64(@raw_attachment["file_content"])
11
11
  File.open(file_path, 'wb') do |f|
12
12
  f.write(data)
13
13
  end
14
14
  end
15
15
 
16
16
  def method_missing(method, *args)
17
- @raw_attachment[method]
17
+ @raw_attachment[method.to_s]
18
18
  end
19
19
 
20
20
  end
@@ -68,13 +68,13 @@ module BigMachines
68
68
  message = {userInfo: {username: username, password: password}}
69
69
  response = self.security_call(:login, message)
70
70
 
71
- userInfo = response[:user_info]
71
+ userInfo = response["userInfo"]
72
72
 
73
- @session_id = userInfo[:session_id]
73
+ @session_id = userInfo["sessionId"]
74
74
 
75
75
  @security_client = Savon.client(configuration)
76
76
 
77
- response[:status][:success]
77
+ response["status"]["success"]
78
78
  end
79
79
  alias_method :authenticate, :login
80
80
 
@@ -177,7 +177,7 @@ module BigMachines
177
177
  result = commerce_call(:export_file_attachments, export)
178
178
 
179
179
  attachments = []
180
- result[:attachments].each do |key, data|
180
+ result["attachments"].each do |key, data|
181
181
  attachments << BigMachines::Attachment.new(data)
182
182
  end
183
183
 
@@ -243,6 +243,7 @@ module BigMachines
243
243
  soap_header: headers(:security),
244
244
  filters: [:password],
245
245
  convert_request_keys_to: :none,
246
+ convert_response_tags_to: lambda { |tag| tag },
246
247
  pretty_print_xml: true,
247
248
  logger: @logger,
248
249
  log: @logger != false
@@ -276,11 +277,12 @@ module BigMachines
276
277
  response = response.to_hash
277
278
 
278
279
  # Get Response Body
279
- response = response["#{method}_response".to_sym]
280
+ key = method.to_s.gsub(/_(\w)/) {|x| x[1].upcase }
281
+ response = response["#{key}Response"]
280
282
 
281
283
  # Raise error when response contains errors
282
- if response.is_a?(Hash) && response[:status] && response[:status][:success] == false
283
- raise Savon::Error.new(response[:status][:message])
284
+ if response.is_a?(Hash) && response["status"] && response["status"]["success"] == false
285
+ raise Savon::Error.new(response["status"]["message"])
284
286
  end
285
287
 
286
288
  return response
@@ -5,19 +5,19 @@ module BigMachines
5
5
  def initialize(response)
6
6
  @raw_transaction = response
7
7
  # Metadata
8
- @transaction = response[:transaction]
8
+ @transaction = response["transaction"]
9
9
  # Quote
10
- @quote_process = @transaction[:data_xml][:quote_process]
10
+ @quote_process = @transaction["data_xml"]["quote_process"]
11
11
  # Line Items
12
- @line_process = if @quote_process[:sub_documents].is_a?(Hash)
13
- @quote_process[:sub_documents][:line_process]
12
+ @line_process = if @quote_process["sub_documents"].is_a?(Hash)
13
+ @quote_process["sub_documents"]["line_process"]
14
14
  else
15
15
  []
16
16
  end
17
17
  end
18
18
 
19
19
  def method_missing(method, *args)
20
- @transaction[method]
20
+ @transaction[method.to_s]
21
21
  end
22
22
 
23
23
  def quote
@@ -1,3 +1,3 @@
1
1
  module BigMachines
2
- VERSION = "0.2.0"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -34,7 +34,7 @@ describe BigMachines::Client do
34
34
  stub = stub_api_request({with_body: body, fixture: 'logout_response'})
35
35
 
36
36
  response = subject.logout
37
- expect(response[:status][:success]).to eq(true)
37
+ expect(response["status"]["success"]).to eq(true)
38
38
  end
39
39
 
40
40
  end
@@ -45,10 +45,10 @@ describe BigMachines::Client do
45
45
  stub = stub_api_request({with_body: body, fixture: 'get_user_info_response'})
46
46
 
47
47
  response = subject.get_user_info
48
- user_info = response[:user_info]
49
- expect(user_info[:company_name]).to eq('newtempge')
50
- expect(user_info[:first_name]).to eq('Joe')
51
- expect(user_info[:last_name]).to eq('Heth')
48
+ user_info = response["userInfo"]
49
+ expect(user_info["company_name"]).to eq('newtempge')
50
+ expect(user_info["first_name"]).to eq('Joe')
51
+ expect(user_info["last_name"]).to eq('Heth')
52
52
  end
53
53
  end
54
54
 
@@ -58,7 +58,7 @@ describe BigMachines::Client do
58
58
  stub = stub_api_request({with_body: body, fixture: 'set_session_currency_response'})
59
59
 
60
60
  response = subject.set_session_currency('USD')
61
- expect(response[:status][:success]).to eq(true)
61
+ expect(response["status"]["success"]).to eq(true)
62
62
  end
63
63
  end
64
64
 
@@ -93,12 +93,13 @@ describe BigMachines::Client do
93
93
 
94
94
  quote_process = transaction.quote
95
95
  expect(quote_process).to be_a(Hash)
96
+ expect(quote_process["_document_number"]).to eq("1")
96
97
 
97
98
  quote_line_items = transaction.quote_line_items
98
99
  expect(quote_line_items).to be_a(Array)
99
100
 
100
101
  expect(quote_line_items.length).to eq(109)
101
- expect(quote_line_items.first[:_model_id]).to eq("17400975")
102
+ expect(quote_line_items.first["_model_id"]).to eq("17400975")
102
103
  end
103
104
 
104
105
  it "returns not found error" do
@@ -158,7 +159,7 @@ describe BigMachines::Client do
158
159
  }
159
160
  response = subject.update_transaction(26539349, data)
160
161
 
161
- expect(response[:status][:success]).to eq(true)
162
+ expect(response["status"]["success"]).to eq(true)
162
163
  end
163
164
  end
164
165
 
@@ -255,7 +256,7 @@ describe BigMachines::Client do
255
256
 
256
257
  file = attachments.first
257
258
  expect(file.filename).to eq('1020636-38959 Rev 0.docx')
258
- expect(file.file_content[:"@bm:href"]).to eq("cid:1020636-38959_Rev_0.docx@newtempge.bigmachines.com")
259
+ expect(file.file_content["@bm:href"]).to eq("cid:1020636-38959_Rev_0.docx@newtempge.bigmachines.com")
259
260
  end
260
261
 
261
262
  end
@@ -292,7 +293,7 @@ describe BigMachines::Client do
292
293
 
293
294
  File.unlink('NewProposal.txt')
294
295
 
295
- expect(response[:status][:success]).to eq(true)
296
+ expect(response["status"]["success"]).to eq(true)
296
297
  end
297
298
 
298
299
  it "deletes file attachment" do
@@ -317,7 +318,7 @@ describe BigMachines::Client do
317
318
 
318
319
  response = subject.delete_attachment(34706909, "uploadEngineeringTemplate_File")
319
320
 
320
- expect(response[:status][:success]).to eq(true)
321
+ expect(response["status"]["success"]).to eq(true)
321
322
  end
322
323
 
323
324
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: big_machines
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joe Heth
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-13 00:00:00.000000000 Z
11
+ date: 2015-04-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: savon