adzerk 0.2 → 0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -60,6 +60,7 @@ describe "Flight API" do
60
60
  $flight_CampaignId = $campaign_id
61
61
  $flight_IsActive = true
62
62
  $flight_IsDeleted = false
63
+ $flight_GoalType = 1
63
64
 
64
65
  new_flight = {
65
66
  :no_end_date => false,
@@ -78,61 +79,66 @@ describe "Flight API" do
78
79
  :weight_override => $flight_WeightOverride,
79
80
  :campaign_id => $flight_CampaignId,
80
81
  :is_active => $flight_IsActive,
81
- :is_deleted => $flight_IsDeleted
82
+ :is_deleted => $flight_IsDeleted,
83
+ :goal_type => $flight_GoalType
82
84
  }
83
85
  flight = @flights.create(new_flight)
84
86
  $flight_id = flight[:id].to_s
85
- flight[:no_end_date].should eq(false)
86
- flight[:priority_id].should eq($priority_id.to_i)
87
- flight[:name].should eq($flight_Name)
87
+ expect(flight[:no_end_date]).to eq(false)
88
+ expect(flight[:priority_id]).to eq($priority_id.to_i)
89
+ expect(flight[:name]).to eq($flight_Name)
88
90
  # JSON.parse(response.body)["StartDate"].should == "/Date(1293840000000+0000)/"
89
91
  # JSON.parse(response.body)["EndDate"].should == "/Date(1325307600000-0500)/"
90
- flight[:price].should eq(15.0)
91
- flight[:option_type].should eq($flight_OptionType)
92
- flight[:impressions].should eq($flight_Impressions)
93
- flight[:is_unlimited].should eq($flight_IsUnlimited)
94
- flight[:is_full_speed].should eq($flight_IsFullSpeed)
95
- flight[:keywords].should eq($flight_Keywords)
96
- flight[:user_agent_keywords].should eq($flight_UserAgentKeywords)
97
- flight[:weight_override].should eq($flight_WeightOverride)
98
- flight[:campaign_id].should eq($flight_CampaignId)
99
- flight[:is_active].should eq($flight_IsActive)
100
- flight[:is_deleted].should eq($flight_IsDeleted)
92
+ expect(flight[:price]).to eq(15.0)
93
+ expect(flight[:option_type]).to eq($flight_OptionType)
94
+ expect(flight[:impressions]).to eq($flight_Impressions)
95
+ expect(flight[:is_unlimited]).to eq($flight_IsUnlimited)
96
+ expect(flight[:is_full_speed]).to eq($flight_IsFullSpeed)
97
+ expect(flight[:keywords]).to eq($flight_Keywords)
98
+ expect(flight[:user_agent_keywords]).to eq($flight_UserAgentKeywords)
99
+ expect(flight[:weight_override]).to eq($flight_WeightOverride)
100
+ expect(flight[:campaign_id]).to eq($flight_CampaignId)
101
+ expect(flight[:is_active]).to eq($flight_IsActive)
102
+ expect(flight[:is_deleted]).to eq($flight_IsDeleted)
103
+ expect(flight[:goal_type]).to eq($flight_GoalType)
101
104
  end
102
105
 
103
106
  it "should list a specific flight" do
104
107
  flight = @flights.get($flight_id)
105
- flight[:priority_id].should eq($priority_id.to_i)
106
- flight[:name].should eq($flight_Name)
107
- flight[:price].should eq(15.0)
108
- flight[:option_type].should eq($flight_OptionType)
109
- flight[:impressions].should eq($flight_Impressions)
110
- flight[:is_unlimited].should eq($flight_IsUnlimited)
111
- flight[:is_full_speed].should eq($flight_IsFullSpeed)
112
- flight[:keywords].should eq($flight_Keywords)
113
- flight[:user_agent_keywords].should eq($flight_UserAgentKeywords)
114
- flight[:weight_override].should eq($flight_WeightOverride)
115
- flight[:campaign_id].should eq($flight_CampaignId)
116
- flight[:is_active].should eq($flight_IsActive)
117
- flight[:is_deleted].should eq($flight_IsDeleted)
108
+ expect(flight[:priority_id]).to eq($priority_id.to_i)
109
+ expect(flight[:name]).to eq($flight_Name)
110
+ expect(flight[:price]).to eq(15.0)
111
+ expect(flight[:option_type]).to eq($flight_OptionType)
112
+ expect(flight[:impressions]).to eq($flight_Impressions)
113
+ expect(flight[:is_unlimited]).to eq($flight_IsUnlimited)
114
+ expect(flight[:is_full_speed]).to eq($flight_IsFullSpeed)
115
+ expect(flight[:keywords]).to eq($flight_Keywords)
116
+ expect(flight[:user_agent_keywords]).to eq($flight_UserAgentKeywords)
117
+ expect(flight[:weight_override]).to eq($flight_WeightOverride)
118
+ expect(flight[:campaign_id]).to eq($flight_CampaignId)
119
+ expect(flight[:is_active]).to eq($flight_IsActive)
120
+ expect(flight[:is_deleted]).to eq($flight_IsDeleted)
121
+ expect(flight[:goal_type]).to eq($flight_GoalType)
118
122
  end
