google-adwords-api 0.5.2 → 0.5.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/ChangeLog +4 -0
  2. data/README +1 -1
  3. data/lib/adwords_api/credential_handler.rb +1 -2
  4. data/lib/adwords_api/report_utils.rb +2 -1
  5. data/lib/adwords_api/v201109/ad_extension_override_service.rb +6 -4
  6. data/lib/adwords_api/v201109/ad_extension_override_service_registry.rb +6 -4
  7. data/lib/adwords_api/v201109/ad_group_ad_service.rb +6 -4
  8. data/lib/adwords_api/v201109/ad_group_ad_service_registry.rb +6 -4
  9. data/lib/adwords_api/v201109/ad_group_criterion_service.rb +6 -4
  10. data/lib/adwords_api/v201109/ad_group_criterion_service_registry.rb +6 -4
  11. data/lib/adwords_api/v201109/ad_group_service.rb +6 -4
  12. data/lib/adwords_api/v201109/ad_group_service_registry.rb +6 -4
  13. data/lib/adwords_api/v201109/ad_param_service.rb +6 -4
  14. data/lib/adwords_api/v201109/ad_param_service_registry.rb +6 -4
  15. data/lib/adwords_api/v201109/alert_service.rb +6 -4
  16. data/lib/adwords_api/v201109/alert_service_registry.rb +6 -4
  17. data/lib/adwords_api/v201109/bulk_mutate_job_service.rb +6 -4
  18. data/lib/adwords_api/v201109/bulk_mutate_job_service_registry.rb +6 -4
  19. data/lib/adwords_api/v201109/campaign_ad_extension_service.rb +6 -4
  20. data/lib/adwords_api/v201109/campaign_ad_extension_service_registry.rb +6 -4
  21. data/lib/adwords_api/v201109/campaign_criterion_service.rb +6 -4
  22. data/lib/adwords_api/v201109/campaign_criterion_service_registry.rb +6 -4
  23. data/lib/adwords_api/v201109/campaign_service.rb +6 -4
  24. data/lib/adwords_api/v201109/campaign_service_registry.rb +6 -4
  25. data/lib/adwords_api/v201109/campaign_target_service.rb +6 -4
  26. data/lib/adwords_api/v201109/campaign_target_service_registry.rb +6 -4
  27. data/lib/adwords_api/v201109/constant_data_service.rb +6 -4
  28. data/lib/adwords_api/v201109/constant_data_service_registry.rb +6 -4
  29. data/lib/adwords_api/v201109/conversion_tracker_service.rb +6 -4
  30. data/lib/adwords_api/v201109/conversion_tracker_service_registry.rb +6 -4
  31. data/lib/adwords_api/v201109/create_account_service.rb +6 -4
  32. data/lib/adwords_api/v201109/create_account_service_registry.rb +6 -4
  33. data/lib/adwords_api/v201109/customer_sync_service.rb +6 -4
  34. data/lib/adwords_api/v201109/customer_sync_service_registry.rb +6 -4
  35. data/lib/adwords_api/v201109/data_service.rb +6 -4
  36. data/lib/adwords_api/v201109/data_service_registry.rb +6 -4
  37. data/lib/adwords_api/v201109/experiment_service.rb +6 -4
  38. data/lib/adwords_api/v201109/experiment_service_registry.rb +6 -4
  39. data/lib/adwords_api/v201109/geo_location_service.rb +6 -4
  40. data/lib/adwords_api/v201109/geo_location_service_registry.rb +6 -4
  41. data/lib/adwords_api/v201109/info_service.rb +6 -4
  42. data/lib/adwords_api/v201109/info_service_registry.rb +6 -4
  43. data/lib/adwords_api/v201109/location_criterion_service.rb +6 -4
  44. data/lib/adwords_api/v201109/location_criterion_service_registry.rb +6 -4
  45. data/lib/adwords_api/v201109/media_service.rb +6 -4
  46. data/lib/adwords_api/v201109/media_service_registry.rb +6 -4
  47. data/lib/adwords_api/v201109/mutate_job_service.rb +6 -4
  48. data/lib/adwords_api/v201109/mutate_job_service_registry.rb +6 -4
  49. data/lib/adwords_api/v201109/report_definition_service.rb +6 -4
  50. data/lib/adwords_api/v201109/report_definition_service_registry.rb +6 -4
  51. data/lib/adwords_api/v201109/serviced_account_service.rb +6 -4
  52. data/lib/adwords_api/v201109/serviced_account_service_registry.rb +6 -4
  53. data/lib/adwords_api/v201109/targeting_idea_service.rb +6 -4
  54. data/lib/adwords_api/v201109/targeting_idea_service_registry.rb +6 -4
  55. data/lib/adwords_api/v201109/traffic_estimator_service.rb +6 -4
  56. data/lib/adwords_api/v201109/traffic_estimator_service_registry.rb +6 -4
  57. data/lib/adwords_api/v201109/user_list_service.rb +6 -4
  58. data/lib/adwords_api/v201109/user_list_service_registry.rb +6 -4
  59. data/lib/adwords_api/version.rb +1 -1
  60. data/test/adwords_api/test_credential_handler.rb +105 -0
  61. data/test/adwords_api/test_report_utils.rb +66 -0
  62. metadata +6 -10
