blob: 2ffb5bd57da34f3bb28a2b84f696d66eaec46d75 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
# encoding: utf-8
require "spec_helper"
describe Refinery do
describe "Banners" do
describe "Admin" do
describe "banners" do
login_refinery_user
describe "banners list" do
before(:each) do
FactoryGirl.create(:banner, :name => "UniqueTitleOne")
FactoryGirl.create(:banner, :name => "UniqueTitleTwo")
end
it "shows two items" do
visit refinery.banners_admin_banners_path
page.should have_content("UniqueTitleOne")
page.should have_content("UniqueTitleTwo")
end
end
describe "create" do
before(:each) do
visit refinery.banners_admin_banners_path
click_link "Add New Banner"
end
context "valid data" do
it "should succeed" do
fill_in "Name", :with => "This is a test of the first string field"
click_button "Save"
page.should have_content("'This is a test of the first string field' was successfully added.")
Refinery::Banners::Banner.count.should == 1
end
end
context "invalid data" do
it "should fail" do
click_button "Save"
page.should have_content("Name can't be blank")
Refinery::Banners::Banner.count.should == 0
end
end
context "duplicate" do
before(:each) { FactoryGirl.create(:banner, :name => "UniqueTitle") }
it "should fail" do
visit refinery.banners_admin_banners_path
click_link "Add New Banner"
fill_in "Name", :with => "UniqueTitle"
click_button "Save"
page.should have_content("There were problems")
Refinery::Banners::Banner.count.should == 1
end
end
end
describe "edit" do
before(:each) { FactoryGirl.create(:banner, :name => "A name") }
it "should succeed" do
visit refinery.banners_admin_banners_path
within ".actions" do
click_link "Edit this banner"
end
fill_in "Name", :with => "A different name"
click_button "Save"
page.should have_content("'A different name' was successfully updated.")
page.should have_no_content("A name")
end
end
describe "destroy" do
before(:each) { FactoryGirl.create(:banner, :name => "UniqueTitleOne") }
it "should succeed" do
visit refinery.banners_admin_banners_path
click_link "Remove this banner forever"
page.should have_content("'UniqueTitleOne' was successfully removed.")
Refinery::Banners::Banner.count.should == 0
end
end
end
end
end
end
|