119
123
 
120
124
  it "should update a flight" do
121
125
  flight = @flights.update(:id => $flight_id,
122
126
  :campaign_id => $flight_CampaignId,
123
127
  :name => "New Flight Name",
124
- :priority_id => $priority_id)
125
- flight[:name].should eq("New Flight Name")
128
+ :priority_id => $priority_id,
129
+ :start_date => $flight_StartDate,
130
+ :goal_type => $flight_GoalType)
131
+ expect(flight[:name]).to eq("New Flight Name")
126
132
  end
127
133
 
128
134
  it "should list all flights" do
129
135
  flights = @flights.list
130
- flights.length.should > 0
136
+ expect(flights.length).to be > 0
131
137
  end
132
138
 
133
139
  it "should delete a new flight" do
134
140
  response = @flights.delete($flight_id)
135
- response.body.should == '"Successfully deleted"'
141
+ expect(response.body).to eq('"Successfully deleted"')
136
142
  end
137
143
 
138
144
  it "should create a flight with geotargeting" do
@@ -160,52 +166,56 @@ describe "Flight API" do
160
166
  'CampaignId' => $flight_CampaignId,
161
167
  'IsActive' => $flight_IsActive,
162
168
  'IsDeleted' => $flight_IsDeleted,
163
- 'GeoTargeting' => geo
169
+ 'GeoTargeting' => geo,
170
+ 'GoalType' => $flight_GoalType
164
171
  }
165
172
  flight = @flights.create(new_flight)
166
173
  $flight_id = flight[:id].to_s
167
- flight[:no_end_date].should eq(false)
168
- flight[:priority_id].should eq($priority_id.to_i)
169
- flight[:name].should eq($flight_Name)
174
+ expect(flight[:no_end_date]).to eq(false)
175
+ expect(flight[:priority_id]).to eq($priority_id.to_i)
176
+ expect(flight[:name]).to eq($flight_Name)
170
177
  # JSON.parse(response.body)["StartDate"].should == "/Date(1293840000000+0000)/"
171
178
  # JSON.parse(response.body)["EndDate"].should == "/Date(1325307600000-0500)/"
172
- flight[:price].should eq(15.0)
173
- flight[:option_type].should eq($flight_OptionType)
174
- flight[:impressions].should eq($flight_Impressions)
175
- flight[:is_unlimited].should eq($flight_IsUnlimited)
176
- flight[:is_full_speed].should eq($flight_IsFullSpeed)
177
- flight[:keywords].should eq($flight_Keywords)
178
- flight[:user_agent_keywords].should eq($flight_UserAgentKeywords)
179
- flight[:weight_override].should eq($flight_WeightOverride)
180
- flight[:campaign_id].should eq($flight_CampaignId)
181
- flight[:is_active].should eq($flight_IsActive)
182
- flight[:is_deleted].should eq($flight_IsDeleted)
179
+ expect(flight[:price]).to eq(15.0)
180
+ expect(flight[:option_type]).to eq($flight_OptionType)
181
+ expect(flight[:impressions]).to eq($flight_Impressions)
182
+ expect(flight[:is_unlimited]).to eq($flight_IsUnlimited)
183
+ expect(flight[:is_full_speed]).to eq($flight_IsFullSpeed)
184
+ expect(flight[:keywords]).to eq($flight_Keywords)
185
+ expect(flight[:user_agent_keywords]).to eq($flight_UserAgentKeywords)
186
+ expect(flight[:weight_override]).to eq($flight_WeightOverride)
187
+ expect(flight[:campaign_id]).to eq($flight_CampaignId)
188
+ expect(flight[:is_active]).to eq($flight_IsActive)
189
+ expect(flight[:is_deleted]).to eq($flight_IsDeleted)
183
190
  geotargeting = flight[:geo_targeting].first