@@ -1,9 +1,11 @@
1
- #!/usr/bin/ruby
1
+ # Encoding: utf-8
2
+ #
2
3
  # This is auto-generated code, changes will be overwritten.
3
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
- # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
4
  #
6
- # Code generated by AdsCommon library 0.6.0 on 2011-12-02 16:43:03.
5
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
6
+ # License:: Licensed under the Apache License, Version 2.0.
7
+ #
8
+ # Code generated by AdsCommon library 0.6.4 on 2012-04-12 13:18:22.
7
9
 
8
10
  require 'adwords_api/errors'
9
11
 
@@ -1,9 +1,11 @@
1
- #!/usr/bin/ruby
1
+ # Encoding: utf-8
2
+ #
2
3
  # This is auto-generated code, changes will be overwritten.
3
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
- # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
4
  #
6
- # Code generated by AdsCommon library 0.6.0 on 2011-12-02 16:43:05.
5
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
6
+ # License:: Licensed under the Apache License, Version 2.0.
7
+ #
8
+ # Code generated by AdsCommon library 0.6.4 on 2012-04-12 13:18:23.
7
9
 
8
10
  require 'ads_common/savon_service'
9
11
  require 'adwords_api/v201109/user_list_service_registry'
@@ -1,9 +1,11 @@
1
- #!/usr/bin/ruby
1
+ # Encoding: utf-8
2
+ #
2
3
  # This is auto-generated code, changes will be overwritten.
3
- # Copyright:: Copyright 2011, Google Inc. All Rights Reserved.
4
- # License:: Licensed under the Apache License,Version 2.0 (the "License").
5
4
  #
6
- # Code generated by AdsCommon library 0.6.0 on 2011-12-02 16:43:05.
5
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
6
+ # License:: Licensed under the Apache License, Version 2.0.
7
+ #
8
+ # Code generated by AdsCommon library 0.6.4 on 2012-04-12 13:18:23.
7
9
 
8
10
  require 'adwords_api/errors'
9
11
 
@@ -21,6 +21,6 @@
21
21
 
22
22
  module AdwordsApi
23
23
  module ApiConfig
24
- CLIENT_LIB_VERSION = '0.5.2'
24
+ CLIENT_LIB_VERSION = '0.5.3'
25
25
  end
26
26
  end
