sem4r 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +11 -0
- data/Gemfile.lock +36 -0
- data/README.rdoc +30 -0
- data/Rakefile +15 -12
- data/VERSION.yml +1 -1
- data/examples_blog/2009-11-29-hello-world.rb +0 -1
- data/examples_sem4r/01_get_account.rb +1 -1
- data/examples_sem4r/02_get_info.rb +6 -2
- data/examples_sem4r/03_list_ad.rb +1 -1
- data/examples_sem4r/04_list_keywords.rb +1 -1
- data/examples_sem4r/05_request_report.rb +1 -2
- data/examples_sem4r/05_request_report_2010.rb +19 -4
- data/examples_sem4r/06_create_campaigns.rb +1 -1
- data/examples_sem4r/07_create_campaigns_block.rb +1 -1
- data/examples_sem4r/07_create_campaigns_simple.rb +1 -1
- data/examples_sem4r/08_ad_params.rb +1 -1
- data/examples_sem4r/09_targeting_idea.rb +1 -1
- data/examples_sem4r/10_get_location.rb +1 -1
- data/examples_sem4r/11_submit_bulk_job.rb +1 -1
- data/examples_sem4r/12_list_bulk_job.rb +1 -1
- data/examples_sem4r/30_prune_empty_adgroup.rb +1 -1
- data/examples_sem4r/31_empty_accounts.rb +1 -1
- data/examples_sem4r/example_helper.rb +5 -10
- data/lib/sem4r/account.rb +3 -306
- data/lib/sem4r/ad_group/ad_group.rb +16 -14
- data/lib/sem4r/ad_group/ad_group_bids.rb +11 -10
- data/lib/sem4r/ad_group/ad_group_service.rb +5 -5
- data/lib/sem4r/ad_group_ad/ad_group_ad.rb +1 -1
- data/lib/sem4r/ad_group_ad/ad_group_ad_service.rb +5 -5
- data/lib/sem4r/ad_group_ad/ad_group_mobile_ad.rb +9 -9
- data/lib/sem4r/ad_group_ad/ad_group_text_ad.rb +9 -9
- data/lib/sem4r/ad_group_criterion/ad_group_criterion.rb +6 -6
- data/lib/sem4r/ad_group_criterion/ad_group_criterion_bids.rb +5 -6
- data/lib/sem4r/ad_group_criterion/ad_group_criterion_operations.rb +0 -1
- data/lib/sem4r/ad_group_criterion/ad_group_criterion_service.rb +4 -4
- data/lib/sem4r/ad_group_criterion/criterion.rb +3 -3
- data/lib/sem4r/ad_group_criterion/criterion_keyword.rb +3 -3
- data/lib/sem4r/ad_group_criterion/criterion_placement.rb +2 -2
- data/lib/sem4r/ad_param/ad_param.rb +3 -3
- data/lib/sem4r/ad_param/ad_param_service.rb +5 -5
- data/lib/sem4r/adwords.rb +1 -0
- data/lib/sem4r/api_counters.rb +1 -0
- data/lib/sem4r/base.rb +1 -0
- data/lib/sem4r/bulk_mutate_job/bulk_mutate_job.rb +2 -2
- data/lib/sem4r/bulk_mutate_job/bulk_mutate_job_account_extension.rb +59 -0
- data/lib/sem4r/bulk_mutate_job/bulk_mutate_job_service.rb +5 -5
- data/lib/sem4r/campaign/campaign.rb +10 -10
- data/lib/sem4r/campaign/campaign_account_extension.rb +87 -0
- data/lib/sem4r/campaign/campaign_service.rb +6 -6
- data/lib/sem4r/campaign_target/campaign_target_service.rb +22 -22
- data/lib/sem4r/cli/cli_command.rb +1 -0
- data/lib/sem4r/cli/cli_common_args.rb +10 -3
- data/lib/sem4r/cli/cli_helpers.rb +1 -0
- data/lib/sem4r/cli/cli_sem.rb +1 -0
- data/lib/sem4r/cli/{cli_download_report.rb → commands/cli_download_report.rb} +2 -1
- data/lib/sem4r/cli/{cli_ideas.rb → commands/cli_ideas.rb} +1 -0
- data/lib/sem4r/cli/{cli_commands.rb → commands/cli_info.rb} +3 -23
- data/lib/sem4r/cli/{cli_list_ads.rb → commands/cli_list_ads.rb} +1 -0
- data/lib/sem4r/cli/commands/cli_list_campaign.rb +35 -0
- data/lib/sem4r/cli/commands/cli_list_client.rb +36 -0
- data/lib/sem4r/cli/{cli_list_keywords.rb → commands/cli_list_keywords.rb} +1 -0
- data/lib/sem4r/cli/commands/cli_list_report.rb +34 -0
- data/lib/sem4r/cli/commands/cli_repdef.rb +109 -0
- data/lib/sem4r/cli/commands/cli_report.rb +78 -0
- data/lib/sem4r/cli/{cli_request_report.rb → commands/cli_request_report.rb} +1 -0
- data/lib/sem4r/credentials.rb +1 -0
- data/lib/sem4r/extensions.rb +22 -1
- data/lib/sem4r/geo_location/geo_location_account_extension.rb +43 -0
- data/lib/sem4r/geo_location/geo_location_service.rb +4 -4
- data/lib/sem4r/info/info_account_extension.rb +48 -0
- data/lib/sem4r/info/info_selector.rb +108 -0
- data/lib/sem4r/info/info_service.rb +11 -66
- data/lib/sem4r/{common/operation.rb → operation.rb} +3 -1
- data/lib/sem4r/report_definition/report_definition.rb +75 -15
- data/lib/sem4r/report_definition/report_definition_account_extension.rb +79 -0
- data/lib/sem4r/report_definition/report_definition_operation.rb +3 -1
- data/lib/sem4r/report_definition/report_definition_service.rb +7 -7
- data/lib/sem4r/report_definition/report_field.rb +57 -0
- data/lib/sem4r/sem4r_error.rb +1 -0
- data/lib/sem4r/services/http_connector.rb +93 -0
- data/lib/sem4r/services/service.rb +1 -1
- data/lib/sem4r/services/soap_call.rb +27 -5
- data/lib/sem4r/services/soap_connector.rb +2 -147
- data/lib/sem4r/services/soap_dumper.rb +105 -0
- data/lib/sem4r/services/soap_message_v13.rb +15 -9
- data/lib/sem4r/services/{soap_message_v2009.rb → soap_message_v2010.rb} +26 -12
- data/lib/sem4r/targeting_idea/targeting_idea.rb +16 -11
- data/lib/sem4r/targeting_idea/targeting_idea_account_extension.rb +52 -0
- data/lib/sem4r/targeting_idea/targeting_idea_selector.rb +36 -10
- data/lib/sem4r/targeting_idea/targeting_idea_service.rb +5 -5
- data/lib/sem4r/v13_account/account_account_extension.rb +103 -0
- data/lib/sem4r/v13_account/billing_address.rb +10 -21
- data/lib/sem4r/v13_report/report.rb +8 -8
- data/lib/sem4r/v13_report/report_account_extension.rb +63 -0
- data/lib/sem4r/v13_report/report_job.rb +1 -1
- data/lib/sem4r.rb +27 -6
- data/lib/sem4r_cli.rb +4 -6
- data/lib/{sem4r → soap_helpers}/soap_attributes.rb +105 -13
- data/sem4r.gemspec +229 -190
- data/spec/{aggregates_spec_helper.rb → aggregates_rspec_helper.rb} +0 -0
- data/spec/build_fixtures.rb +84 -0
- data/spec/rspec_hash.rb +66 -0
- data/spec/{spec_helper.rb → rspec_helper.rb} +4 -2
- data/spec/rspec_matchers.rb +102 -0
- data/spec/rspec_sem4r_helper.rb +88 -0
- data/spec/sem4r/account_spec.rb +3 -4
- data/spec/sem4r/ad_group/ad_group_bids_spec.rb +4 -3
- data/spec/sem4r/ad_group/ad_group_service_spec.rb +8 -7
- data/spec/sem4r/ad_group/ad_group_spec.rb +5 -4
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/get-first-req.xml +0 -0
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/get-first-res.xml +0 -0
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/get-manual-cpm-bids-req.xml +0 -0
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/get-manual-cpm-bids-res.xml +0 -0
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/mutate_add-req.xml +0 -0
- data/spec/{fixtures/services/ad_group → sem4r/ad_group/fixtures}/mutate_add-res.xml +0 -0
- data/spec/sem4r/ad_group_ad/ad_group_ad_operation_spec.rb +3 -3
- data/spec/sem4r/ad_group_ad/ad_group_ad_service_spec.rb +6 -5
- data/spec/sem4r/ad_group_ad/ad_group_ad_spec.rb +6 -5
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/get_mobile_ad-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/get_mobile_ad-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/get_text_ad-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/get_text_ad-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_mobile_ad-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_mobile_ad-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_text_ad-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_text_ad-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_two_criterions-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_ad → sem4r/ad_group_ad/fixtures}/mutate_add_two_criterions-res.xml +0 -0
- data/spec/sem4r/ad_group_criterion/ad_group_criterion_bids_spec.rb +5 -4
- data/spec/sem4r/ad_group_criterion/ad_group_criterion_service_spec.rb +6 -5
- data/spec/sem4r/ad_group_criterion/ad_group_criterion_spec.rb +6 -5
- data/spec/sem4r/ad_group_criterion/criterion_spec.rb +5 -4
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/get-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/get-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_criterion_keyword-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_criterion_keyword-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_criterion_placement-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_criterion_placement-res.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_negative_keyword-req.xml +0 -0
- data/spec/{fixtures/services/ad_group_criterion → sem4r/ad_group_criterion/fixtures}/mutate_add_negative_keyword-res.xml +0 -0
- data/spec/sem4r/ad_param/ad_param_service_spec.rb +6 -5
- data/spec/sem4r/ad_param/ad_param_spec.rb +3 -2
- data/spec/{fixtures/services/ad_param → sem4r/ad_param/fixtures}/mutate_set-req.xml +0 -0
- data/spec/{fixtures/services/ad_param → sem4r/ad_param/fixtures}/mutate_set-res.xml +0 -0
- data/spec/sem4r/adwords_spec.rb +1 -1
- data/spec/sem4r/bulk_mutate_job/bulk_mutate_job_service_spec.rb +6 -5
- data/spec/sem4r/bulk_mutate_job/bulk_mutate_job_spec.rb +4 -3
- data/spec/{fixtures/services/bulk_mutate_job → sem4r/bulk_mutate_job/fixtures}/get-req.xml +0 -0
- data/spec/{fixtures/services/bulk_mutate_job → sem4r/bulk_mutate_job/fixtures}/get-res.xml +0 -0
- data/spec/{fixtures/services/bulk_mutate_job → sem4r/bulk_mutate_job/fixtures}/mutate-req.xml +0 -0
- data/spec/{fixtures/services/bulk_mutate_job → sem4r/bulk_mutate_job/fixtures}/mutate-res.xml +0 -0
- data/spec/sem4r/bulk_mutate_job/job_operation_spec.rb +3 -2
- data/spec/sem4r/campaign/campaign_service_spec.rb +8 -7
- data/spec/sem4r/campaign/campaign_spec.rb +3 -2
- data/spec/{fixtures/services/campaign → sem4r/campaign/fixtures}/get-req.xml +0 -0
- data/spec/{fixtures/services/campaign → sem4r/campaign/fixtures}/get-res.xml +0 -0
- data/spec/{fixtures/services/campaign → sem4r/campaign/fixtures}/mutate_add-req.xml +0 -0
- data/spec/{fixtures/services/campaign → sem4r/campaign/fixtures}/mutate_add-res.xml +0 -0
- data/spec/sem4r/cli/cli_spec.rb +2 -3
- data/spec/sem4r/credentials_spec.rb +1 -1
- data/spec/sem4r/info/account_info_extension_spec.rb +51 -0
- data/spec/sem4r/info/fixtures/get_unit_count-req.xml +34 -0
- data/spec/sem4r/info/fixtures/get_unit_count-res.xml +27 -0
- data/spec/sem4r/nokogiri_parsing_spec.rb +105 -0
- data/spec/{fixtures/services/report_definition → sem4r/report_definition/fixtures}/mutate_add-req.xml +0 -0
- data/spec/{fixtures/services/report_definition → sem4r/report_definition/fixtures}/mutate_add-req_orig.xml +0 -0
- data/spec/sem4r/report_definition/report_definition_service_spec.rb +5 -3
- data/spec/sem4r/report_definition/report_definition_spec.rb +6 -3
- data/spec/sem4r/rexml_parsing_spec.rb +22 -22
- data/spec/sem4r/services/service_spec.rb +2 -1
- data/spec/sem4r/services/soap_call_spec.rb +6 -5
- data/spec/sem4r/services/soap_message_v13_spec.rb +5 -11
- data/spec/{fixtures/services/targeting_idea → sem4r/targeting_idea/fixtures}/get-req-all-options.xml +0 -0
- data/spec/{fixtures/services/targeting_idea → sem4r/targeting_idea/fixtures}/get-req.xml +9 -11
- data/spec/sem4r/targeting_idea/fixtures/get-res.xml +2276 -0
- data/spec/sem4r/targeting_idea/targeting_idea_selector_spec.rb +30 -11
- data/spec/sem4r/targeting_idea/targeting_idea_service_spec.rb +4 -3
- data/spec/sem4r/targeting_idea/targeting_idea_spec.rb +5 -4
- data/spec/sem4r/v13_account/account_account_extension_spec.rb +47 -0
- data/spec/sem4r/v13_account/account_service_spec.rb +6 -5
- data/spec/sem4r/v13_account/billing_address_spec.rb +40 -0
- data/spec/{fixtures/services/v13_account → sem4r/v13_account/fixtures}/get_account_info-req.xml +0 -0
- data/spec/{fixtures/services/v13_account → sem4r/v13_account/fixtures}/get_account_info-res.xml +0 -0
- data/spec/{fixtures/services/v13_account → sem4r/v13_account/fixtures}/get_client_accounts-req.xml +0 -0
- data/spec/{fixtures/services/v13_account → sem4r/v13_account/fixtures}/get_client_accounts-res.xml +0 -0
- data/spec/{fixtures/services/v13_report → sem4r/v13_report/fixtures}/get_all_jobs-req.xml +0 -0
- data/spec/{fixtures/services/v13_report → sem4r/v13_report/fixtures}/get_all_jobs-res.xml +2 -2
- data/spec/{fixtures/services/v13_report → sem4r/v13_report/fixtures}/schedule_report_job-req.xml +0 -0
- data/spec/{fixtures/services/v13_report → sem4r/v13_report/fixtures}/schedule_report_job-res.xml +0 -0
- data/spec/sem4r/v13_report/report_service_spec.rb +13 -11
- data/spec/sem4r/v13_report/report_spec.rb +4 -3
- data/spec/sem4r_stubs.rb +182 -0
- data/spec/soap_helpers/soap_attributes_spec.rb +129 -0
- metadata +225 -125
- data/spec/fixtures/services/info/get_unit_count-req.xml +0 -30
- data/spec/fixtures/services/info/get_unit_count-res.xml +0 -29
- data/spec/fixtures/services/targeting_idea/get-res.xml +0 -3601
- data/spec/sem4r/soap_attributes_spec.rb +0 -116
- data/spec/sem4r_spec_helper.rb +0 -353
@@ -22,27 +22,27 @@
|
|
22
22
|
#
|
23
23
|
# -------------------------------------------------------------------------
|
24
24
|
|
25
|
-
require File.expand_path(File.dirname(__FILE__) + '/../
|
25
|
+
require File.expand_path(File.dirname(__FILE__) + '/../rspec_helper')
|
26
26
|
|
27
27
|
describe "Test Parsing with REXML" do
|
28
28
|
include Sem4rSpecHelper
|
29
29
|
|
30
30
|
|
31
|
-
it "ddd" do
|
32
|
-
pending "test"
|
33
|
-
xml_document =
|
34
|
-
els = REXML::XPath.match( xml_document, "//mutateResponse/rval/value/ad/id")
|
35
|
-
els.each {|e| puts e.text.strip.to_i }
|
36
|
-
end
|
31
|
+
# it "ddd" do
|
32
|
+
# pending "test"
|
33
|
+
# xml_document = read_xml_document_with_rexml("services", "ad_group_ad", "mutate_add_two_criterions-res.xml")
|
34
|
+
# els = REXML::XPath.match( xml_document, "//mutateResponse/rval/value/ad/id")
|
35
|
+
# els.each {|e| puts e.text.strip.to_i }
|
36
|
+
# end
|
37
37
|
|
38
38
|
it "test_account_get_client_accounts" do
|
39
|
-
xml_document =
|
39
|
+
xml_document = read_xml_document_with_rexml("v13_account", "get_client_accounts-res.xml")
|
40
40
|
els = REXML::XPath.match( xml_document, "//getClientAccountsReturn")
|
41
41
|
els.length.should == 5
|
42
42
|
end
|
43
43
|
|
44
44
|
it "test_campaign_get" do
|
45
|
-
xml_document =
|
45
|
+
xml_document = read_xml_document_with_rexml("campaign", "get-res.xml")
|
46
46
|
rval = REXML::XPath.first( xml_document, "//getResponse/rval")
|
47
47
|
els = REXML::XPath.match( rval, "entries")
|
48
48
|
|
@@ -74,27 +74,27 @@ describe "Test Parsing with REXML" do
|
|
74
74
|
names_expected.should == names
|
75
75
|
end
|
76
76
|
|
77
|
-
it "test_adgroup_criterion_get" do
|
78
|
-
xml_document =
|
79
|
-
rval = REXML::XPath.first( xml_document, "//getResponse/rval")
|
80
|
-
|
81
|
-
el = REXML::XPath.first( rval, "entries/criterion[@xsi:type='Keyword']")
|
82
|
-
|
83
|
-
el.elements["id"].text.should == "11536082"
|
84
|
-
el.elements["text"].text.should == "pippo"
|
85
|
-
el.elements["matchType"].text.should == "BROAD"
|
86
|
-
end
|
77
|
+
# it "test_adgroup_criterion_get" do
|
78
|
+
# xml_document = read_xml_document_with_rexml("ad_group_criterion", "get-res.xml")
|
79
|
+
# rval = REXML::XPath.first( xml_document, "//getResponse/rval")
|
80
|
+
#
|
81
|
+
# el = REXML::XPath.first( rval, "entries/criterion[@xsi:type='Keyword']")
|
82
|
+
#
|
83
|
+
# el.elements["id"].text.should == "11536082"
|
84
|
+
# el.elements["text"].text.should == "pippo"
|
85
|
+
# el.elements["matchType"].text.should == "BROAD"
|
86
|
+
# end
|
87
87
|
|
88
88
|
it "test_info_get" do
|
89
|
-
xml_document =
|
89
|
+
xml_document = read_xml_document_with_rexml("info", "get_unit_count-res.xml")
|
90
90
|
|
91
91
|
response_header = REXML::XPath.first(xml_document, "//ResponseHeader")
|
92
92
|
response_header.elements["operations"].text.strip.should == "1"
|
93
|
-
response_header.elements["responseTime"].text.strip.should == "
|
93
|
+
response_header.elements["responseTime"].text.strip.should == "291"
|
94
94
|
response_header.elements["units"].text.strip.should == "1"
|
95
95
|
|
96
96
|
cost = REXML::XPath.first( xml_document, "//getResponse/rval/cost")
|
97
|
-
cost.text.strip.should == "
|
97
|
+
cost.text.strip.should == "0"
|
98
98
|
end
|
99
99
|
|
100
100
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
1
2
|
# -------------------------------------------------------------------------
|
2
3
|
# Copyright (c) 2009-2010 Sem4r sem4ruby@gmail.com
|
3
4
|
#
|
@@ -22,7 +23,7 @@
|
|
22
23
|
#
|
23
24
|
# -------------------------------------------------------------------------
|
24
25
|
|
25
|
-
require File.expand_path(File.dirname(__FILE__) + '/../../
|
26
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../rspec_helper')
|
26
27
|
|
27
28
|
describe Service do
|
28
29
|
include Sem4rSpecHelper
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
1
2
|
# -------------------------------------------------------------------------
|
2
3
|
# Copyright (c) 2009-2010 Sem4r sem4ruby@gmail.com
|
3
4
|
#
|
@@ -22,7 +23,7 @@
|
|
22
23
|
#
|
23
24
|
# -------------------------------------------------------------------------
|
24
25
|
|
25
|
-
require File.expand_path(File.dirname(__FILE__) + '/../../
|
26
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../rspec_helper')
|
26
27
|
|
27
28
|
describe SoapCall do
|
28
29
|
include Sem4rSpecHelper
|
@@ -38,10 +39,10 @@ describe SoapCall do
|
|
38
39
|
@connector = connector
|
39
40
|
end
|
40
41
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
42
|
+
soap_call_v2010 :get, :mutate => false
|
43
|
+
soap_call_v2010 :get_with_arg, :mutate => false
|
44
|
+
soap_call_v2010 :mutate
|
45
|
+
soap_call_v2010 :mutate_bis, :mutate => true
|
45
46
|
|
46
47
|
private
|
47
48
|
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
1
2
|
# -------------------------------------------------------------------------
|
2
3
|
# Copyright (c) 2009-2010 Sem4r sem4ruby@gmail.com
|
3
4
|
#
|
@@ -22,24 +23,17 @@
|
|
22
23
|
#
|
23
24
|
# -------------------------------------------------------------------------
|
24
25
|
|
25
|
-
require File.expand_path(File.dirname(__FILE__) + '/../../
|
26
|
+
require File.expand_path(File.dirname(__FILE__) + '/../../rspec_helper')
|
26
27
|
|
27
28
|
describe SoapMessageV13 do
|
28
|
-
|
29
29
|
include Sem4rSpecHelper
|
30
30
|
|
31
|
-
before
|
32
|
-
@credentials =
|
33
|
-
# @credentials.should_receive(:sandbox?).and_return(true)
|
34
|
-
@credentials.should_receive(:email).and_return("example@gmail.com")
|
35
|
-
@credentials.should_receive(:password).and_return("secret")
|
36
|
-
@credentials.should_receive(:client_email).and_return(nil)
|
37
|
-
@credentials.should_receive(:useragent).and_return("sem4r")
|
38
|
-
@credentials.should_receive(:developer_token).and_return("dev_token")
|
31
|
+
before do
|
32
|
+
@credentials = stub_credentials
|
39
33
|
end
|
40
34
|
|
41
35
|
it "should update counters" do
|
42
|
-
response_xml =
|
36
|
+
response_xml = read_xml("v13_report", "get_all_jobs-res.xml")
|
43
37
|
connector = mock("connector")
|
44
38
|
connector.should_receive(:send).and_return(response_xml)
|
45
39
|
|
data/spec/{fixtures/services/targeting_idea → sem4r/targeting_idea/fixtures}/get-req-all-options.xml
RENAMED
File without changes
|
@@ -14,13 +14,10 @@
|
|
14
14
|
</s:RequestHeader>
|
15
15
|
</env:Header>
|
16
16
|
<env:Body>
|
17
|
-
|
18
17
|
<s:get>
|
19
18
|
<s:selector>
|
20
|
-
|
21
19
|
<s:ideaType>KEYWORD</s:ideaType>
|
22
20
|
<s:requestType>IDEAS</s:requestType>
|
23
|
-
|
24
21
|
<s:searchParameters xsi:type='s:ExcludedKeywordSearchParameter'>
|
25
22
|
<s:keywords xsi:type='Keyword'>
|
26
23
|
<Criterion.Type>Keyword</Criterion.Type>
|
@@ -28,7 +25,6 @@
|
|
28
25
|
<matchType>EXACT</matchType>
|
29
26
|
</s:keywords>
|
30
27
|
</s:searchParameters>
|
31
|
-
|
32
28
|
<s:searchParameters xsi:type='s:KeywordMatchTypeSearchParameter'>
|
33
29
|
<s:keywordMatchTypes>BROAD</s:keywordMatchTypes>
|
34
30
|
<s:keywordMatchTypes>EXACT</s:keywordMatchTypes>
|
@@ -40,21 +36,23 @@
|
|
40
36
|
<text>dvd player</text>
|
41
37
|
<matchType>EXACT</matchType>
|
42
38
|
</s:keywords>
|
39
|
+
<s:keywords xsi:type='Keyword'>
|
40
|
+
<Criterion.Type>Keyword</Criterion.Type>
|
41
|
+
<text>car stereo</text>
|
42
|
+
<matchType>EXACT</matchType>
|
43
|
+
</s:keywords>
|
43
44
|
</s:searchParameters>
|
44
|
-
|
45
45
|
<s:searchParameters xsi:type='s:CountryTargetSearchParameter'>
|
46
|
-
<s:countryTargets><
|
46
|
+
<s:countryTargets><countryCode>US</countryCode></s:countryTargets>
|
47
|
+
</s:searchParameters>
|
48
|
+
<s:searchParameters xsi:type='s:NgramGroupsSearchParameter'>
|
49
|
+
<s:ngramGroups>dvd player</s:ngramGroups>
|
47
50
|
</s:searchParameters>
|
48
|
-
|
49
51
|
<s:paging>
|
50
52
|
<startIndex>0</startIndex>
|
51
53
|
<numberResults>100</numberResults>
|
52
54
|
</s:paging>
|
53
|
-
|
54
55
|
</s:selector>
|
55
56
|
</s:get>
|
56
|
-
|
57
57
|
</env:Body>
|
58
58
|
</env:Envelope>
|
59
|
-
|
60
|
-
|