epom_rails 0.2 → 0.3
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/epom_rails/acts_as.rb +24 -16
- data/lib/epom_rails/version.rb +1 -1
- data/lib/epom_rails.rb +2 -0
- data/test/dummy/app/assets/javascripts/banners.js +2 -0
- data/test/dummy/app/assets/stylesheets/banners.css +4 -0
- data/test/dummy/app/controllers/banners_controller.rb +58 -0
- data/test/dummy/app/helpers/banners_helper.rb +2 -0
- data/test/dummy/app/models/banner.rb +3 -0
- data/test/dummy/app/views/banners/_form.html.erb +61 -0
- data/test/dummy/app/views/banners/edit.html.erb +6 -0
- data/test/dummy/app/views/banners/index.html.erb +47 -0
- data/test/dummy/app/views/banners/new.html.erb +5 -0
- data/test/dummy/app/views/banners/show.html.erb +59 -0
- data/test/dummy/config/routes.rb +1 -0
- data/test/dummy/db/migrate/20150608195747_add_epom_id_to_campaigns.rb +5 -0
- data/test/dummy/db/migrate/20150609175407_create_banners.rb +19 -0
- data/test/dummy/db/schema.rb +17 -1
- data/test/dummy/test/controllers/banners_controller_test.rb +49 -0
- data/test/dummy/test/fixtures/banners.yml +13 -0
- data/test/dummy/test/models/banner_test.rb +7 -0
- data/test/epom_rails/acts_as_banner_test.rb +42 -0
- data/test/epom_rails/acts_as_campaign_test.rb +40 -0
- data/test/test_helper.rb +1 -3
- metadata +35 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2d88b3789f18a9ff4b47d9318c70280bed18fd8b
|
4
|
+
data.tar.gz: 9264c734b76b1fc35c6e1a7e23cf951a845c47eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 983f66102b4a91e1c8a835bf1ba8d358dbcb4620dc28e4296e5aefeb71a0e39fd199596dc1cd177655dc74386b80f340f7e791e1e987e44db40dd70cd3e2891d
|
7
|
+
data.tar.gz: d4b82d0b69e798fb4f0b5ab45ac2d7246f8e385d5d648b1893f5283cee6107484ee8864acf6af9e1995c36b9cec2281d56df073509bba17aaba1b3f896d30afb
|
data/lib/epom_rails/acts_as.rb
CHANGED
@@ -8,6 +8,10 @@ class ActiveRecord::Base
|
|
8
8
|
acts_as(Epom::Campaign, fields)
|
9
9
|
end
|
10
10
|
|
11
|
+
def self.acts_as_banner(fields = {})
|
12
|
+
acts_as(Epom::Banner, fields)
|
13
|
+
end
|
14
|
+
|
11
15
|
private
|
12
16
|
|
13
17
|
def self.acts_as(klass, fields = {})
|
@@ -26,21 +30,25 @@ class ActiveRecord::Base
|
|
26
30
|
before_save do
|
27
31
|
klass_name = klass.name.include?('::') ? klass.name.split('::').last : klass.name
|
28
32
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
33
|
+
method = if self.send fields.key('id') then "update_#{klass_name.downcase}" else "create_#{klass_name.downcase}" end
|
34
|
+
|
35
|
+
url_params = {}
|
36
|
+
if klass.extended_methods[method.to_sym][:url_parameters]
|
37
|
+
klass.extended_methods[method.to_sym][:url_parameters].each do |parameter|
|
38
|
+
url_params[parameter] = self.send(fields.key(parameter.to_s)) if fields.key(parameter.to_s)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
body_params = {}
|
43
|
+
if klass.extended_methods[method.to_sym][:body_parameters]
|
44
|
+
klass.extended_methods[method.to_sym][:body_parameters].each do |parameter|
|
45
|
+
body_params[parameter] = self.send(fields.key(parameter.to_s)) if fields.key(parameter.to_s)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
epom_response = klass.send method, url_params, body_params
|
50
|
+
|
51
|
+
unless self.send fields.key('id')
|
44
52
|
# save id value returned from Epom in an Advertiser column
|
45
53
|
self.send "#{fields.key('id')}=", epom_response['id']
|
46
54
|
end
|
@@ -55,7 +63,7 @@ class ActiveRecord::Base
|
|
55
63
|
if self.send fields.key('id')
|
56
64
|
klass_name = klass.name.include?('::') ? klass.name.split('::').last : klass.name
|
57
65
|
epom_response = klass.send "delete_#{klass_name.downcase}", {"#{klass_name.downcase}Id" => self.send(fields.key('id'))}, {}
|
58
|
-
epom_response['success']
|
66
|
+
epom_response['success'] if epom_response
|
59
67
|
end
|
60
68
|
end
|
61
69
|
end
|
data/lib/epom_rails/version.rb
CHANGED
data/lib/epom_rails.rb
CHANGED
@@ -4,6 +4,8 @@ require 'epom_rails/acts_as'
|
|
4
4
|
module EpomRails
|
5
5
|
attr_accessor :epom_klass, :epom_fields
|
6
6
|
|
7
|
+
Epom::EpomElement.login(ENV['username'], ENV['password'])
|
8
|
+
|
7
9
|
def method_missing(method_name, *args)
|
8
10
|
if epom_klass.respond_to?(method_name)
|
9
11
|
epom_klass.send(method_name, args[0], args[1])
|
@@ -0,0 +1,58 @@
|
|
1
|
+
class BannersController < ApplicationController
|
2
|
+
before_action :set_banner, only: [:show, :edit, :update, :destroy]
|
3
|
+
|
4
|
+
# GET /banners
|
5
|
+
def index
|
6
|
+
@banners = Banner.all
|
7
|
+
end
|
8
|
+
|
9
|
+
# GET /banners/1
|
10
|
+
def show
|
11
|
+
end
|
12
|
+
|
13
|
+
# GET /banners/new
|
14
|
+
def new
|
15
|
+
@banner = Banner.new
|
16
|
+
end
|
17
|
+
|
18
|
+
# GET /banners/1/edit
|
19
|
+
def edit
|
20
|
+
end
|
21
|
+
|
22
|
+
# POST /banners
|
23
|
+
def create
|
24
|
+
@banner = Banner.new(banner_params)
|
25
|
+
|
26
|
+
if @banner.save
|
27
|
+
redirect_to @banner, notice: 'Banner was successfully created.'
|
28
|
+
else
|
29
|
+
render :new
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
# PATCH/PUT /banners/1
|
34
|
+
def update
|
35
|
+
if @banner.update(banner_params)
|
36
|
+
redirect_to @banner, notice: 'Banner was successfully updated.'
|
37
|
+
else
|
38
|
+
render :edit
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
# DELETE /banners/1
|
43
|
+
def destroy
|
44
|
+
@banner.destroy
|
45
|
+
redirect_to banners_url, notice: 'Banner was successfully destroyed.'
|
46
|
+
end
|
47
|
+
|
48
|
+
private
|
49
|
+
# Use callbacks to share common setup or constraints between actions.
|
50
|
+
def set_banner
|
51
|
+
@banner = Banner.find(params[:id])
|
52
|
+
end
|
53
|
+
|
54
|
+
# Only allow a trusted parameter "white list" through.
|
55
|
+
def banner_params
|
56
|
+
params.require(:banner).permit(:epom_id, :placement_type, :campaign_id, :weight, :image_banner_link, :url, :name, :banner_type, :ad_unit_id, :ad_unit_width, :ad_unit_height)
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,3 @@
|
|
1
|
+
class Banner < ActiveRecord::Base
|
2
|
+
acts_as_banner epom_id: 'id', placement_type: 'placementType', campaign_id: 'campaignId', weight: 'weight', image_banner_link: 'imageBannerLink', url: 'url', name: 'name', banner_type: 'bannerType', ad_unit_id: 'adUnitId', ad_unit_width: 'adUnitWidth', ad_unit_height: 'adUnitHeight'
|
3
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
<%= form_for(@banner) do |f| %>
|
2
|
+
<% if @banner.errors.any? %>
|
3
|
+
<div id="error_explanation">
|
4
|
+
<h2><%= pluralize(@banner.errors.count, "error") %> prohibited this banner from being saved:</h2>
|
5
|
+
|
6
|
+
<ul>
|
7
|
+
<% @banner.errors.full_messages.each do |message| %>
|
8
|
+
<li><%= message %></li>
|
9
|
+
<% end %>
|
10
|
+
</ul>
|
11
|
+
</div>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<div class="field">
|
15
|
+
<%= f.label :epom_id %><br>
|
16
|
+
<%= f.number_field :epom_id %>
|
17
|
+
</div>
|
18
|
+
<div class="field">
|
19
|
+
<%= f.label :placement_type %><br>
|
20
|
+
<%= f.text_field :placement_type %>
|
21
|
+
</div>
|
22
|
+
<div class="field">
|
23
|
+
<%= f.label :campaign_id %><br>
|
24
|
+
<%= f.number_field :campaign_id %>
|
25
|
+
</div>
|
26
|
+
<div class="field">
|
27
|
+
<%= f.label :weight %><br>
|
28
|
+
<%= f.number_field :weight %>
|
29
|
+
</div>
|
30
|
+
<div class="field">
|
31
|
+
<%= f.label :image_banner_link %><br>
|
32
|
+
<%= f.text_field :image_banner_link %>
|
33
|
+
</div>
|
34
|
+
<div class="field">
|
35
|
+
<%= f.label :url %><br>
|
36
|
+
<%= f.text_field :url %>
|
37
|
+
</div>
|
38
|
+
<div class="field">
|
39
|
+
<%= f.label :name %><br>
|
40
|
+
<%= f.text_field :name %>
|
41
|
+
</div>
|
42
|
+
<div class="field">
|
43
|
+
<%= f.label :banner_type %><br>
|
44
|
+
<%= f.text_field :banner_type %>
|
45
|
+
</div>
|
46
|
+
<div class="field">
|
47
|
+
<%= f.label :ad_unit_id %><br>
|
48
|
+
<%= f.number_field :ad_unit_id %>
|
49
|
+
</div>
|
50
|
+
<div class="field">
|
51
|
+
<%= f.label :ad_unit_width %><br>
|
52
|
+
<%= f.number_field :ad_unit_width %>
|
53
|
+
</div>
|
54
|
+
<div class="field">
|
55
|
+
<%= f.label :ad_unit_height %><br>
|
56
|
+
<%= f.number_field :ad_unit_height %>
|
57
|
+
</div>
|
58
|
+
<div class="actions">
|
59
|
+
<%= f.submit %>
|
60
|
+
</div>
|
61
|
+
<% end %>
|
@@ -0,0 +1,47 @@
|
|
1
|
+
<p id="notice"><%= notice %></p>
|
2
|
+
|
3
|
+
<h1>Listing Banners</h1>
|
4
|
+
|
5
|
+
<table>
|
6
|
+
<thead>
|
7
|
+
<tr>
|
8
|
+
<th>Epom</th>
|
9
|
+
<th>Placement type</th>
|
10
|
+
<th>Campaign</th>
|
11
|
+
<th>Weight</th>
|
12
|
+
<th>Image banner link</th>
|
13
|
+
<th>Url</th>
|
14
|
+
<th>Name</th>
|
15
|
+
<th>Banner type</th>
|
16
|
+
<th>Ad unit</th>
|
17
|
+
<th>Ad unit width</th>
|
18
|
+
<th>Ad unit height</th>
|
19
|
+
<th colspan="3"></th>
|
20
|
+
</tr>
|
21
|
+
</thead>
|
22
|
+
|
23
|
+
<tbody>
|
24
|
+
<% @banners.each do |banner| %>
|
25
|
+
<tr>
|
26
|
+
<td><%= banner.epom_id %></td>
|
27
|
+
<td><%= banner.placement_type %></td>
|
28
|
+
<td><%= banner.campaign_id %></td>
|
29
|
+
<td><%= banner.weight %></td>
|
30
|
+
<td><%= banner.image_banner_link %></td>
|
31
|
+
<td><%= banner.url %></td>
|
32
|
+
<td><%= banner.name %></td>
|
33
|
+
<td><%= banner.banner_type %></td>
|
34
|
+
<td><%= banner.ad_unit_id %></td>
|
35
|
+
<td><%= banner.ad_unit_width %></td>
|
36
|
+
<td><%= banner.ad_unit_height %></td>
|
37
|
+
<td><%= link_to 'Show', banner %></td>
|
38
|
+
<td><%= link_to 'Edit', edit_banner_path(banner) %></td>
|
39
|
+
<td><%= link_to 'Destroy', banner, method: :delete, data: { confirm: 'Are you sure?' } %></td>
|
40
|
+
</tr>
|
41
|
+
<% end %>
|
42
|
+
</tbody>
|
43
|
+
</table>
|
44
|
+
|
45
|
+
<br>
|
46
|
+
|
47
|
+
<%= link_to 'New Banner', new_banner_path %>
|
@@ -0,0 +1,59 @@
|
|
1
|
+
<p id="notice"><%= notice %></p>
|
2
|
+
|
3
|
+
<p>
|
4
|
+
<strong>Epom:</strong>
|
5
|
+
<%= @banner.epom_id %>
|
6
|
+
</p>
|
7
|
+
|
8
|
+
<p>
|
9
|
+
<strong>Placement type:</strong>
|
10
|
+
<%= @banner.placement_type %>
|
11
|
+
</p>
|
12
|
+
|
13
|
+
<p>
|
14
|
+
<strong>Campaign:</strong>
|
15
|
+
<%= @banner.campaign_id %>
|
16
|
+
</p>
|
17
|
+
|
18
|
+
<p>
|
19
|
+
<strong>Weight:</strong>
|
20
|
+
<%= @banner.weight %>
|
21
|
+
</p>
|
22
|
+
|
23
|
+
<p>
|
24
|
+
<strong>Image banner link:</strong>
|
25
|
+
<%= @banner.image_banner_link %>
|
26
|
+
</p>
|
27
|
+
|
28
|
+
<p>
|
29
|
+
<strong>Url:</strong>
|
30
|
+
<%= @banner.url %>
|
31
|
+
</p>
|
32
|
+
|
33
|
+
<p>
|
34
|
+
<strong>Name:</strong>
|
35
|
+
<%= @banner.name %>
|
36
|
+
</p>
|
37
|
+
|
38
|
+
<p>
|
39
|
+
<strong>Banner type:</strong>
|
40
|
+
<%= @banner.banner_type %>
|
41
|
+
</p>
|
42
|
+
|
43
|
+
<p>
|
44
|
+
<strong>Ad unit:</strong>
|
45
|
+
<%= @banner.ad_unit_id %>
|
46
|
+
</p>
|
47
|
+
|
48
|
+
<p>
|
49
|
+
<strong>Ad unit width:</strong>
|
50
|
+
<%= @banner.ad_unit_width %>
|
51
|
+
</p>
|
52
|
+
|
53
|
+
<p>
|
54
|
+
<strong>Ad unit height:</strong>
|
55
|
+
<%= @banner.ad_unit_height %>
|
56
|
+
</p>
|
57
|
+
|
58
|
+
<%= link_to 'Edit', edit_banner_path(@banner) %> |
|
59
|
+
<%= link_to 'Back', banners_path %>
|
data/test/dummy/config/routes.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
class CreateBanners < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table :banners do |t|
|
4
|
+
t.integer :epom_id
|
5
|
+
t.string :placement_type
|
6
|
+
t.integer :campaign_id
|
7
|
+
t.integer :weight
|
8
|
+
t.string :image_banner_link
|
9
|
+
t.string :url
|
10
|
+
t.string :name
|
11
|
+
t.string :banner_type
|
12
|
+
t.integer :ad_unit_id
|
13
|
+
t.integer :ad_unit_width
|
14
|
+
t.integer :ad_unit_height
|
15
|
+
|
16
|
+
t.timestamps null: false
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/test/dummy/db/schema.rb
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
#
|
12
12
|
# It's strongly recommended that you check this file into your version control system.
|
13
13
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
14
|
+
ActiveRecord::Schema.define(version: 20150609175407) do
|
15
15
|
|
16
16
|
create_table "advertisers", force: :cascade do |t|
|
17
17
|
t.string "name"
|
@@ -23,6 +23,22 @@ ActiveRecord::Schema.define(version: 20150608195747) do
|
|
23
23
|
t.integer "epom_id"
|
24
24
|
end
|
25
25
|
|
26
|
+
create_table "banners", force: :cascade do |t|
|
27
|
+
t.integer "epom_id"
|
28
|
+
t.string "placement_type"
|
29
|
+
t.integer "campaign_id"
|
30
|
+
t.integer "weight"
|
31
|
+
t.string "image_banner_link"
|
32
|
+
t.string "url"
|
33
|
+
t.string "name"
|
34
|
+
t.string "banner_type"
|
35
|
+
t.integer "ad_unit_id"
|
36
|
+
t.integer "ad_unit_width"
|
37
|
+
t.integer "ad_unit_height"
|
38
|
+
t.datetime "created_at", null: false
|
39
|
+
t.datetime "updated_at", null: false
|
40
|
+
end
|
41
|
+
|
26
42
|
create_table "campaigns", force: :cascade do |t|
|
27
43
|
t.string "name"
|
28
44
|
t.integer "advertiser_id"
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class BannersControllerTest < ActionController::TestCase
|
4
|
+
setup do
|
5
|
+
@banner = banners(:one)
|
6
|
+
end
|
7
|
+
|
8
|
+
test "should get index" do
|
9
|
+
get :index
|
10
|
+
assert_response :success
|
11
|
+
assert_not_nil assigns(:banners)
|
12
|
+
end
|
13
|
+
|
14
|
+
test "should get new" do
|
15
|
+
get :new
|
16
|
+
assert_response :success
|
17
|
+
end
|
18
|
+
|
19
|
+
test "should create banner" do
|
20
|
+
assert_difference('Banner.count') do
|
21
|
+
post :create, banner: { ad_unit_height: @banner.ad_unit_height, ad_unit_id: @banner.ad_unit_id, ad_unit_width: @banner.ad_unit_width, banner_type: @banner.banner_type, campaign_id: @banner.campaign_id, epom_id: @banner.epom_id, image_banner_link: @banner.image_banner_link, name: @banner.name, placement_type: @banner.placement_type, url: @banner.url, weight: @banner.weight }
|
22
|
+
end
|
23
|
+
|
24
|
+
assert_redirected_to banner_path(assigns(:banner))
|
25
|
+
end
|
26
|
+
|
27
|
+
test "should show banner" do
|
28
|
+
get :show, id: @banner
|
29
|
+
assert_response :success
|
30
|
+
end
|
31
|
+
|
32
|
+
test "should get edit" do
|
33
|
+
get :edit, id: @banner
|
34
|
+
assert_response :success
|
35
|
+
end
|
36
|
+
|
37
|
+
test "should update banner" do
|
38
|
+
patch :update, id: @banner, banner: { ad_unit_height: @banner.ad_unit_height, ad_unit_id: @banner.ad_unit_id, ad_unit_width: @banner.ad_unit_width, banner_type: @banner.banner_type, campaign_id: @banner.campaign_id, epom_id: @banner.epom_id, image_banner_link: @banner.image_banner_link, name: @banner.name, placement_type: @banner.placement_type, url: @banner.url, weight: @banner.weight }
|
39
|
+
assert_redirected_to banner_path(assigns(:banner))
|
40
|
+
end
|
41
|
+
|
42
|
+
test "should destroy banner" do
|
43
|
+
assert_difference('Banner.count', -1) do
|
44
|
+
delete :destroy, id: @banner
|
45
|
+
end
|
46
|
+
|
47
|
+
assert_redirected_to banners_path
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
|
2
|
+
|
3
|
+
one:
|
4
|
+
placement_type: SITE_PLACEMENT
|
5
|
+
campaign_id: 1247
|
6
|
+
weight: 1
|
7
|
+
image_banner_link: http://www.kewelta.com/images/imago_kewelta.png
|
8
|
+
url: http://www.kewelta.com
|
9
|
+
name: kewelta
|
10
|
+
banner_type: EXTERNAL_FILE
|
11
|
+
ad_unit_id: 10
|
12
|
+
ad_unit_width: 164
|
13
|
+
ad_unit_height: 182
|
@@ -0,0 +1,42 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class ActsAsBannerTest < ActiveSupport::TestCase
|
4
|
+
def epom_field(field)
|
5
|
+
Banner.epom_fields.key(field)
|
6
|
+
end
|
7
|
+
|
8
|
+
test 'fancy_method' do
|
9
|
+
assert_raises NoMethodError do Banner.fancy_method end
|
10
|
+
end
|
11
|
+
|
12
|
+
test 'save an banner' do
|
13
|
+
banner = banners(:one)
|
14
|
+
|
15
|
+
assert banner.save
|
16
|
+
assert_instance_of Fixnum, banner.send(epom_field('id'))
|
17
|
+
end
|
18
|
+
|
19
|
+
test 'delete an banner' do
|
20
|
+
banner = banners(:one)
|
21
|
+
|
22
|
+
assert banner.save
|
23
|
+
assert_instance_of Fixnum, banner.send(epom_field('id'))
|
24
|
+
|
25
|
+
epom_id = banner.send(epom_field('id'))
|
26
|
+
assert banner.destroy
|
27
|
+
end
|
28
|
+
|
29
|
+
test 'epom methods' do
|
30
|
+
banner = banners(:one)
|
31
|
+
|
32
|
+
assert banner.save
|
33
|
+
assert_instance_of Fixnum, banner.send(epom_field('id'))
|
34
|
+
|
35
|
+
response = Banner.get_banner({:bannerId => banner.send(epom_field('id'))}, {})
|
36
|
+
assert_equal banner.campaign_id, response['campaignId']
|
37
|
+
assert_equal banner.weight, response['weight']
|
38
|
+
assert_equal banner.url, response['url']
|
39
|
+
assert_equal banner.name, response['name']
|
40
|
+
assert_equal banner.image_banner_link, response['imageBannerLink']
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class ActsAsCampaignTest < ActiveSupport::TestCase
|
4
|
+
def epom_field(field)
|
5
|
+
Campaign.epom_fields.key(field)
|
6
|
+
end
|
7
|
+
|
8
|
+
test 'fancy_method' do
|
9
|
+
assert_raises NoMethodError do Campaign.fancy_method end
|
10
|
+
end
|
11
|
+
|
12
|
+
test 'save an campaign' do
|
13
|
+
campaign = campaigns(:one)
|
14
|
+
|
15
|
+
assert campaign.save
|
16
|
+
assert_instance_of Fixnum, campaign.send(epom_field('id'))
|
17
|
+
end
|
18
|
+
|
19
|
+
test 'delete an campaign' do
|
20
|
+
campaign = campaigns(:one)
|
21
|
+
|
22
|
+
assert campaign.save
|
23
|
+
assert_instance_of Fixnum, campaign.send(epom_field('id'))
|
24
|
+
|
25
|
+
epom_id = campaign.send(epom_field('id'))
|
26
|
+
assert campaign.destroy
|
27
|
+
end
|
28
|
+
|
29
|
+
test 'epom methods' do
|
30
|
+
campaign = campaigns(:one)
|
31
|
+
|
32
|
+
assert campaign.save
|
33
|
+
assert_instance_of Fixnum, campaign.send(epom_field('id'))
|
34
|
+
|
35
|
+
response = Campaign.get_campaign({:campaignId => campaign.send(epom_field('id'))}, {})
|
36
|
+
assert_equal campaign.send(epom_field('id')), response['id']
|
37
|
+
assert_equal campaign.send(epom_field('name')), response['name']
|
38
|
+
|
39
|
+
end
|
40
|
+
end
|
data/test/test_helper.rb
CHANGED
@@ -22,6 +22,4 @@ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
|
22
22
|
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
23
23
|
ActiveSupport::TestCase.fixture_path = File.expand_path("../dummy/test/fixtures", __FILE__)
|
24
24
|
ActiveSupport::TestCase.fixtures :all
|
25
|
-
end
|
26
|
-
|
27
|
-
Epom::EpomElement.login(ENV['username'], ENV['password'])
|
25
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: epom_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.3'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adrian Chang
|
@@ -70,24 +70,34 @@ files:
|
|
70
70
|
- test/dummy/Rakefile
|
71
71
|
- test/dummy/app/assets/javascripts/advertisers.js
|
72
72
|
- test/dummy/app/assets/javascripts/application.js
|
73
|
+
- test/dummy/app/assets/javascripts/banners.js
|
73
74
|
- test/dummy/app/assets/javascripts/campaigns.js
|
74
75
|
- test/dummy/app/assets/stylesheets/advertisers.css
|
75
76
|
- test/dummy/app/assets/stylesheets/application.css
|
77
|
+
- test/dummy/app/assets/stylesheets/banners.css
|
76
78
|
- test/dummy/app/assets/stylesheets/campaigns.css
|
77
79
|
- test/dummy/app/assets/stylesheets/scaffold.css
|
78
80
|
- test/dummy/app/controllers/advertisers_controller.rb
|
79
81
|
- test/dummy/app/controllers/application_controller.rb
|
82
|
+
- test/dummy/app/controllers/banners_controller.rb
|
80
83
|
- test/dummy/app/controllers/campaigns_controller.rb
|
81
84
|
- test/dummy/app/helpers/advertisers_helper.rb
|
82
85
|
- test/dummy/app/helpers/application_helper.rb
|
86
|
+
- test/dummy/app/helpers/banners_helper.rb
|
83
87
|
- test/dummy/app/helpers/campaigns_helper.rb
|
84
88
|
- test/dummy/app/models/advertiser.rb
|
89
|
+
- test/dummy/app/models/banner.rb
|
85
90
|
- test/dummy/app/models/campaign.rb
|
86
91
|
- test/dummy/app/views/advertisers/_form.html.erb
|
87
92
|
- test/dummy/app/views/advertisers/edit.html.erb
|
88
93
|
- test/dummy/app/views/advertisers/index.html.erb
|
89
94
|
- test/dummy/app/views/advertisers/new.html.erb
|
90
95
|
- test/dummy/app/views/advertisers/show.html.erb
|
96
|
+
- test/dummy/app/views/banners/_form.html.erb
|
97
|
+
- test/dummy/app/views/banners/edit.html.erb
|
98
|
+
- test/dummy/app/views/banners/index.html.erb
|
99
|
+
- test/dummy/app/views/banners/new.html.erb
|
100
|
+
- test/dummy/app/views/banners/show.html.erb
|
91
101
|
- test/dummy/app/views/campaigns/_form.html.erb
|
92
102
|
- test/dummy/app/views/campaigns/edit.html.erb
|
93
103
|
- test/dummy/app/views/campaigns/index.html.erb
|
@@ -120,18 +130,25 @@ files:
|
|
120
130
|
- test/dummy/db/migrate/20150603151041_create_advertisers.rb
|
121
131
|
- test/dummy/db/migrate/20150604125603_add_epom_id_to_advertiser.rb
|
122
132
|
- test/dummy/db/migrate/20150608194916_create_campaigns.rb
|
133
|
+
- test/dummy/db/migrate/20150608195747_add_epom_id_to_campaigns.rb
|
134
|
+
- test/dummy/db/migrate/20150609175407_create_banners.rb
|
123
135
|
- test/dummy/db/schema.rb
|
124
136
|
- test/dummy/public/404.html
|
125
137
|
- test/dummy/public/422.html
|
126
138
|
- test/dummy/public/500.html
|
127
139
|
- test/dummy/public/favicon.ico
|
128
140
|
- test/dummy/test/controllers/advertisers_controller_test.rb
|
141
|
+
- test/dummy/test/controllers/banners_controller_test.rb
|
129
142
|
- test/dummy/test/controllers/campaigns_controller_test.rb
|
130
143
|
- test/dummy/test/fixtures/advertisers.yml
|
144
|
+
- test/dummy/test/fixtures/banners.yml
|
131
145
|
- test/dummy/test/fixtures/campaigns.yml
|
132
146
|
- test/dummy/test/models/advertiser_test.rb
|
147
|
+
- test/dummy/test/models/banner_test.rb
|
133
148
|
- test/dummy/test/models/campaign_test.rb
|
134
149
|
- test/epom_rails/acts_as_advertiser_test.rb
|
150
|
+
- test/epom_rails/acts_as_banner_test.rb
|
151
|
+
- test/epom_rails/acts_as_campaign_test.rb
|
135
152
|
- test/epom_rails_test.rb
|
136
153
|
- test/test_helper.rb
|
137
154
|
homepage: https://github.com/kewelta/epom_rails
|
@@ -161,21 +178,28 @@ summary: EpomRails gem.
|
|
161
178
|
test_files:
|
162
179
|
- test/test_helper.rb
|
163
180
|
- test/epom_rails_test.rb
|
181
|
+
- test/epom_rails/acts_as_campaign_test.rb
|
182
|
+
- test/epom_rails/acts_as_banner_test.rb
|
164
183
|
- test/epom_rails/acts_as_advertiser_test.rb
|
165
184
|
- test/dummy/config.ru
|
166
185
|
- test/dummy/Rakefile
|
167
186
|
- test/dummy/README.rdoc
|
168
187
|
- test/dummy/test/models/campaign_test.rb
|
188
|
+
- test/dummy/test/models/banner_test.rb
|
169
189
|
- test/dummy/test/models/advertiser_test.rb
|
170
190
|
- test/dummy/test/fixtures/campaigns.yml
|
191
|
+
- test/dummy/test/fixtures/banners.yml
|
171
192
|
- test/dummy/test/fixtures/advertisers.yml
|
172
193
|
- test/dummy/test/controllers/campaigns_controller_test.rb
|
194
|
+
- test/dummy/test/controllers/banners_controller_test.rb
|
173
195
|
- test/dummy/test/controllers/advertisers_controller_test.rb
|
174
196
|
- test/dummy/public/favicon.ico
|
175
197
|
- test/dummy/public/500.html
|
176
198
|
- test/dummy/public/422.html
|
177
199
|
- test/dummy/public/404.html
|
178
200
|
- test/dummy/db/schema.rb
|
201
|
+
- test/dummy/db/migrate/20150609175407_create_banners.rb
|
202
|
+
- test/dummy/db/migrate/20150608195747_add_epom_id_to_campaigns.rb
|
179
203
|
- test/dummy/db/migrate/20150608194916_create_campaigns.rb
|
180
204
|
- test/dummy/db/migrate/20150604125603_add_epom_id_to_advertiser.rb
|
181
205
|
- test/dummy/db/migrate/20150603151041_create_advertisers.rb
|
@@ -207,23 +231,33 @@ test_files:
|
|
207
231
|
- test/dummy/app/views/campaigns/index.html.erb
|
208
232
|
- test/dummy/app/views/campaigns/edit.html.erb
|
209
233
|
- test/dummy/app/views/campaigns/_form.html.erb
|
234
|
+
- test/dummy/app/views/banners/show.html.erb
|
235
|
+
- test/dummy/app/views/banners/new.html.erb
|
236
|
+
- test/dummy/app/views/banners/index.html.erb
|
237
|
+
- test/dummy/app/views/banners/edit.html.erb
|
238
|
+
- test/dummy/app/views/banners/_form.html.erb
|
210
239
|
- test/dummy/app/views/advertisers/show.html.erb
|
211
240
|
- test/dummy/app/views/advertisers/new.html.erb
|
212
241
|
- test/dummy/app/views/advertisers/index.html.erb
|
213
242
|
- test/dummy/app/views/advertisers/edit.html.erb
|
214
243
|
- test/dummy/app/views/advertisers/_form.html.erb
|
215
244
|
- test/dummy/app/models/campaign.rb
|
245
|
+
- test/dummy/app/models/banner.rb
|
216
246
|
- test/dummy/app/models/advertiser.rb
|
217
247
|
- test/dummy/app/helpers/campaigns_helper.rb
|
248
|
+
- test/dummy/app/helpers/banners_helper.rb
|
218
249
|
- test/dummy/app/helpers/application_helper.rb
|
219
250
|
- test/dummy/app/helpers/advertisers_helper.rb
|
220
251
|
- test/dummy/app/controllers/campaigns_controller.rb
|
252
|
+
- test/dummy/app/controllers/banners_controller.rb
|
221
253
|
- test/dummy/app/controllers/application_controller.rb
|
222
254
|
- test/dummy/app/controllers/advertisers_controller.rb
|
223
255
|
- test/dummy/app/assets/stylesheets/scaffold.css
|
224
256
|
- test/dummy/app/assets/stylesheets/campaigns.css
|
257
|
+
- test/dummy/app/assets/stylesheets/banners.css
|
225
258
|
- test/dummy/app/assets/stylesheets/application.css
|
226
259
|
- test/dummy/app/assets/stylesheets/advertisers.css
|
227
260
|
- test/dummy/app/assets/javascripts/campaigns.js
|
261
|
+
- test/dummy/app/assets/javascripts/banners.js
|
228
262
|
- test/dummy/app/assets/javascripts/application.js
|
229
263
|
- test/dummy/app/assets/javascripts/advertisers.js
|