@@ -0,0 +1,105 @@
1
+ #!/usr/bin/env ruby
2
+ # Encoding: utf-8
3
+ #
4
+ # Author:: api.dklimkin@gmail.com (Danial Klimkin)
5
+ #
6
+ # Copyright:: Copyright 2012, Google Inc. All Rights Reserved.
7
+ #
8
+ # License:: Licensed under the Apache License, Version 2.0 (the "License");
9
+ # you may not use this file except in compliance with the License.
10
+ # You may obtain a copy of the License at
11
+ #
12
+ # http://www.apache.org/licenses/LICENSE-2.0
13
+ #
14
+ # Unless required by applicable law or agreed to in writing, software
15
+ # distributed under the License is distributed on an "AS IS" BASIS,
16
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
17
+ # implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+ #
21
+ # Tests credential handler.
22
+
23
+ require 'test/unit'
24
+
25
+ require 'adwords_api'
26
+
27
+ # Overriding default access levels to public for tests.
28
+ module AdwordsApi
29
+ class CredentialHandler
30
+ public :validate_headers_for_server
31
+ end
32
+ end
33
+
34
+ class TestCredentialHandler < Test::Unit::TestCase
35
+ def test_validate_headers_for_server_client_email
36
+ config = AdsCommon::Config.new(
37
+ {:authentication => {:client_email => 'email@example.com'}})
38
+ handler = AdwordsApi::CredentialHandler.new(config)
39
+ assert_nothing_raised do
40
+ handler.validate_headers_for_server(:v201101)
41
+ end
42
+ assert_raise(AdwordsApi::Errors::BadCredentialsError) do
43
+ handler.validate_headers_for_server(:v201109)
44
+ end
45
+ end
46
+
47
+ def test_validate_headers_for_server_client_customer_id
48
+ config = AdsCommon::Config.new(
49
+ {:authentication => {:client_customer_id => '123-456-7890'}})
50
+ handler = AdwordsApi::CredentialHandler.new(config)
51
+ assert_nothing_raised do
52
+ handler.validate_headers_for_server(:v201101)
53
+ handler.validate_headers_for_server(:v201109)
54
+ end
55
+ end
56
+
57
+ def test_validate_headers_for_server_valid_cid
58
+ config = AdsCommon::Config.new(
59
+ {:authentication => {:client_customer_id => '123-456-7890'}})
60
+ handler = AdwordsApi::CredentialHandler.new(config)
61
+ assert_nothing_raised do
62
+ handler.validate_headers_for_server(:v201109)
63
+ end
64
+
65
+ config = AdsCommon::Config.new(
66
+ {:authentication => {:client_customer_id => '1234567890'}})
67
+ handler = AdwordsApi::CredentialHandler.new(config)
68
+ assert_nothing_raised do
69
+ handler.validate_headers_for_server(:v201109)
70
+ end
71
+
72
+ config = AdsCommon::Config.new(
73
+ {:authentication => {:client_customer_id => 1234567890}})
74
+ handler = AdwordsApi::CredentialHandler.new(config)
75
+ assert_nothing_raised do
76
+ handler.validate_headers_for_server(:v201109)
77
+ end
78
+ end
79
+
80
+ def test_validate_headers_for_server_invalid_cid
81
+ config = AdsCommon::Config.new(
82
+ {:authentication => {:client_customer_id => 'demo@example.com'}})
83
+ handler = AdwordsApi::CredentialHandler.new(config)
84
+ assert_raise(AdwordsApi::Errors::BadCredentialsError) do
85
+ handler.validate_headers_for_server(:v201109)
86
+ end
87
+
88
+ config = AdsCommon::Config.new({
89
+ :authentication => {
90
+ :client_customer_id => 'demo@example.com 1234567890'
91
+ }
92
+ })
93
+ handler = AdwordsApi::CredentialHandler.new(config)
94
+ assert_raise(AdwordsApi::Errors::BadCredentialsError) do
95
+ handler.validate_headers_for_server(:v201109)
96
+ end
97
+
98
+ config = AdsCommon::Config.new(
99
+ {:authentication => {:client_customer_id => '123-456-7890-'}})
100
+ handler = AdwordsApi::CredentialHandler.new(config)
101
+ assert_raise(AdwordsApi::Errors::BadCredentialsError) do
102
+ handler.validate_headers_for_server(:v201109)
103
+ end
104
+ end
105
+ end
@@ -30,6 +30,7 @@ API_VERSION = :v201109
30
30
  module AdwordsApi
31
31
  class ReportUtils
32
32
  public :check_for_errors
33
+ public :add_report_definition_hash_order
33
34
  end
34
35
  end
35
36
 
@@ -119,4 +120,69 @@ class TestReportUtils < Test::Unit::TestCase
119
120
  @report_utils.check_for_errors(response)
120
121
  end
121
122
  end
