[#4389] Added the Contract filter to the Time Entry report.

This commit is contained in:
Eric Davis
2010-08-16 09:54:09 -07:00
parent 620eaa262f
commit 720da2c554
3 changed files with 32 additions and 1 deletions

View File

@@ -106,6 +106,10 @@ class Contract < ActiveRecord::Base
end
end
def to_s
name
end
if Rails.env.test?
generator_for :name, :method => :next_name
generator_for :executed => true

View File

@@ -7,6 +7,11 @@ module RedmineContracts
:klass => Deliverable,
:label => :field_deliverable
}
context[:available_criterias]["contract_id"] = {
:sql => "(SELECT deliverable.contract_id FROM #{Deliverable.table_name} deliverable WHERE deliverable.id = issues.deliverable_id)",
:klass => Contract,
:label => :field_contract
}
return ''
end
end

View File

@@ -50,6 +50,28 @@ class RedmineContracts::Hooks::ControllerTimelogAvailableCriteriasTest < ActionC
assert :field_deliverable, context[:available_criterias]['deliverable_id'][:label]
end
end
context "Contracts" do
should "add a contract_id to the available criterias" do
@response.body = hook(context)
assert context[:available_criterias]['contract_id']
end
should "add the contact sql to the available criterias" do
@response.body = hook(context)
assert "issues.deliverable_id", context[:available_criterias]['contract_id'][:sql]
end
should "add the deliverable Class to the available criterias" do
@response.body = hook(context)
assert Contract, context[:available_criterias]['contract_id'][:klass]
end
should "add the deliverable label to the available criterias" do
@response.body = hook(context)
assert :field_contract, context[:available_criterias]['contract_id'][:label]
end
end
end
end