184
- geotargeting[:country_code].should eq("US")
185
- geotargeting[:region].should eq("NC")
186
- geotargeting[:metro_code].should eq(560)
191
+ expect(geotargeting[:country_code]).to eq("US")
192
+ expect(geotargeting[:region]).to eq("NC")
193
+ expect(geotargeting[:metro_code]).to eq(560)
194
+ expect(flight[:goal_type]).to eq($flight_GoalType)
187
195
  end
188
196
 
189
197
  it "should not create a flight for a campaign in a different network" do
190
- flight = @flights.create(
191
- :no_end_date => false,
192
- :priority_id => $priority_id,
193
- :name => $flight_Name,
194
- :start_date => $flight_StartDate,
195
- :end_date => $flight_EndDate,
196
- :no_end_date => $flight_NoEndDate,
197
- :price => $flight_Price,
198
- :option_type => $flight_OptionType,
199
- :impressions => $flight_Impressions,
200
- :is_unlimited => $flight_IsUnlimited,
201
- :is_full_speed => $flight_IsFullSpeed,
202
- :keywords => $flight_Keywords,
203
- :user_agent_keywords => $flight_UserAgentKeywords,
204
- :weight_override => $flight_WeightOverride,
205
- :campaign_id => 123,
206
- :is_active => $flight_IsActive,
207
- :is_deleted => $flight_IsDeleted
208
- )
209
- flight[:message].should == "This campaign is not part of your network"
198
+ expect{
199
+ flight = @flights.create(
200
+ :no_end_date => false,
201
+ :priority_id => $priority_id,
202
+ :name => $flight_Name,
203
+ :start_date => $flight_StartDate,
204
+ :end_date => $flight_EndDate,
205
+ :no_end_date => $flight_NoEndDate,
206
+ :price => $flight_Price,
207
+ :option_type => $flight_OptionType,
208
+ :impressions => $flight_Impressions,
209
+ :is_unlimited => $flight_IsUnlimited,
210
+ :is_full_speed => $flight_IsFullSpeed,
211
+ :keywords => $flight_Keywords,
212
+ :user_agent_keywords => $flight_UserAgentKeywords,
213
+ :weight_override => $flight_WeightOverride,
214
+ :campaign_id => 123,
215
+ :is_active => $flight_IsActive,
216
+ :is_deleted => $flight_IsDeleted,
217
+ :goal_type => $flight_GoalType
218
+ )
219
+ }.to raise_error "This campaign is not part of your network"
210
220
  end
211
221
  end
