irwi 0.2.4 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/MIT-LICENSE +1 -1
- data/README.rdoc +9 -9
- data/app/views/base_wiki_pages/_wiki_page_info.html.erb +1 -1
- data/app/views/base_wiki_pages/compare.html.erb +1 -1
- data/app/views/base_wiki_pages/history.html.erb +1 -1
- data/app/views/base_wiki_pages/no.html.erb +1 -1
- data/lib/generators/irwi_wiki/irwi_wiki_generator.rb +29 -0
- data/{generators → lib/generators}/irwi_wiki/templates/controllers/wiki_pages_controller.rb +3 -3
- data/{generators → lib/generators}/irwi_wiki/templates/helpers/wiki_pages_helper.rb +1 -1
- data/{generators → lib/generators}/irwi_wiki/templates/migrate/create_wiki_pages.rb +15 -15
- data/{generators → lib/generators}/irwi_wiki/templates/models/wiki_page.rb +3 -3
- data/{generators → lib/generators}/irwi_wiki/templates/models/wiki_page_version.rb +3 -3
- data/lib/generators/irwi_wiki_attachments/irwi_wiki_attachments_generator.rb +22 -0
- data/{generators → lib/generators}/irwi_wiki_attachments/templates/migrate/create_wiki_page_attachments.rb +6 -6
- data/{generators → lib/generators}/irwi_wiki_attachments/templates/models/wiki_page_attachment.rb +1 -1
- data/lib/generators/irwi_wiki_views/irwi_wiki_views_generator.rb +13 -0
- data/lib/irwi.rb +34 -7
- data/lib/irwi/comparators/base.rb +6 -6
- data/lib/irwi/comparators/diff_lcs.rb +12 -12
- data/lib/irwi/comparators/spans/changed_span.rb +6 -6
- data/lib/irwi/comparators/spans/not_changed_span.rb +7 -7
- data/lib/irwi/config.rb +16 -14
- data/lib/irwi/extensions/controllers.rb +18 -0
- data/lib/irwi/extensions/controllers/wiki_page_attachments.rb +1 -1
- data/lib/irwi/extensions/controllers/wiki_pages.rb +47 -47
- data/lib/irwi/extensions/models.rb +24 -0
- data/lib/irwi/extensions/models/wiki_page.rb +16 -16
- data/lib/irwi/extensions/models/wiki_page_attachment.rb +4 -4
- data/lib/irwi/extensions/models/wiki_page_version.rb +17 -17
- data/lib/irwi/formatters/blue_cloth.rb +4 -4
- data/lib/irwi/formatters/red_cloth.rb +4 -4
- data/lib/irwi/helpers.rb +13 -0
- data/lib/irwi/helpers/wiki_page_attachments_helper.rb +4 -2
- data/lib/irwi/helpers/wiki_pages_helper.rb +36 -36
- data/lib/irwi/paginators/none.rb +6 -4
- data/lib/irwi/paginators/will_paginate.rb +4 -4
- data/lib/irwi/support/route_mapper.rb +22 -18
- data/lib/irwi/support/template_finder.rb +4 -4
- data/lib/irwi/version.rb +9 -0
- metadata +110 -81
- data/.document +0 -4
- data/.gitignore +0 -24
- data/Rakefile +0 -53
- data/VERSION +0 -1
- data/generators/irwi_wiki/irwi_wiki_generator.rb +0 -22
- data/generators/irwi_wiki_attachments/irwi_wiki_attachments_generator.rb +0 -18
- data/generators/irwi_wiki_views/irwi_wiki_views_generator.rb +0 -19
- data/irwi.gemspec +0 -120
- data/rails/init.rb +0 -44
- data/spec/comparators/diff_lcs_spec.rb +0 -45
- data/spec/config_spec.rb +0 -68
- data/spec/extensions/controllers/wiki_pages_spec.rb +0 -69
- data/spec/extensions/models/wiki_page_spec.rb +0 -79
- data/spec/formatters/red_cloth_spec.rb +0 -17
- data/spec/helpers/wiki_page_attachments_helper_spec.rb +0 -45
- data/spec/helpers/wiki_pages_helper_spec.rb +0 -158
- data/spec/paginators/none_spec.rb +0 -24
- data/spec/paginators/will_paginate_spec.rb +0 -28
- data/spec/rcov.opts +0 -2
- data/spec/spec.opts +0 -4
- data/spec/spec_helper.rb +0 -15
- data/spec/support/route_mapper_spec.rb +0 -66
- data/spec/support/template_finder_spec.rb +0 -33
- data/tasks/riwiki_tasks.rake +0 -4
@@ -1,79 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
require "active_record"
|
4
|
-
|
5
|
-
describe Irwi::Extensions::Models::WikiPage do
|
6
|
-
|
7
|
-
class AbstractPage < ActiveRecord::Base
|
8
|
-
|
9
|
-
|
10
|
-
def self.columns
|
11
|
-
c = ActiveRecord::ConnectionAdapters::Column
|
12
|
-
|
13
|
-
[
|
14
|
-
c.new("title", nil, "string", false),
|
15
|
-
c.new("path", nil, "string", false),
|
16
|
-
c.new("content", nil, "text", false)
|
17
|
-
]
|
18
|
-
end
|
19
|
-
|
20
|
-
end
|
21
|
-
|
22
|
-
it { should_not be_nil }
|
23
|
-
|
24
|
-
before :all do
|
25
|
-
Irwi::config.page_attachment_class_name = nil
|
26
|
-
|
27
|
-
@cls = Class.new AbstractPage do
|
28
|
-
include Irwi::Extensions::Models::WikiPage
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
context "class" do
|
33
|
-
|
34
|
-
it { @cls.should respond_to(:find) }
|
35
|
-
it { @cls.should respond_to(:find_by_path_or_new) }
|
36
|
-
|
37
|
-
end
|
38
|
-
|
39
|
-
context "instance" do
|
40
|
-
|
41
|
-
before :each do
|
42
|
-
@obj = @cls.new
|
43
|
-
end
|
44
|
-
|
45
|
-
it { @obj.should respond_to(:save) }
|
46
|
-
it { @obj.should respond_to(:destroy) }
|
47
|
-
|
48
|
-
it { @obj.should respond_to(:comment) }
|
49
|
-
it { @obj.should respond_to(:previous_version_number) }
|
50
|
-
|
51
|
-
it { @obj.should respond_to(:versions) }
|
52
|
-
|
53
|
-
it { @obj.should_not respond_to(:attachments) }
|
54
|
-
|
55
|
-
end
|
56
|
-
|
57
|
-
context "with attachments" do
|
58
|
-
|
59
|
-
before :all do
|
60
|
-
Irwi::config.page_attachment_class_name = 'WikiPageAttachment'
|
61
|
-
|
62
|
-
@cls = Class.new AbstractPage do
|
63
|
-
include Irwi::Extensions::Models::WikiPage
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
context "instance" do
|
68
|
-
|
69
|
-
before :each do
|
70
|
-
@obj = @cls.new
|
71
|
-
end
|
72
|
-
|
73
|
-
it { @obj.should respond_to(:attachments) }
|
74
|
-
|
75
|
-
end
|
76
|
-
|
77
|
-
end
|
78
|
-
|
79
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
describe Irwi::Formatters::RedCloth do
|
4
|
-
|
5
|
-
before(:each) do
|
6
|
-
@f = Irwi::Formatters::RedCloth.new
|
7
|
-
end
|
8
|
-
|
9
|
-
specify "should proces bold text" do
|
10
|
-
@f.format('*Place* ff').should == '<p><strong>Place</strong> ff</p>'
|
11
|
-
end
|
12
|
-
|
13
|
-
specify "should proces italic text" do
|
14
|
-
@f.format('_Mom_ ff').should == '<p><em>Mom</em> ff</p>'
|
15
|
-
end
|
16
|
-
|
17
|
-
end
|
@@ -1,45 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
describe Irwi::Helpers::WikiPageAttachmentsHelper do
|
4
|
-
|
5
|
-
it { should_not be_nil }
|
6
|
-
|
7
|
-
context "included in class" do
|
8
|
-
|
9
|
-
before(:each) do
|
10
|
-
Irwi.config.page_attachment_class_name = 'WikiPageAttachment'
|
11
|
-
@m = Object.new
|
12
|
-
@m.send :extend, Irwi::Helpers::WikiPagesHelper
|
13
|
-
end
|
14
|
-
|
15
|
-
describe :wiki_show_attachment do
|
16
|
-
before do
|
17
|
-
class WikiPageAttachment; end
|
18
|
-
end
|
19
|
-
|
20
|
-
it 'replaces Attachment_1_thumb with its corresponding image tag' do
|
21
|
-
paperclip_attachment = mock('paperclip attachment')
|
22
|
-
attachment = mock(WikiPageAttachment, :wiki_page_attachment => paperclip_attachment)
|
23
|
-
|
24
|
-
WikiPageAttachment.should_receive(:find).with('1').and_return(attachment)
|
25
|
-
paperclip_attachment.should_receive(:url).with(:thumb).and_return(:thumb_image)
|
26
|
-
@m.should_receive(:image_tag).with(:thumb_image, :class => 'wiki_page_attachment').and_return('thumb_image_markup')
|
27
|
-
|
28
|
-
@m.wiki_show_attachments('Foo Attachment_1_thumb Bar').should == 'Foo thumb_image_markup Bar'
|
29
|
-
end
|
30
|
-
|
31
|
-
it 'does not affect text without attachments' do
|
32
|
-
@m.wiki_show_attachments('Foo Bar').should == 'Foo Bar'
|
33
|
-
end
|
34
|
-
|
35
|
-
it 'ignores absent attachments' do
|
36
|
-
paperclip_attachment = mock('paperclip attachment')
|
37
|
-
attachment = mock(WikiPageAttachment, :wiki_page_attachment => paperclip_attachment)
|
38
|
-
WikiPageAttachment.should_receive(:find).with('10').and_raise(ActiveRecord::RecordNotFound)
|
39
|
-
|
40
|
-
@m.wiki_show_attachments('Foo Attachment_10_thumb Bar').should == 'Foo Bar'
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
end
|
45
|
-
end
|
@@ -1,158 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
describe Irwi::Helpers::WikiPagesHelper do
|
4
|
-
|
5
|
-
it { should_not be_nil }
|
6
|
-
|
7
|
-
context "included in class" do
|
8
|
-
|
9
|
-
before(:each) do
|
10
|
-
@m = Object.new
|
11
|
-
@m.send :extend, Irwi::Helpers::WikiPagesHelper
|
12
|
-
end
|
13
|
-
|
14
|
-
it { @m.should respond_to(:wiki_page_form) }
|
15
|
-
|
16
|
-
it { @m.should respond_to(:wiki_page_edit_path) }
|
17
|
-
it { @m.should respond_to(:wiki_page_history_path) }
|
18
|
-
it { @m.should respond_to(:wiki_page_compare_path) }
|
19
|
-
it { @m.should respond_to(:wiki_page_path) }
|
20
|
-
|
21
|
-
specify "should form url_for by wiki_page_edit_path" do
|
22
|
-
@m.should_receive(:url_for).with(:action => :edit).and_return('epath')
|
23
|
-
|
24
|
-
@m.wiki_page_edit_path.should == 'epath'
|
25
|
-
end
|
26
|
-
|
27
|
-
specify "should form url_for by wiki_page_edit_path with path" do
|
28
|
-
@m.should_receive(:url_for).with(:action => :edit, :path => 'qwerty').and_return('epath')
|
29
|
-
|
30
|
-
@m.wiki_page_edit_path('qwerty').should == 'epath'
|
31
|
-
end
|
32
|
-
|
33
|
-
specify "should form url_for by wiki_page_history_path" do
|
34
|
-
@m.should_receive(:url_for).with(:action => :history).and_return('hpath')
|
35
|
-
|
36
|
-
@m.wiki_page_history_path.should == 'hpath'
|
37
|
-
end
|
38
|
-
|
39
|
-
specify "should form url_for by wiki_page_compare_path" do
|
40
|
-
@m.should_receive(:url_for).with(:action => :compare).and_return('cpath')
|
41
|
-
|
42
|
-
@m.wiki_page_compare_path.should == 'cpath'
|
43
|
-
end
|
44
|
-
|
45
|
-
specify "should form url_for by wiki_page_path" do
|
46
|
-
@m.should_receive(:url_for).with(:action => :show).and_return('spath')
|
47
|
-
|
48
|
-
@m.wiki_page_path.should == 'spath'
|
49
|
-
end
|
50
|
-
|
51
|
-
specify "should form url_for by wiki_page_path with path" do
|
52
|
-
@m.should_receive(:url_for).with(:action => :show, :path => '123').and_return('spath')
|
53
|
-
|
54
|
-
@m.wiki_page_path('123').should == 'spath'
|
55
|
-
end
|
56
|
-
|
57
|
-
it { @m.should respond_to(:wiki_content) }
|
58
|
-
it { @m.should respond_to(:wiki_diff) }
|
59
|
-
it { @m.should respond_to(:wiki_user) }
|
60
|
-
|
61
|
-
it { @m.should respond_to(:wiki_page_info) }
|
62
|
-
it { @m.should respond_to(:wiki_page_actions) }
|
63
|
-
it { @m.should respond_to(:wiki_page_history) }
|
64
|
-
it { @m.should respond_to(:wiki_page_style) }
|
65
|
-
|
66
|
-
it { @m.should respond_to(:wiki_link) }
|
67
|
-
it { @m.should respond_to(:wiki_linkify) }
|
68
|
-
|
69
|
-
it { @m.should respond_to(:wt) }
|
70
|
-
|
71
|
-
specify "should format and sanitize content with current formatter and #sanitize" do
|
72
|
-
Irwi.config.formatter = mock 'Formatter'
|
73
|
-
Irwi.config.formatter.should_receive(:format).with('Page content').and_return('Formatted content')
|
74
|
-
|
75
|
-
@m.should_receive(:auto_link).with('Formatted content').and_return('Formatted content with links')
|
76
|
-
@m.should_receive(:sanitize).with('Formatted content with links').and_return('Formatted and sanitized content with links')
|
77
|
-
|
78
|
-
@m.wiki_content( 'Page content' ).should == 'Formatted and sanitized content with links'
|
79
|
-
end
|
80
|
-
|
81
|
-
specify "should render wiki_page_info partial" do
|
82
|
-
@m.should_receive(:template_dir).and_return('partial_dir')
|
83
|
-
@m.should_receive(:render).with(:partial => "partial_dir/wiki_page_info", :locals => { :page => 'MyPage' }).and_return('partial_body')
|
84
|
-
|
85
|
-
@m.wiki_page_info( 'MyPage' ).should == 'partial_body'
|
86
|
-
end
|
87
|
-
|
88
|
-
specify "should render wiki_page_actions partial" do
|
89
|
-
@m.should_receive(:template_dir).and_return('partial_dir')
|
90
|
-
@m.should_receive(:render).with(:partial => "partial_dir/wiki_page_actions", :locals => { :page => 'MyPage' }).and_return('partial_body')
|
91
|
-
|
92
|
-
@m.wiki_page_actions( 'MyPage' ).should == 'partial_body'
|
93
|
-
end
|
94
|
-
|
95
|
-
specify "should render wiki_page_history partial" do
|
96
|
-
@m.should_receive(:template_dir).and_return('partial_dir')
|
97
|
-
@m.should_receive(:render).with(:partial => "partial_dir/wiki_page_history", :locals => { :page => 'MyPage', :versions => [1,2], :with_form => true }).and_return('partial_body')
|
98
|
-
|
99
|
-
@m.wiki_page_history( 'MyPage', [1,2] ).should == 'partial_body'
|
100
|
-
end
|
101
|
-
|
102
|
-
specify "should render wiki_page_history partial (with default versions)" do
|
103
|
-
page = mock 'MyPage'
|
104
|
-
page.should_receive(:versions).and_return([1])
|
105
|
-
|
106
|
-
@m.should_receive(:template_dir).and_return('partial_dir')
|
107
|
-
@m.should_receive(:render).with(:partial => "partial_dir/wiki_page_history", :locals => { :page => page, :versions => [1], :with_form => false }).and_return('partial_body')
|
108
|
-
|
109
|
-
@m.wiki_page_history( page ).should == 'partial_body'
|
110
|
-
end
|
111
|
-
|
112
|
-
specify "should linkify string" do
|
113
|
-
@m.should_receive(:wiki_link).exactly(3).times.with('Some other page').and_return('url')
|
114
|
-
|
115
|
-
@m.wiki_linkify( '[[Some other page]] - link' ).should == '<a href="url">Some other page</a> - link'
|
116
|
-
@m.wiki_linkify( '[[Some other page|Go other page]] - link' ).should == '<a href="url">Go other page</a> - link'
|
117
|
-
@m.wiki_linkify( '[[Some other page]]s are there' ).should == '<a href="url">Some other pages</a> are there'
|
118
|
-
end
|
119
|
-
|
120
|
-
specify "should linkify with anchors" do
|
121
|
-
@m.should_receive(:wiki_link).once.with('Some other page').and_return('url')
|
122
|
-
|
123
|
-
@m.wiki_linkify( 'And [[Some other page#other|other page]]' ).should == 'And <a href="url#other">other page</a>'
|
124
|
-
end
|
125
|
-
|
126
|
-
specify "should generate link for non-existent page" do
|
127
|
-
page_class = mock "WikiPageClass"
|
128
|
-
page_class.should_receive(:find_by_title).with('Page title').and_return(nil)
|
129
|
-
|
130
|
-
Irwi.config.should_receive(:page_class).and_return(page_class)
|
131
|
-
|
132
|
-
@m.should_receive(:url_for).with( :controller => 'wiki_pages', :action => :show, :path => 'Page title' ).and_return('url')
|
133
|
-
|
134
|
-
@m.wiki_link( 'Page title' ).should == 'url'
|
135
|
-
end
|
136
|
-
|
137
|
-
specify "should generate link for existent page" do
|
138
|
-
page = mock "WikiPage"
|
139
|
-
page.should_receive(:path).and_return('page_path')
|
140
|
-
|
141
|
-
page_class = mock "WikiPageClass"
|
142
|
-
page_class.should_receive(:find_by_title).with('Page title').and_return(page)
|
143
|
-
|
144
|
-
Irwi.config.should_receive(:page_class).and_return(page_class)
|
145
|
-
|
146
|
-
@m.should_receive(:url_for).with( :controller => 'wiki_pages', :action => :show, :path => 'page_path' ).and_return('url')
|
147
|
-
|
148
|
-
@m.wiki_link( 'Page title' ).should == 'url'
|
149
|
-
end
|
150
|
-
|
151
|
-
specify "not be vulnerable to XSS when showing a diff" do
|
152
|
-
xss = '<script>alert("exploit")</script>'
|
153
|
-
@m.wiki_diff('foo bar', "foo #{xss} bar").should_not include(xss)
|
154
|
-
end
|
155
|
-
|
156
|
-
end
|
157
|
-
|
158
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
describe Irwi::Paginators::None do
|
4
|
-
|
5
|
-
before(:each) do
|
6
|
-
@p = Irwi::Paginators::None.new
|
7
|
-
end
|
8
|
-
|
9
|
-
specify "should paginate collection - call find" do
|
10
|
-
coll = mock "Collection"
|
11
|
-
coll.should_receive(:find).with(:all,{}).and_return("full collection")
|
12
|
-
|
13
|
-
@p.paginate( coll, :page => 10 ).should == "full collection"
|
14
|
-
end
|
15
|
-
|
16
|
-
specify "should render paginated section" do
|
17
|
-
a = nil
|
18
|
-
@p.paginated_section "view", "collection" do
|
19
|
-
a = true
|
20
|
-
end
|
21
|
-
a.should be_true
|
22
|
-
end
|
23
|
-
|
24
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
|
3
|
-
describe Irwi::Paginators::WillPaginate do
|
4
|
-
|
5
|
-
before :all do
|
6
|
-
end
|
7
|
-
|
8
|
-
before :each do
|
9
|
-
@p = Irwi::Paginators::WillPaginate.new
|
10
|
-
end
|
11
|
-
|
12
|
-
specify "should paginate collection" do
|
13
|
-
coll = mock "Collection"
|
14
|
-
coll.should_receive(:paginate).with( :page => 15 ).and_return("paginated_collection")
|
15
|
-
|
16
|
-
@p.paginate( coll, :page => 15 ).should == "paginated_collection"
|
17
|
-
end
|
18
|
-
|
19
|
-
specify "should render paginated collection" do
|
20
|
-
block = lambda { 11 }
|
21
|
-
coll = []
|
22
|
-
view = mock "View"
|
23
|
-
view.should_receive(:paginated_section).with( coll, &block ).and_return("result")
|
24
|
-
|
25
|
-
@p.paginated_section( view, coll, &block ).should == "result"
|
26
|
-
end
|
27
|
-
|
28
|
-
end
|
data/spec/rcov.opts
DELETED
data/spec/spec.opts
DELETED
data/spec/spec_helper.rb
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
|
3
|
-
require 'active_support'
|
4
|
-
require 'active_support/test_case'
|
5
|
-
|
6
|
-
ActiveSupport::Dependencies.load_paths << "#{File.dirname(__FILE__)}/../lib"
|
7
|
-
ActiveSupport::Dependencies.load_paths << "#{File.dirname(__FILE__)}/../app/models"
|
8
|
-
ActiveSupport::Dependencies.load_paths << "#{File.dirname(__FILE__)}/../app/controllers"
|
9
|
-
|
10
|
-
# Requires supporting files with custom matchers and macros, etc,
|
11
|
-
# in ./support/ and its subdirectories.
|
12
|
-
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
13
|
-
|
14
|
-
Spec::Runner.configure do |config|
|
15
|
-
end
|
@@ -1,66 +0,0 @@
|
|
1
|
-
require "spec/spec_helper"
|
2
|
-
require 'action_controller'
|
3
|
-
|
4
|
-
describe Irwi::Support::RouteMapper do
|
5
|
-
|
6
|
-
it { should_not be_nil }
|
7
|
-
|
8
|
-
context "included in class" do
|
9
|
-
|
10
|
-
before(:each) do
|
11
|
-
@m = Object.new
|
12
|
-
@m.send :extend, Irwi::Support::RouteMapper
|
13
|
-
end
|
14
|
-
|
15
|
-
specify "should provide wiki_root method" do
|
16
|
-
@m.should respond_to(:wiki_root)
|
17
|
-
end
|
18
|
-
|
19
|
-
end
|
20
|
-
|
21
|
-
describe 'wiki routes' do
|
22
|
-
before do
|
23
|
-
@set = ActionController::Routing::RouteSet.new
|
24
|
-
@mapper = ActionController::Routing::RouteSet::Mapper.new(@set)
|
25
|
-
|
26
|
-
ActionController::Routing::RouteSet::Mapper.instance_eval do
|
27
|
-
include Irwi::Support::RouteMapper
|
28
|
-
end
|
29
|
-
@mapper.wiki_root('/wiki')
|
30
|
-
end
|
31
|
-
|
32
|
-
def check_route path, params = {}
|
33
|
-
@set.generate(params).should == path
|
34
|
-
@set.recognize_path(path).should == params
|
35
|
-
end
|
36
|
-
|
37
|
-
it 'has a route of listing all the wikis' do
|
38
|
-
check_route '/wiki/all', :controller => 'wiki_pages', :action => 'all', :root => '/wiki'
|
39
|
-
end
|
40
|
-
|
41
|
-
%w[compare new edit history].each do |act|
|
42
|
-
it "has a route for #{act} wiki" do
|
43
|
-
check_route "/wiki/#{act}/wiki_path", :controller => 'wiki_pages', :action => act, :root => '/wiki', :path => ['wiki_path']
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
# Unable to perform the recognize path test because of conditions. If you can , write it.
|
48
|
-
%w[show update destroy].each do |act|
|
49
|
-
it "has a route for #{act} wiki" do
|
50
|
-
@set.generate({:controller => 'wiki_pages', :action => act, :root => '/wiki', :path => ['wiki_path']}).should == '/wiki/wiki_path'
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
describe 'attachment routes' do
|
55
|
-
it 'has a route for adding an attachment' do
|
56
|
-
@set.generate({:controller => 'wiki_pages', :action => 'add_attachment', :root => '/wiki', :path => ['wiki_path']}).should == '/wiki/attach/wiki_path'
|
57
|
-
end
|
58
|
-
|
59
|
-
it 'has a route for deleting an attachment' do
|
60
|
-
@set.generate({:controller => 'wiki_pages', :action => 'remove_attachment', :root => '/wiki', :attachment_id => 1}).should == '/wiki/attach/1'
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
end
|
65
|
-
|
66
|
-
end
|