123
+
124
+ # Tests generated hash order for root (complete set).
125
+ def test_add_report_definition_hash_order_root1
126
+ node = {
127
+ :include_zero_impressions => false,
128
+ :download_format => 'CSV',
129
+ :report_type => 'CRITERIA_PERFORMANCE_REPORT',
130
+ :selector => {},
131
+ :report_name => 'report_name',
132
+ :date_range_type => 'LAST_7_DAYS'
133
+ }
134
+ expected = [:selector, :report_name, :report_type, :date_range_type,
135
+ :download_format, :include_zero_impressions]
136
+ @report_utils.add_report_definition_hash_order(node)
137
+ assert_not_nil(node[:order!])
138
+ assert_equal(expected, node[:order!])
139
+ end
140
+
141
+ # Tests generated hash order for root (incomplete set).
142
+ def test_add_report_definition_hash_order_root2
143
+ node = {
144
+ :download_format => 'CSV',
145
+ :report_type => 'CRITERIA_PERFORMANCE_REPORT',
146
+ :selector => {},
147
+ :report_name => 'report_name',
148
+ :date_range_type => 'LAST_7_DAYS'
149
+ }
150
+ expected = [:selector, :report_name, :report_type, :date_range_type,
151
+ :download_format]
152
+ @report_utils.add_report_definition_hash_order(node)
153
+ assert_not_nil(node[:order!])
154
+ assert_equal(expected, node[:order!])
155
+ end
156
+
157
+ # Tests generated hash order for whole structure.
158
+ def test_add_report_definition_hash_order_deep
159
+ node = {
160
+ :report_name => 'report_name',
161
+ :report_type => 'CRITERIA_PERFORMANCE_REPORT',
162
+ :selector => {
163
+ :date_range => {:max => '20120405', :min => '20120405'},
164
+ :predicates => {:operator => 'IN', :field => 'S', :values => ['A']},
165
+ :fields => ['CampaignId']
166
+ },
167
+ :include_zero_impressions => false,
168
+ :download_format => 'CSV',
169
+ :date_range_type => 'LAST_7_DAYS'
170
+ }
171
+ expected1 = [:selector, :report_name, :report_type, :date_range_type,
172
+ :download_format, :include_zero_impressions]
173
+ expected2 = [:fields, :predicates, :date_range]
174
+ expected3 = [:min, :max]
175
+ expected4 = [:field, :operator, :values]
176
+
177
+ @report_utils.add_report_definition_hash_order(node)
178
+ assert_not_nil(node[:order!])
179
+ assert_not_nil(node[:selector][:order!])
180
+ assert_not_nil(node[:selector][:date_range][:order!])
181
+ assert_not_nil(node[:selector][:predicates][:order!])
182
+
183
+ assert_equal(expected1, node[:order!])
184
+ assert_equal(expected2, node[:selector][:order!])
185
+ assert_equal(expected3, node[:selector][:date_range][:order!])
186
+ assert_equal(expected4, node[:selector][:predicates][:order!])
187
+ end
122
188
  end
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-adwords-api
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
8
7
  - 5
9
- - 2
10
- version: 0.5.2
8
+ - 3
9
+ version: 0.5.3
11
10
  platform: ruby
12
11
  authors:
13
12
  - Danial Klimkin
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2012-03-20 00:00:00 +04:00
17
+ date: 2012-04-12 00:00:00 +04:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -26,12 +25,11 @@ dependencies:
26
25
  requirements:
27
26
  - - ~>
28
27
  - !ruby/object:Gem::Version
29
- hash: 53
30
28
  segments:
31
29
  - 0
32
30
  - 9
33
- - 7
34
- version: 0.9.7
31
+ - 9
32
+ version: 0.9.9
35
33
  type: :runtime
36
34
  version_requirements: *id001
37
35
  - !ruby/object:Gem::Dependency
@@ -42,7 +40,6 @@ dependencies:
42
40
  requirements:
43
41
  - - ~>
44
42
  - !ruby/object:Gem::Version
45
- hash: 1
46
43
  segments:
47
44
  - 0
48
45
  - 6
@@ -190,6 +187,7 @@ files:
190
187
  - test/bugs/test_issue_00000031.rb
191
188
  - test/suite_unittests.rb
192
189
  - test/adwords_api/test_report_utils.rb
190
+ - test/adwords_api/test_credential_handler.rb
193
191
  - test/adwords_api/test_api_config.rb
194
192
  - test/adwords_api/test_utils.rb
195
193
  - test/suite_exampletests.rb
@@ -211,7 +209,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
211
209
  requirements:
212
210
  - - ">="
213
211
  - !ruby/object:Gem::Version
214
- hash: 3
215
212
  segments:
216
213
  - 0
217
214
  version: "0"
@@ -220,7 +217,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
217
  requirements:
221
218
  - - ">="
222
219
  - !ruby/object:Gem::Version
223
- hash: 23
224
220
  segments:
225
221
  - 1
226
222
  - 3