wikiリダイレクトのリセット機能 #11#22
Conversation
|
最初テストがうまく動かないことで戸惑っていたが、テストの実行コマンドでRAILS_ENV=testを入れるのを忘れていたのが原因だった。 現在はdestroyアクションは作ったので、それをViewからaタグでリクエストできるようにするところから次はじめる 画面案 Wiki表示画面の三点リーダ やること
テスト(テスト駆動で)
project_redirect_path DELETE /projects/:project_id/wiki/redirects/:id(.:format) ID=1でユーザーを指定してもなぜかアノニマスユーザーになる => RAILS_ENV=testをつけていなかったのが原因 |
|
あと、権限チェックの部分の実装も |
5d4821e to
b20f5c3
Compare
4bfe403 to
06bcdc0
Compare
06bcdc0 to
b2cbf4b
Compare
b20f5c3 to
684ba63
Compare
fe9ce7e to
b2cbf4b
Compare
|
@ishikawa999 rebaseはもうしていたので、手元のブランチを作り直してくださいね。 |
13004b5 to
1a444c0
Compare
|
第5回パッチ会 やったこと
課題 パスが /projects/:project_id/wiki/redirects/:id(.:format) だと、「redirects」という名前の Wiki ページを表示しようとしてしまう。 次にやること
|
1a444c0 to
8ac53f5
Compare
684ba63 to
3ef3f21
Compare
d5ebf1c to
4d686b3
Compare
3ef3f21 to
8d71268
Compare
4d686b3 to
3fd33af
Compare
8d71268 to
1a86b44
Compare
3fd33af to
8be4ec5
Compare
8be4ec5 to
d30dd08
Compare
009b5f2 to
0c81fbd
Compare
d30dd08 to
838a308
Compare
f97b308 to
fac2633
Compare
838a308 to
4debae2
Compare
|
@kfischer-okarin 細かいところで、UI(フロントエンド)周りについては、下記の2点が少し気になりました。
上記いずれもUI/UX的に問題なさそうであれば、大丈夫だと思います。 なお、私のRedmine公式サイトのアカウントは、GitHubと同じ@sanakとなりますので、よろしくお願いします 🙇♂️ |
ishikawa999
left a comment
There was a problem hiding this comment.
2点ほど細かい気になった点をコメントしました。挙動自体には問題ないと思います。
| <% @redirects_to_self.map { |redirect| %> | ||
| <%= link_to(l(:button_delete_redirect, :page_title => WikiPage.pretty_title(redirect.title)), {:controller => 'wiki_redirects', :action => 'destroy', :project_id => @project.identifier, :wiki_page_id => @page.title, :id => redirect.id}, :method => :delete, :class => 'icon icon-link-break') %> | ||
| <% } %> |
There was a problem hiding this comment.
| <% @redirects_to_self.map { |redirect| %> | |
| <%= link_to(l(:button_delete_redirect, :page_title => WikiPage.pretty_title(redirect.title)), {:controller => 'wiki_redirects', :action => 'destroy', :project_id => @project.identifier, :wiki_page_id => @page.title, :id => redirect.id}, :method => :delete, :class => 'icon icon-link-break') %> | |
| <% } %> | |
| <% @redirects_to_self.map do |redirect| %> | |
| <%= link_to(l(:button_delete_redirect, :page_title => WikiPage.pretty_title(redirect.title)), {:controller => 'wiki_redirects', :action => 'destroy', :project_id => @project.identifier, :wiki_page_id => @page.title, :id => redirect.id}, :method => :delete, :class => 'icon icon-link-break') %> | |
| <% end %> |
細かいのですが、ここのブロックはdo...endの方が他の書き方にあっていて良いと思います。
| end | ||
|
|
||
| def test_destroy_without_permission | ||
| @request.session[:user_id] = User.generate!.id |
There was a problem hiding this comment.
- test_destroyとtest_destroy_without_permissionの間で結局何の権限の違いによって結果が違うのかが分かりづらい(rename_wiki_pages権限の有無によって違うはず)
- test_destroyとtest_destroy_without_permissionで別のユーザーを使っているため、rename_wiki_pages権限以外の前提にも違い出てしまっている
という2点が気になりました。
前提(@request.session[:user_id] = 2)は合わせた上で、権限無しのテストでだけ Role.find(1).remove_permission! :rename_wiki_pages という書き方のほうが個人的には好きです。
diff --git a/test/functional/wiki_redirects_controller_test.rb b/test/functional/wiki_redirects_controller_test.rb
index 7949ec3b5..e9ae9f2f7 100644
--- a/test/functional/wiki_redirects_controller_test.rb
+++ b/test/functional/wiki_redirects_controller_test.rb
@@ -31,6 +31,8 @@ class WikiRedirectsControllerTest < Redmine::ControllerTest
end
def test_destroy
+ @request.session[:user_id] = 2
+
wiki_page = WikiPage.find(2)
old_title = wiki_page.title
wiki_page.title = 'Test'
@@ -45,8 +47,9 @@ class WikiRedirectsControllerTest < Redmine::ControllerTest
assert_not WikiRedirect.exists?(id: wiki_redirect.id)
end
- def test_destroy_without_permission
- @request.session[:user_id] = User.generate!.id
+ def test_destroy_without_rename_wiki_pages_permission
+ @request.session[:user_id] = 2
+ Role.find(1).remove_permission! :rename_wiki_pages # User 2 role
wiki_page = WikiPage.find(2)
old_title = wiki_page.title(気になった点としてコメントしただけなので、この書き方でも問題なくコミットされると思います。)
fac2633 to
7c42c2d
Compare
4debae2 to
2e82818
Compare
de43532 to
43896df
Compare
02f1476 to
c287f07
Compare
c287f07 to
413db69
Compare
413db69 to
089e4be
Compare
089e4be to
0c2ade7
Compare
6912c9c to
29da626
Compare
332f645 to
c114cd3
Compare
29da626 to
add47ce
Compare
c114cd3 to
3833678
Compare
add47ce to
973f3cd
Compare
|
このパッチって何か終わっていない作業がありますか? |
|
すいません、私の方で要らないコメントをしてましたが、良く読み返すと、 |
973f3cd to
f313677
Compare
8d061a1 to
e0f5ce3
Compare
f313677 to
5f3f52b
Compare
f72861f to
b288f1c
Compare
5f3f52b to
c8e0edc
Compare
b288f1c to
1fc0bf3
Compare
c8e0edc to
8c743ca
Compare
|
Patch can be downloaded here |


インデックスを貼る