soapy_cake 1.14.4 → 1.15.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 +4 -4
- data/api_versions.yml +1 -1
- data/lib/soapy_cake/admin_track.rb +21 -7
- data/lib/soapy_cake/const.rb +6 -0
- data/lib/soapy_cake/version.rb +1 -1
- data/spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_mass_conversion_insert/{insers_conversions.yml → inserts_conversions.yml} +0 -0
- data/spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_update_conversion/updates_a_conversion.yml +59 -0
- data/spec/integration/soapy_cake/admin_track_spec.rb +14 -11
- data/spec/lib/soapy_cake/admin_track_spec.rb +10 -0
- metadata +6 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ded8535f4f057f3e55884f2c0cc218743e4134b9
|
4
|
+
data.tar.gz: 34dda1abcf277214c5d9442e35da548fc3667b36
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a0ffe0fa81c8b12a34b56cc3a680825ccf2dbee32106b76ee7bdb812d154b6b1cb99cbbdcdce4a88dfbbf72d8ebeaf2f9a852e30dc099cbb378a072499bb343f
|
7
|
+
data.tar.gz: e27a015d263b827d239142cd315a294846c2b8aacd90b5a7edf6e8c0d56e5333b73968c7d47e8bb43fd1ec81e858b993496571a4fd8098e6fc677b0af171e469
|
data/api_versions.yml
CHANGED
@@ -98,7 +98,7 @@ admin:
|
|
98
98
|
# Version 2 returns an error about an invalid action, so using version 1
|
99
99
|
mass_conversion_insert: 1
|
100
100
|
rejected_dispositions: 1
|
101
|
-
update_conversion:
|
101
|
+
update_conversion: 4
|
102
102
|
update_conversion_disposition: 2
|
103
103
|
update_conversion_price: 2
|
104
104
|
update_conversion_revenue: 1
|
@@ -2,18 +2,32 @@ module SoapyCake
|
|
2
2
|
class AdminTrack < Client
|
3
3
|
include Helper
|
4
4
|
|
5
|
+
CONVERSION_DEFAULTS = {
|
6
|
+
add_to_existing_payout: false,
|
7
|
+
received_option: 'total_revenue',
|
8
|
+
received: 0,
|
9
|
+
disposition_type: 'no_change',
|
10
|
+
update_revshare_payout: false,
|
11
|
+
effective_date_option: 'today',
|
12
|
+
notes_to_append: '',
|
13
|
+
disallow_on_billing_status: 'ignore'
|
14
|
+
}.freeze
|
15
|
+
|
5
16
|
def mass_conversion_insert(opts)
|
6
|
-
require_params(
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
campaign_id creative_id total_to_insert
|
11
|
-
)
|
12
|
-
)
|
17
|
+
require_params(opts, %i(
|
18
|
+
conversion_date affiliate_id sub_affiliate
|
19
|
+
campaign_id creative_id total_to_insert
|
20
|
+
))
|
13
21
|
|
14
22
|
run Request.new(:admin, :track, :mass_conversion_insert, opts)
|
15
23
|
end
|
16
24
|
|
25
|
+
def update_conversion(opts)
|
26
|
+
require_params(opts, %i(offer_id payout))
|
27
|
+
|
28
|
+
run Request.new(:admin, :track, :update_conversion, CONVERSION_DEFAULTS.merge(opts))
|
29
|
+
end
|
30
|
+
|
17
31
|
def decrypt_affiliate_link(opts = {})
|
18
32
|
run Request.new(:admin, :track, :decrypt_affiliate_link, opts)
|
19
33
|
end
|
data/lib/soapy_cake/const.rb
CHANGED
@@ -52,6 +52,12 @@ module SoapyCake
|
|
52
52
|
conversion_behavior_id: CONVERSION_BEHAVIOUR_ID,
|
53
53
|
conversion_cap_behavior: CONVERSION_BEHAVIOUR_ID,
|
54
54
|
conversion_behavior_on_redirect: CONVERSION_BEHAVIOUR_ID,
|
55
|
+
conversion_disposition_id: {
|
56
|
+
pending: 1,
|
57
|
+
rejected: 2,
|
58
|
+
approved: 3,
|
59
|
+
returned: 4
|
60
|
+
},
|
55
61
|
cap_type_id: {
|
56
62
|
click: 1,
|
57
63
|
conversion: 2
|
data/lib/soapy_cake/version.rb
CHANGED
File without changes
|
data/spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_update_conversion/updates_a_conversion.yml
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: https://cake-partner-domain.com/api/4/track.asmx
|
6
|
+
body:
|
7
|
+
encoding: UTF-8
|
8
|
+
string: |
|
9
|
+
<?xml version="1.0"?>
|
10
|
+
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns:cake="http://cakemarketing.com/api/4/">
|
11
|
+
<env:Header/>
|
12
|
+
<env:Body>
|
13
|
+
<cake:UpdateConversion>
|
14
|
+
<cake:api_key>cake-api-key</cake:api_key>
|
15
|
+
<cake:add_to_existing_payout>false</cake:add_to_existing_payout>
|
16
|
+
<cake:received_option>total_revenue</cake:received_option>
|
17
|
+
<cake:received>1.75</cake:received>
|
18
|
+
<cake:disposition_type>no_change</cake:disposition_type>
|
19
|
+
<cake:update_revshare_payout>false</cake:update_revshare_payout>
|
20
|
+
<cake:effective_date_option>today</cake:effective_date_option>
|
21
|
+
<cake:notes_to_append/>
|
22
|
+
<cake:disallow_on_billing_status>ignore</cake:disallow_on_billing_status>
|
23
|
+
<cake:conversion_id>145211</cake:conversion_id>
|
24
|
+
<cake:offer_id>5032</cake:offer_id>
|
25
|
+
<cake:payout>0.75</cake:payout>
|
26
|
+
</cake:UpdateConversion>
|
27
|
+
</env:Body>
|
28
|
+
</env:Envelope>
|
29
|
+
headers:
|
30
|
+
Content-Type:
|
31
|
+
- application/soap+xml;charset=UTF-8
|
32
|
+
response:
|
33
|
+
status:
|
34
|
+
code: 200
|
35
|
+
message: OK
|
36
|
+
headers:
|
37
|
+
Cache-Control:
|
38
|
+
- private, max-age=0
|
39
|
+
Content-Type:
|
40
|
+
- application/soap+xml; charset=utf-8
|
41
|
+
Server:
|
42
|
+
- Microsoft-IIS/8.5
|
43
|
+
X-Aspnet-Version:
|
44
|
+
- 4.0.30319
|
45
|
+
X-Powered-By:
|
46
|
+
- ASP.NET
|
47
|
+
Date:
|
48
|
+
- Mon, 12 Oct 2015 09:58:20 GMT
|
49
|
+
Content-Length:
|
50
|
+
- '446'
|
51
|
+
body:
|
52
|
+
encoding: UTF-8
|
53
|
+
string: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"
|
54
|
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><UpdateConversionResponse
|
55
|
+
xmlns="http://cakemarketing.com/api/4/"><UpdateConversionResult><success>true</success><message>Conversion
|
56
|
+
Updated</message></UpdateConversionResult></UpdateConversionResponse></soap:Body></soap:Envelope>
|
57
|
+
http_version:
|
58
|
+
recorded_at: Mon, 12 Oct 2015 09:58:29 GMT
|
59
|
+
recorded_with: VCR 2.9.3
|
@@ -1,18 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
RSpec.describe SoapyCake::AdminTrack do
|
4
|
-
describe '#decrypt_affiliate_link' do
|
5
|
-
let(:service) { :track }
|
6
|
-
let(:cake_method) { :decrypt_affiliate_link }
|
7
|
-
let(:method) { :decrypt_affiliate_link }
|
8
|
-
let(:cake_opts) { { a: 1 } }
|
9
|
-
let(:opts) { nil }
|
10
|
-
|
11
|
-
it_behaves_like 'a cake admin method'
|
12
|
-
end
|
13
|
-
|
14
4
|
describe '#mass_conversion_insert', :vcr do
|
15
|
-
it '
|
5
|
+
it 'inserts conversions' do
|
16
6
|
result = subject.mass_conversion_insert(
|
17
7
|
conversion_date: Date.new(2015, 5, 6),
|
18
8
|
affiliate_id: 16059,
|
@@ -25,4 +15,17 @@ RSpec.describe SoapyCake::AdminTrack do
|
|
25
15
|
expect(result).to eq(success: true, message: 'Conversions Inserted')
|
26
16
|
end
|
27
17
|
end
|
18
|
+
|
19
|
+
describe '#update_conversion', :vcr do
|
20
|
+
it 'updates a conversion' do
|
21
|
+
result = subject.update_conversion(
|
22
|
+
conversion_id: 145211,
|
23
|
+
offer_id: 5032,
|
24
|
+
payout: 0.75,
|
25
|
+
received: 1.75
|
26
|
+
)
|
27
|
+
|
28
|
+
expect(result).to eq(success: true, message: 'Conversion Updated')
|
29
|
+
end
|
30
|
+
end
|
28
31
|
end
|
@@ -10,4 +10,14 @@ RSpec.describe SoapyCake::AdminTrack do
|
|
10
10
|
|
11
11
|
it_behaves_like 'a cake admin method'
|
12
12
|
end
|
13
|
+
|
14
|
+
describe '#update_conversion' do
|
15
|
+
let(:service) { :track }
|
16
|
+
let(:cake_method) { :update_conversion }
|
17
|
+
let(:method) { :update_conversion }
|
18
|
+
let(:cake_opts) { described_class::CONVERSION_DEFAULTS.merge(opts) }
|
19
|
+
let(:opts) { { offer_id: 42, payout: 0 } }
|
20
|
+
|
21
|
+
it_behaves_like 'a cake admin method'
|
22
|
+
end
|
13
23
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: soapy_cake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ad2games GmbH
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -216,7 +216,8 @@ files:
|
|
216
216
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offer_tiers/edits_an_offer_tier.yml
|
217
217
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offers/creates_an_offer.yml
|
218
218
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offers/updates_an_offer.yml
|
219
|
-
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_mass_conversion_insert/
|
219
|
+
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_mass_conversion_insert/inserts_conversions.yml
|
220
|
+
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_update_conversion/updates_a_conversion.yml
|
220
221
|
- spec/integration/soapy_cake/admin_addedit_spec.rb
|
221
222
|
- spec/integration/soapy_cake/admin_spec.rb
|
222
223
|
- spec/integration/soapy_cake/admin_track_spec.rb
|
@@ -276,7 +277,8 @@ test_files:
|
|
276
277
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offer_tiers/edits_an_offer_tier.yml
|
277
278
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offers/creates_an_offer.yml
|
278
279
|
- spec/fixtures/vcr_cassettes/SoapyCake_AdminAddedit/offers/updates_an_offer.yml
|
279
|
-
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_mass_conversion_insert/
|
280
|
+
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_mass_conversion_insert/inserts_conversions.yml
|
281
|
+
- spec/fixtures/vcr_cassettes/SoapyCake_AdminTrack/_update_conversion/updates_a_conversion.yml
|
280
282
|
- spec/integration/soapy_cake/admin_addedit_spec.rb
|
281
283
|
- spec/integration/soapy_cake/admin_spec.rb
|
282
284
|
- spec/integration/soapy_cake/admin_track_spec.rb
|