@@ -0,0 +1,122 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "GeoTargeting API" do
4
+
5
+
6
+ before(:all) do
7
+ new_advertiser = {
8
+ 'Title' => "Test"
9
+ }
10
+ client = Adzerk::Client.new(API_KEY)
11
+ @flights= client.flights
12
+ @advertisers = client.advertisers
13
+ @channels = client.channels
14
+ @campaigns = client.campaigns
15
+ @priorities = client.priorities
16
+ @geotargetings = client.geotargetings
17
+ advertiser = @advertisers.create(:title => "test")
18
+ $advertiserId = advertiser[:id].to_s
19
+
20
+ channel = @channels.create(:title => 'Test Channel ' + rand(1000000).to_s,
21
+ :commission => '0.0',
22
+ :engine => 'CPM',
23
+ :keywords => 'test',
24
+ 'CPM' => '10.00',
25
+ :ad_types => [1,2,3,4])
26
+ $channel_id = channel[:id].to_s
27
+
28
+ priority = @priorities.create(:name => "High Priority Test",
29
+ :channel_id => $channel_id,
30
+ :weight => 1,
31
+ :is_deleted => false)
32
+ $priority_id = priority[:id].to_s
33
+
34
+ campaign = @campaigns.
35
+ create(:name => 'Test campaign ' + rand(1000000).to_s,
36
+ :start_date => "1/1/2011",
37
+ :end_date => "12/31/2011",
38
+ :is_active => false,
39
+ :price => '10.00',
40
+ :advertiser_id => $advertiserId,
41
+ :flights => [],
42
+ :is_deleted => false)
43
+ $campaign_id = campaign[:id]
44
+
45
+ new_flight = {
46
+ :no_end_date => false,
47
+ :priority_id => $priority_id,
48
+ :name => 'Test flight ' + rand(1000000).to_s,
49
+ :start_date => "1/1/2011",
50
+ :end_date => "12/31/2011",
51
+ :no_end_date => false,
52
+ :price => '15.00',
53
+ :option_type => 1,
54
+ :impressions => 10000,
55
+ :is_unlimited => false,
56
+ :is_full_speed => false,
57
+ :keywords => "test, test2",
58
+ :user_agent_keywords => nil,
59
+ :weight_override => nil,
60
+ :campaign_id => $campaign_id,
61
+ :is_active => true,
62
+ :is_deleted => false,
63
+ :goal_type => 1
64
+ }
65
+ flight = @flights.create(new_flight)
66
+ $flight_id = flight[:id].to_s
67
+
68
+ end
69
+
70
+ it "should create a geotargeting" do
71
+ $geo_CountryCode = "US";
72
+ $geo_Region = "NC";
73
+ $geo_MetroCode = 560;
74
+ $geo_IsExclude = true;
75
+
76
+ new_geo = {
77
+ :country_code => $geo_CountryCode,
78
+ :region => $geo_Region,
79
+ :metro_code => $geo_MetroCode,
80
+ :is_exclude => true,
81
+ }
82
+
83
+ geo = @geotargetings.create($flight_id, new_geo)
84
+ expect(geo[:country_code]).to eq($geo_CountryCode)
85
+ expect(geo[:region]).to eq($geo_Region)
86
+ expect(geo[:metro_code]).to eq($geo_MetroCode)
87
+ expect(geo[:is_exclude]).to eq(true)
88
+ $geo_id = geo[:location_id]
89
+
90
+ end
91
+
92
+ it "should retrieve a geotargeting" do
93
+ geo = @geotargetings.get($flight_id,$geo_id)
94
+ end
95
+
96
+ it "should update a geotargeting" do
97
+ data = {
98
+ :country_code => $geo_CountryCode,
99
+ :region => $geo_Region,
100
+ :metro_code => 517,
101
+ :is_exclude => true,
102
+ }
103
+ geo = @geotargetings.update($flight_id,$geo_id,data)
104
+ expect(geo[:metro_code]).to eq(517)
105
+ end
106
+
107
+ it "should delete a geotargeting" do
108
+ geo = @geotargetings.delete($flight_id,$geo_id)
109
+ end
110
+
111
+ it "should error when deleting a geotargeting that does not exist" do
112
+ expect{ geo = @geotargetings.delete($flight_id,1) }.to raise_error
113
+ end
114
+
115
+ it "should check if a flight is not a part of your network" do
116
+ non_network_flight = 123;
117
+ expect{ @geotargetings.delete(non_network_flight,1) }.to raise_error("Flight is not a part of your network")
118
+ expect{ @geotargetings.get(non_network_flight,1) }.to raise_error("Flight is not a part of your network")
119
+ expect{ @geotargetings.update(non_network_flight,1,{}) }.to raise_error("Flight is not a part of your network")
120
+ end
121
+
122
+ end
@@ -15,18 +15,18 @@ describe "Invitation API" do
15
15
  response = @client.invitations.invite_publisher(:email => 'test@adzerk.com',
16
16
  :site_id => @site_id,
17
17
  :advertiser_id => @advertiser_id)
18
- response.body.should_not == ""
19
- response.body.length.should > 10
20
- response.body.length.should < 100
18
+ expect(response.body).not_to eq("")
19
+ expect(response.body.length).to be > 10
20
+ expect(response.body.length).to be < 100
21
21
  end
22
22
 
23
23
  it "should create a new advertiser invitation" do
24
24
  response = @client.invitations.invite_advertiser(:email => 'test@adzerk.com',
25
25
  :site_id => @site_id,
26
26
  :advertiser_id => @advertiser_id)
27
- response.body.should_not == ""
28
- response.body.length.should > 10
29
- response.body.length.should < 100
27
+ expect(response.body).not_to eq("")
28
+ expect(response.body.length).to be > 10
29
+ expect(response.body.length).to be < 100
30
30
  end
31
31
 
32
32
  end
@@ -2,35 +2,37 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
2
 
3
3
  describe "Login_API" do
4
4
 
5
+ puts ENV['ADZERK_API_KEY']
6
+
5
7
  before do
6
8
  @logins = Adzerk::Client.new(API_KEY).logins
7
9
  end
8
10
 
9
11
  it "should create a new login" do
