moneta-api 1.0.0 → 1.0.1
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/lib/moneta/api/requests/cancel_transaction_request.rb +1 -1
- data/lib/moneta/api/service.rb +12 -1
- data/lib/moneta/api/types/authorise_transaction_batch_request_type.rb +2 -0
- data/lib/moneta/api/types/authorise_transaction_request_type.rb +4 -0
- data/lib/moneta/api/types/verify_transaction_response_type.rb +2 -0
- data/lib/moneta/api/version.rb +1 -1
- data/lib/moneta/api.rb +0 -8
- data/spec/lib/moneta/api/requests/authorise_transaction_batch_request_spec.rb +2 -1
- data/spec/lib/moneta/api/requests/authorise_transaction_request_spec.rb +2 -6
- data/spec/lib/moneta/api/requests/create_account_request_spec.rb +1 -1
- data/spec/lib/moneta/api/requests/find_operations_list_request_spec.rb +1 -1
- data/spec/lib/moneta/api/requests/forecast_transaction_request_spec.rb +2 -7
- data/spec/lib/moneta/api/requests/get_account_payment_password_challenge_request_spec.rb +1 -1
- data/spec/lib/moneta/api/requests/payment_request_spec.rb +2 -6
- data/spec/lib/moneta/api/requests/transfer_request_spec.rb +2 -6
- data/spec/lib/moneta/api/service_spec.rb +18 -3
- data/spec/support/context.rb +13 -0
- data/spec/vcr/moneta_api_requests_authorisetransactionrequest_authorise_transaction/should_success.yml +5 -5
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2bd8ba9619326c34b72b79371521849fe44e5b78
|
4
|
+
data.tar.gz: 1a9a33ce255cb1a7c8bdf4a40c69999659992da7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ecd96715a52e1fc07270eb7e872ec91b6b7fc69c0521ef99b79c403ec41eda12574308fad9b8b94e4a0a161e85c3d82d10fdaa0625113f4de21d2864df634f40
|
7
|
+
data.tar.gz: d35540807da05ab55e0f9c7872da1f6567b36275a046d52d7ce27701ba89f4bbfc3555e0f44bbc03ed32824bbf9405c4c06e8d0d984ec71535ea0ac606b0aaf7
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Moneta
|
2
2
|
module Api
|
3
|
-
module
|
3
|
+
module Requests
|
4
4
|
# Запрос на отмену операции. Отменять операцию можно при выполнении всех условий:
|
5
5
|
# незавершенные операции;
|
6
6
|
# если есть доступ к счету плательщика и счету получателя (то есть свои внутренние операции).
|
data/lib/moneta/api/service.rb
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
module Moneta
|
2
2
|
module Api
|
3
3
|
class Service
|
4
|
+
DEMO = 'https://demo.moneta.ru/services.wsdl'
|
5
|
+
PRODUCTION = 'https://www.moneta.ru/services.wsdl'
|
6
|
+
|
4
7
|
include ServiceMethods
|
5
8
|
attr_reader :client
|
6
9
|
|
@@ -11,7 +14,15 @@ module Moneta
|
|
11
14
|
private
|
12
15
|
|
13
16
|
def prepare_params(username, password, params)
|
14
|
-
|
17
|
+
demo_mode = params.delete(:demo_mode)
|
18
|
+
|
19
|
+
{ wsse_auth: [ username, password ] }
|
20
|
+
.merge(params)
|
21
|
+
.merge(wsdl: wsdl_url(demo_mode))
|
22
|
+
end
|
23
|
+
|
24
|
+
def wsdl_url(demo_mode)
|
25
|
+
demo_mode ? DEMO : PRODUCTION
|
15
26
|
end
|
16
27
|
end
|
17
28
|
end
|
data/lib/moneta/api/version.rb
CHANGED
data/lib/moneta/api.rb
CHANGED
@@ -5,14 +5,6 @@ require 'moneta/api/service_methods'
|
|
5
5
|
require 'moneta/api/service'
|
6
6
|
require 'moneta/api/data_mapper'
|
7
7
|
|
8
|
-
require 'moneta/api/types/entity'
|
9
|
-
require 'moneta/api/types/key_value_attribute'
|
10
|
-
require 'moneta/api/types/operation_info'
|
11
|
-
require 'moneta/api/types/transaction_request_type'
|
12
|
-
|
13
|
-
require 'moneta/api/types/forecast_transaction_response_type'
|
14
|
-
require 'moneta/api/types/verify_transfer_response_type'
|
15
|
-
|
16
8
|
%w(types responses requests).each do |folder|
|
17
9
|
Dir["lib/moneta/api/#{ folder }/*.rb"].each do |file|
|
18
10
|
require File.join(File.dirname(__FILE__), '../../', file)
|
@@ -1,14 +1,10 @@
|
|
1
1
|
describe Moneta::Api::Requests::AuthoriseTransactionRequest, vcr: true do
|
2
|
-
|
2
|
+
include_context 'moneta'
|
3
3
|
|
4
4
|
describe '#authorise_transaction' do
|
5
5
|
let(:request) do
|
6
6
|
described_class.new.tap do |request|
|
7
|
-
request
|
8
|
-
request.payer = 10999
|
9
|
-
request.amount = 10
|
10
|
-
request.is_payer_amount = false
|
11
|
-
request.payment_password = '12345'
|
7
|
+
fill_base_settings.(request)
|
12
8
|
end
|
13
9
|
end
|
14
10
|
|
@@ -1,14 +1,9 @@
|
|
1
1
|
describe Moneta::Api::Requests::ForecastTransactionRequest, vcr: true do
|
2
|
-
|
3
|
-
|
2
|
+
include_context 'moneta'
|
4
3
|
describe 'forecast_transaction' do
|
5
4
|
let(:request) do
|
6
5
|
described_class.new.tap do |request|
|
7
|
-
request
|
8
|
-
request.payee = 28988504
|
9
|
-
request.payer = 10999
|
10
|
-
request.is_payer_amount = false
|
11
|
-
request.payment_password = '12345'
|
6
|
+
fill_base_settings.(request)
|
12
7
|
end
|
13
8
|
end
|
14
9
|
|
@@ -1,14 +1,10 @@
|
|
1
1
|
describe Moneta::Api::Requests::PaymentRequest, vcr: true do
|
2
|
-
|
2
|
+
include_context 'moneta'
|
3
3
|
|
4
4
|
describe 'payment' do
|
5
5
|
let(:request) do
|
6
6
|
described_class.new.tap do |request|
|
7
|
-
request
|
8
|
-
request.payer = 10999
|
9
|
-
request.amount = 10
|
10
|
-
request.is_payer_amount = false
|
11
|
-
request.payment_password = '12345'
|
7
|
+
fill_base_settings.(request)
|
12
8
|
end
|
13
9
|
end
|
14
10
|
|
@@ -1,14 +1,10 @@
|
|
1
1
|
describe Moneta::Api::Requests::TransferRequest, vcr: true do
|
2
|
-
|
2
|
+
include_context 'moneta'
|
3
3
|
|
4
4
|
describe 'transfer' do
|
5
5
|
let(:request) do
|
6
6
|
described_class.new.tap do |request|
|
7
|
-
request
|
8
|
-
request.payee = 28988504
|
9
|
-
request.payer = 10999
|
10
|
-
request.is_payer_amount = false
|
11
|
-
request.payment_password = '12345'
|
7
|
+
fill_base_settings.(request)
|
12
8
|
end
|
13
9
|
end
|
14
10
|
|
@@ -1,9 +1,24 @@
|
|
1
|
-
describe Moneta::Api::Service
|
2
|
-
let(:
|
1
|
+
describe Moneta::Api::Service do
|
2
|
+
let(:params) { { demo_mode: true } }
|
3
|
+
let(:service) { described_class.new($username, $password, params) }
|
3
4
|
|
4
|
-
describe '#find_account_by_id' do
|
5
|
+
describe '#find_account_by_id', vcr: true do
|
5
6
|
subject { service.find_account_by_id(10999) }
|
6
7
|
|
7
8
|
its('account.id') { is_expected.to eq '10999' }
|
8
9
|
end
|
10
|
+
|
11
|
+
describe 'wsdl url' do
|
12
|
+
subject{ service.client.globals.instance_variable_get('@options')[:wsdl] }
|
13
|
+
|
14
|
+
context 'when demo mode' do
|
15
|
+
it { is_expected.to eq 'https://demo.moneta.ru/services.wsdl' }
|
16
|
+
end
|
17
|
+
|
18
|
+
context 'when demo mode' do
|
19
|
+
let(:params) { {} }
|
20
|
+
|
21
|
+
it { is_expected.to eq 'https://www.moneta.ru/services.wsdl' }
|
22
|
+
end
|
23
|
+
end
|
9
24
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
RSpec.shared_context 'moneta' do
|
2
|
+
let(:service) { Moneta::Api::Service.new($username, $password, { demo_mode: true }) }
|
3
|
+
|
4
|
+
let(:fill_base_settings) do
|
5
|
+
Proc.new do |request|
|
6
|
+
request.payee = 28988504
|
7
|
+
request.payer = 10999
|
8
|
+
request.amount = 10
|
9
|
+
request.is_payer_amount = false
|
10
|
+
request.payment_password = '12345'
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -21,7 +21,7 @@ http_interactions:
|
|
21
21
|
server:
|
22
22
|
- nginx
|
23
23
|
date:
|
24
|
-
-
|
24
|
+
- Tue, 14 Apr 2015 08:37:20 GMT
|
25
25
|
content-type:
|
26
26
|
- text/xml
|
27
27
|
transfer-encoding:
|
@@ -10733,7 +10733,7 @@ http_interactions:
|
|
10733
10733
|
ZXMiLz4KICAgICAgPC93c2RsOnBvcnQ+CiAgIDwvd3NkbDpzZXJ2aWNlPgo8
|
10734
10734
|
L3dzZGw6ZGVmaW5pdGlvbnM+
|
10735
10735
|
http_version: '1.1'
|
10736
|
-
recorded_at:
|
10736
|
+
recorded_at: Tue, 14 Apr 2015 08:37:23 GMT
|
10737
10737
|
- request:
|
10738
10738
|
method: post
|
10739
10739
|
uri: https://demo.moneta.ru/services
|
@@ -10766,7 +10766,7 @@ http_interactions:
|
|
10766
10766
|
server:
|
10767
10767
|
- nginx
|
10768
10768
|
date:
|
10769
|
-
-
|
10769
|
+
- Tue, 14 Apr 2015 08:37:23 GMT
|
10770
10770
|
content-type:
|
10771
10771
|
- text/xml;charset=utf-8
|
10772
10772
|
content-length:
|
@@ -10784,7 +10784,7 @@ http_interactions:
|
|
10784
10784
|
body:
|
10785
10785
|
encoding: UTF-8
|
10786
10786
|
string: <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:Header/><SOAP-ENV:Body><ns2:AuthoriseTransactionResponse
|
10787
|
-
xmlns:ns2="http://www.moneta.ru/schemas/messages.xsd"><ns2:id>
|
10787
|
+
xmlns:ns2="http://www.moneta.ru/schemas/messages.xsd"><ns2:id>340167</ns2:id><ns2:attribute><ns2:key>category</ns2:key><ns2:value>BUSINESS</ns2:value></ns2:attribute><ns2:attribute><ns2:key>sourcecurrencycode</ns2:key><ns2:value>RUB</ns2:value></ns2:attribute><ns2:attribute><ns2:key>sourceamount</ns2:key><ns2:value>10</ns2:value></ns2:attribute><ns2:attribute><ns2:key>typeid</ns2:key><ns2:value>10</ns2:value></ns2:attribute><ns2:attribute><ns2:key>targetamount</ns2:key><ns2:value>-10</ns2:value></ns2:attribute><ns2:attribute><ns2:key>protectioncode</ns2:key><ns2:value>49754</ns2:value></ns2:attribute><ns2:attribute><ns2:key>targetcurrencycode</ns2:key><ns2:value>RUB</ns2:value></ns2:attribute><ns2:attribute><ns2:key>statusid</ns2:key><ns2:value>INPROGRESS</ns2:value></ns2:attribute><ns2:attribute><ns2:key>sourceamounttotal</ns2:key><ns2:value>10</ns2:value></ns2:attribute><ns2:attribute><ns2:key>modified</ns2:key><ns2:value>2015-04-14T11:37:23.000+03:00</ns2:value></ns2:attribute><ns2:attribute><ns2:key>targetaccountid</ns2:key><ns2:value>10999</ns2:value></ns2:attribute><ns2:attribute><ns2:key>protectioncodeexpirationdate</ns2:key><ns2:value>2015-04-15T11:37:22.000+03:00</ns2:value></ns2:attribute><ns2:attribute><ns2:key>sourceaccountid</ns2:key><ns2:value>28988504</ns2:value></ns2:attribute><ns2:attribute><ns2:key>isreversed</ns2:key><ns2:value>true</ns2:value></ns2:attribute></ns2:AuthoriseTransactionResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
|
10788
10788
|
http_version: '1.1'
|
10789
|
-
recorded_at:
|
10789
|
+
recorded_at: Tue, 14 Apr 2015 08:37:24 GMT
|
10790
10790
|
recorded_with: VCR 2.9.3
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: moneta-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ssnikolay
|
@@ -238,6 +238,7 @@ files:
|
|
238
238
|
- spec/lib/moneta/api/service_spec.rb
|
239
239
|
- spec/lib/moneta/api/types/operation_info_spec.rb
|
240
240
|
- spec/spec_helper.rb
|
241
|
+
- spec/support/context.rb
|
241
242
|
- spec/support/matchers.rb
|
242
243
|
- spec/support/wsdl
|
243
244
|
- spec/vcr/moneta_api_requests_authorisetransactionbatchrequest/use_when_one_operation_transaction_transaction_.yml
|
@@ -287,6 +288,7 @@ test_files:
|
|
287
288
|
- spec/lib/moneta/api/service_spec.rb
|
288
289
|
- spec/lib/moneta/api/types/operation_info_spec.rb
|
289
290
|
- spec/spec_helper.rb
|
291
|
+
- spec/support/context.rb
|
290
292
|
- spec/support/matchers.rb
|
291
293
|
- spec/support/wsdl
|
292
294
|
- spec/vcr/moneta_api_requests_authorisetransactionbatchrequest/use_when_one_operation_transaction_transaction_.yml
|