FC2ブログ

徒然さめざめ

思ったことを思ったときに思ったように

Redmine Hack! reviewboardとの連携

以前、Redmine Users (japanese) の方に、
TestLinkへのリンクを張る方法を載せたけど、
それがmixiで紹介されてたのでついでにReviewboardへのリンクも含めて
最新リポジトリとのパッチを添付しておこう。


TEST_LINK_ADDRESS と REVIEW_LINK_ADDRESS はそれぞれ、
config/environment.rb にでも定義するか、直接アドレスを書けばいいです。

TEST_LINK_ADDRESS = "http://testlinkがあるサーバのアドレス/testlink/lib/testcases/archiveData.php?id=%d&edit=testcase&allow_edit=0"
REVIEW_LINK_ADDRESS = "http://reviewboardがあるサーバアドレス/r/%d/"


Index: app/helpers/application_helper.rb
===================================================================
--- app/helpers/application_helper.rb (リビジョン 2250)
+++ app/helpers/application_helper.rb (作業コピー)
@@ -386,7 +402,7 @@
# export:some/file -> Force the download of the file
# Forum messages:
# message#1218 -> Link to message with id 1218
- text = text.gsub(%r{([\s\(,\-\>]|^)(!)?(attachment|document|version|commit|source|export|message)?((#|r)(\d+)|(:)([^"\s<>][^\s<>]*?|"[^"]+?"))(?=(?=[[:punct:]]\W)|\s|<|$)}) do |m|
+ text = text.gsub(%r{([\s\(,\-\>]|^)(!)?(attachment|document|version|commit|source|export|message|testlink|codereview)?((#|r)(\d+)|(:)([^"\s<>][^\s<>]*?|"[^"]+?"))(?=(?=[[:punct:]]\W)|\s|<|$)}) do |m|
leading, esc, prefix, sep, oid = $1, $2, $3, $5 || $7, $6 || $8
link = nil
if esc.nil?
@@ -416,6 +432,10 @@
link = link_to h(version.name), {:only_path => only_path, :controller => 'versions', :action => 'show', :id => version},
:class => 'version'
end
+ when 'testlink'
+ link = link_to("testlink##{oid}", TEST_LINK_ADDRESS % oid)
+ when 'codereview'
+ link = link_to("codereview##{oid}", REVIEW_LINK_ADDRESS % oid)
when 'message'
if message = Message.find_by_id(oid, :include => [:parent, {:board => :project}], :conditions => Project.visible_by(User.current))
link = link_to h(truncate(message.subject, 60)), {:only_path => only_path,


これで、 testlink#issue_id と codereview#reviewboardのid でリンクされます。
スポンサーサイト



テーマ:プログラミング - ジャンル:コンピュータ

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://fmkt.blog65.fc2.com/tb.php/17-5617dc12
この記事にトラックバックする(FC2ブログユーザー)