@@ -1,109 +1,115 | |||||
1 | # Redmine - project management software |
|
1 | # Redmine - project management software | |
2 | # Copyright (C) 2006-2011 Jean-Philippe Lang |
|
2 | # Copyright (C) 2006-2011 Jean-Philippe Lang | |
3 | # |
|
3 | # | |
4 | # This program is free software; you can redistribute it and/or |
|
4 | # This program is free software; you can redistribute it and/or | |
5 | # modify it under the terms of the GNU General Public License |
|
5 | # modify it under the terms of the GNU General Public License | |
6 | # as published by the Free Software Foundation; either version 2 |
|
6 | # as published by the Free Software Foundation; either version 2 | |
7 | # of the License, or (at your option) any later version. |
|
7 | # of the License, or (at your option) any later version. | |
8 | # |
|
8 | # | |
9 | # This program is distributed in the hope that it will be useful, |
|
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | # GNU General Public License for more details. |
|
12 | # GNU General Public License for more details. | |
13 | # |
|
13 | # | |
14 | # You should have received a copy of the GNU General Public License |
|
14 | # You should have received a copy of the GNU General Public License | |
15 | # along with this program; if not, write to the Free Software |
|
15 | # along with this program; if not, write to the Free Software | |
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
|
16 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
17 |
|
17 | |||
18 | require File.expand_path('../../../test_helper', __FILE__) |
|
18 | require File.expand_path('../../../test_helper', __FILE__) | |
19 |
|
19 | |||
20 | class RoutingWikiTest < ActionController::IntegrationTest |
|
20 | class RoutingWikiTest < ActionController::IntegrationTest | |
21 |
def test_wiki_ |
|
21 | def test_wiki_matching | |
22 | assert_routing( |
|
22 | assert_routing( | |
23 | { :method => 'get', :path => "/projects/567/wiki" }, |
|
23 | { :method => 'get', :path => "/projects/567/wiki" }, | |
24 | { :controller => 'wiki', :action => 'show', :project_id => '567' } |
|
24 | { :controller => 'wiki', :action => 'show', :project_id => '567' } | |
25 | ) |
|
25 | ) | |
26 | assert_routing( |
|
26 | assert_routing( | |
27 | { :method => 'get', :path => "/projects/567/wiki/lalala" }, |
|
27 | { :method => 'get', :path => "/projects/567/wiki/lalala" }, | |
28 | { :controller => 'wiki', :action => 'show', :project_id => '567', |
|
28 | { :controller => 'wiki', :action => 'show', :project_id => '567', | |
29 | :id => 'lalala' } |
|
29 | :id => 'lalala' } | |
|
30 | ) | |||
|
31 | assert_routing( | |||
|
32 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff" }, | |||
|
33 | { :controller => 'wiki', :action => 'diff', :project_id => '1', | |||
|
34 | :id => 'CookBook_documentation' } | |||
|
35 | ) | |||
|
36 | assert_routing( | |||
|
37 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff/2" }, | |||
|
38 | { :controller => 'wiki', :action => 'diff', :project_id => '1', | |||
|
39 | :id => 'CookBook_documentation', :version => '2' } | |||
|
40 | ) | |||
|
41 | assert_routing( | |||
|
42 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff/2/vs/1" }, | |||
|
43 | { :controller => 'wiki', :action => 'diff', :project_id => '1', | |||
|
44 | :id => 'CookBook_documentation', :version => '2', :version_from => '1' } | |||
|
45 | ) | |||
|
46 | assert_routing( | |||
|
47 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/annotate/2" }, | |||
|
48 | { :controller => 'wiki', :action => 'annotate', :project_id => '1', | |||
|
49 | :id => 'CookBook_documentation', :version => '2' } | |||
|
50 | ) | |||
|
51 | end | |||
|
52 | ||||
|
53 | def test_wiki_misc | |||
|
54 | assert_routing( | |||
|
55 | { :method => 'get', :path => "/projects/567/wiki/date_index" }, | |||
|
56 | { :controller => 'wiki', :action => 'date_index', :project_id => '567' } | |||
|
57 | ) | |||
|
58 | assert_routing( | |||
|
59 | { :method => 'get', :path => "/projects/567/wiki/export" }, | |||
|
60 | { :controller => 'wiki', :action => 'export', :project_id => '567' } | |||
30 | ) |
|
61 | ) | |
31 | assert_routing( |
|
62 | assert_routing( | |
|
63 | { :method => 'get', :path => "/projects/567/wiki/index" }, | |||
|
64 | { :controller => 'wiki', :action => 'index', :project_id => '567' } | |||
|
65 | ) | |||
|
66 | end | |||
|
67 | ||||
|
68 | def test_wiki_resources | |||
|
69 | assert_routing( | |||
32 | { :method => 'get', :path => "/projects/567/wiki/my_page/edit" }, |
|
70 | { :method => 'get', :path => "/projects/567/wiki/my_page/edit" }, | |
33 | { :controller => 'wiki', :action => 'edit', :project_id => '567', |
|
71 | { :controller => 'wiki', :action => 'edit', :project_id => '567', | |
34 | :id => 'my_page' } |
|
72 | :id => 'my_page' } | |
35 | ) |
|
73 | ) | |
36 | assert_routing( |
|
74 | assert_routing( | |
37 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/history" }, |
|
75 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/history" }, | |
38 | { :controller => 'wiki', :action => 'history', :project_id => '1', |
|
76 | { :controller => 'wiki', :action => 'history', :project_id => '1', | |
39 | :id => 'CookBook_documentation' } |
|
77 | :id => 'CookBook_documentation' } | |
40 | ) |
|
78 | ) | |
41 | assert_routing( |
|
79 | assert_routing( | |
42 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff" }, |
|
|||
43 | { :controller => 'wiki', :action => 'diff', :project_id => '1', |
|
|||
44 | :id => 'CookBook_documentation' } |
|
|||
45 | ) |
|
|||
46 | assert_routing( |
|
|||
47 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff/2" }, |
|
|||
48 | { :controller => 'wiki', :action => 'diff', :project_id => '1', |
|
|||
49 | :id => 'CookBook_documentation', :version => '2' } |
|
|||
50 | ) |
|
|||
51 | assert_routing( |
|
|||
52 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/diff/2/vs/1" }, |
|
|||
53 | { :controller => 'wiki', :action => 'diff', :project_id => '1', |
|
|||
54 | :id => 'CookBook_documentation', :version => '2', :version_from => '1' } |
|
|||
55 | ) |
|
|||
56 | assert_routing( |
|
|||
57 | { :method => 'get', :path => "/projects/1/wiki/CookBook_documentation/annotate/2" }, |
|
|||
58 | { :controller => 'wiki', :action => 'annotate', :project_id => '1', |
|
|||
59 | :id => 'CookBook_documentation', :version => '2' } |
|
|||
60 | ) |
|
|||
61 | assert_routing( |
|
|||
62 | { :method => 'get', :path => "/projects/22/wiki/ladida/rename" }, |
|
80 | { :method => 'get', :path => "/projects/22/wiki/ladida/rename" }, | |
63 | { :controller => 'wiki', :action => 'rename', :project_id => '22', |
|
81 | { :controller => 'wiki', :action => 'rename', :project_id => '22', | |
64 | :id => 'ladida' } |
|
82 | :id => 'ladida' } | |
65 | ) |
|
83 | ) | |
66 | assert_routing( |
|
84 | assert_routing( | |
67 | { :method => 'get', :path => "/projects/567/wiki/index" }, |
|
|||
68 | { :controller => 'wiki', :action => 'index', :project_id => '567' } |
|
|||
69 | ) |
|
|||
70 | assert_routing( |
|
|||
71 | { :method => 'get', :path => "/projects/567/wiki/date_index" }, |
|
|||
72 | { :controller => 'wiki', :action => 'date_index', :project_id => '567' } |
|
|||
73 | ) |
|
|||
74 | assert_routing( |
|
|||
75 | { :method => 'get', :path => "/projects/567/wiki/export" }, |
|
|||
76 | { :controller => 'wiki', :action => 'export', :project_id => '567' } |
|
|||
77 | ) |
|
|||
78 | assert_routing( |
|
|||
79 | { :method => 'post', :path => "/projects/567/wiki/CookBook_documentation/preview" }, |
|
85 | { :method => 'post', :path => "/projects/567/wiki/CookBook_documentation/preview" }, | |
80 | { :controller => 'wiki', :action => 'preview', :project_id => '567', |
|
86 | { :controller => 'wiki', :action => 'preview', :project_id => '567', | |
81 | :id => 'CookBook_documentation' } |
|
87 | :id => 'CookBook_documentation' } | |
82 | ) |
|
88 | ) | |
83 | assert_routing( |
|
89 | assert_routing( | |
84 | { :method => 'post', :path => "/projects/22/wiki/ladida/rename" }, |
|
90 | { :method => 'post', :path => "/projects/22/wiki/ladida/rename" }, | |
85 | { :controller => 'wiki', :action => 'rename', :project_id => '22', |
|
91 | { :controller => 'wiki', :action => 'rename', :project_id => '22', | |
86 | :id => 'ladida' } |
|
92 | :id => 'ladida' } | |
87 | ) |
|
93 | ) | |
88 | assert_routing( |
|
94 | assert_routing( | |
89 | { :method => 'post', :path => "/projects/22/wiki/ladida/protect" }, |
|
95 | { :method => 'post', :path => "/projects/22/wiki/ladida/protect" }, | |
90 | { :controller => 'wiki', :action => 'protect', :project_id => '22', |
|
96 | { :controller => 'wiki', :action => 'protect', :project_id => '22', | |
91 | :id => 'ladida' } |
|
97 | :id => 'ladida' } | |
92 | ) |
|
98 | ) | |
93 | assert_routing( |
|
99 | assert_routing( | |
94 | { :method => 'post', :path => "/projects/22/wiki/ladida/add_attachment" }, |
|
100 | { :method => 'post', :path => "/projects/22/wiki/ladida/add_attachment" }, | |
95 | { :controller => 'wiki', :action => 'add_attachment', :project_id => '22', |
|
101 | { :controller => 'wiki', :action => 'add_attachment', :project_id => '22', | |
96 | :id => 'ladida' } |
|
102 | :id => 'ladida' } | |
97 | ) |
|
103 | ) | |
98 | assert_routing( |
|
104 | assert_routing( | |
99 | { :method => 'put', :path => "/projects/567/wiki/my_page" }, |
|
105 | { :method => 'put', :path => "/projects/567/wiki/my_page" }, | |
100 | { :controller => 'wiki', :action => 'update', :project_id => '567', |
|
106 | { :controller => 'wiki', :action => 'update', :project_id => '567', | |
101 | :id => 'my_page' } |
|
107 | :id => 'my_page' } | |
102 | ) |
|
108 | ) | |
103 | assert_routing( |
|
109 | assert_routing( | |
104 | { :method => 'delete', :path => "/projects/22/wiki/ladida" }, |
|
110 | { :method => 'delete', :path => "/projects/22/wiki/ladida" }, | |
105 | { :controller => 'wiki', :action => 'destroy', :project_id => '22', |
|
111 | { :controller => 'wiki', :action => 'destroy', :project_id => '22', | |
106 | :id => 'ladida' } |
|
112 | :id => 'ladida' } | |
107 | ) |
|
113 | ) | |
108 | end |
|
114 | end | |
109 | end |
|
115 | end |
General Comments 0
You need to be logged in to leave comments.
Login now