10
- email = "test@email_#{rand(1000)}.com"
12
+ email = "test@email_#{rand(1000000)}.com"
11
13
  login = @logins.create(:email => email,
12
14
  :password => '1234567',
13
15
  :name => "John Doe")
14
16
  $login_id = login[:id]
15
- login[:email].should eq(email)
16
- login[:password].should eq("1234567")
17
- login[:name].should eq("John Doe")
17
+ expect(login[:email]).to eq(email)
18
+ expect(login[:password]).to eq("1234567")
19
+ expect(login[:name]).to eq("John Doe")
18
20
  end
19
21
 
20
22
  it "should list all logins" do
21
23
  logins = @logins.list
22
- logins[:items].last[:id].should eq($login_id)
24
+ expect(logins[:items].last[:id]).to eq($login_id)
23
25
  end
24
26
 
25
27
  it "should list a specific login" do
26
28
  login = @logins.get($login_id)
27
- login[:name].should eq("John Doe")
29
+ expect(login[:name]).to eq("John Doe")
28
30
  end
29
31
 
30
32
  it "should update a login" do
31
33
  login = @logins.update(:id => $login_id,
32
34
  :name => "New Name")
33
- login[:name].should eq("New Name")
35
+ expect(login[:name]).to eq("New Name")
34
36
  end
35
37
 
36
38
  end
@@ -27,18 +27,18 @@ describe "Priority API" do
27
27
  :weight => $priority_weight,
28
28
  :is_deleted => $priority_is_deleted)
29
29
  $priority_id = priority[:id].to_s
30
- $priority_name.should == priority[:name]
31
- $priority_channel_id.to_f.should == priority[:channel_id]
32
- $priority_weight.should == priority[:weight]
33
- $priority_is_deleted.should == priority[:is_deleted]
30
+ expect($priority_name).to eq(priority[:name])
31
+ expect($priority_channel_id.to_f).to eq(priority[:channel_id])
32
+ expect($priority_weight).to eq(priority[:weight])
33
+ expect($priority_is_deleted).to eq(priority[:is_deleted])
34
34
  end
35
35
 
36
36
  it "should list a specific priority" do
37
37
  priority = @priorities.get($priority_id)
38
- $priority_name.should == priority[:name]
39
- $priority_channel_id.to_f.should == priority[:channel_id]
40
- $priority_weight.should == priority[:weight]
41
- $priority_is_deleted.should == priority[:is_deleted]
38
+ expect($priority_name).to eq(priority[:name])
39
+ expect($priority_channel_id.to_f).to eq(priority[:channel_id])
40
+ expect($priority_weight).to eq(priority[:weight])
41
+ expect($priority_is_deleted).to eq(priority[:is_deleted])
42
42
  priority = @priorities.get($priority_id)
43
43
  end
44
44
 
@@ -50,26 +50,26 @@ describe "Priority API" do
50
50
  :weight => 2,
51
51
  :is_deleted => $priority_is_deleted)
52
52
 
53
- $priority_name.should == priority[:name]
54
- $priority_channel_id.to_f.should == priority[:channel_id]
55
- priority[:weight].should == 2
56
- $priority_is_deleted.should == priority[:is_deleted]
53
+ expect($priority_name).to eq(priority[:name])
54
+ expect($priority_channel_id.to_f).to eq(priority[:channel_id])
55
+ expect(priority[:weight]).to eq(2)
56
+ expect($priority_is_deleted).to eq(priority[:is_deleted])
57
57
  end
58
58
 
59
59
  it "should list all priorities" do
60
60
  result = @priorities.list
61
- result.length.should > 0
61
+ expect(result.length).to be > 0
62
62
  priority = result[:items].last
63
63
  priority[:id].to_s == $priority_id
64
- $priority_name.should == priority[:name]
65
- $priority_channel_id.to_f.should == priority[:channel_id]
66
- priority[:weight].should == 2
67
- $priority_is_deleted.should == priority[:is_deleted]
64
+ expect($priority_name).to eq(priority[:name])
65
+ expect($priority_channel_id.to_f).to eq(priority[:channel_id])
66
+ expect(priority[:weight]).to eq(2)
67
+ expect($priority_is_deleted).to eq(priority[:is_deleted])
68
68
  end
69
69
 
70
70
  it "should delete a new priority" do
71
71
  response = @priorities.delete($priority_id)
72
- response.body.should == '"Successfully deleted"'
72
+ expect(response.body).to eq('"Successfully deleted"')
73
73
  end
74
74
  end
75
75