Patch #5404 » 5404_fix_redmine_on_jruby_trunk.diff
app/helpers/timelog_helper.rb | ||
---|---|---|
57 | 57 |
if value.to_s.empty? |
58 | 58 |
data.select {|row| row[criteria].blank? } |
59 | 59 |
else |
60 |
data.select {|row| row[criteria] == value}
|
|
60 |
data.select {|row| row[criteria].to_s == value.to_s}
|
|
61 | 61 |
end |
62 | 62 |
end |
63 | 63 |
|
app/models/workflow.rb | ||
---|---|---|
32 | 32 |
trackers.each do |tracker| |
33 | 33 |
t = [] |
34 | 34 |
roles.each do |role| |
35 |
row = counts.detect {|c| c['role_id'] == role.id.to_s && c['tracker_id'] == tracker.id.to_s}
|
|
35 |
row = counts.detect {|c| c['role_id'].to_s == role.id.to_s && c['tracker_id'].to_s == tracker.id.to_s}
|
|
36 | 36 |
t << [role, (row.nil? ? 0 : row['c'].to_i)] |
37 | 37 |
end |
38 | 38 |
result << [tracker, t] |
config/initializers/jdbc.rb | ||
---|---|---|
1 |
# This file was generated by the "jdbc" generator, which is provided |
|
2 |
# by the activerecord-jdbc-adapter gem. |
|
3 |
# |
|
4 |
# This file allows the JDBC drivers to be hooked into ActiveRecord |
|
5 |
# such that you don't have to change anything else in your Rails |
|
6 |
# application. |
|
7 |
require 'jdbc_adapter' if defined?(JRUBY_VERSION) |
config/initializers/jruby_compat.rb | ||
---|---|---|
1 |
if defined?(JRUBY_VERSION) |
|
2 |
::JdbcSpec::PostgreSQL.class_eval do |
|
3 |
def table_alias_length |
|
4 |
@table_alias_length ||= (postgresql_version >= 80000 ? select_one('SHOW max_identifier_length')['max_identifier_length'].to_i : 63) |
|
5 |
end |
|
6 |
end |
|
7 | ||
8 |
::JdbcSpec::SQLite3::Column.class_eval do |
|
9 |
def type_cast_with_correct_date_handling(value) |
|
10 |
return nil if value.nil? |
|
11 |
case type |
|
12 |
when :datetime, :time |
|
13 |
JdbcSpec::SQLite3::Column.cast_to_time(value) |
|
14 |
when :date |
|
15 |
JdbcSpec::SQLite3::Column.cast_to_date(value) |
|
16 |
else |
|
17 |
type_cast_without_correct_date_handling(value) |
|
18 |
end |
|
19 |
end |
|
20 |
alias_method_chain :type_cast, :correct_date_handling |
|
21 | ||
22 |
def type_cast_code_with_correct_date_handling(var_name) |
|
23 |
case type |
|
24 |
when :datetime, :time |
|
25 |
"JdbcSpec::SQLite3::Column.cast_to_time(#{var_name})" |
|
26 |
when :date |
|
27 |
"JdbcSpec::SQLite3::Column.cast_to_date(#{var_name})" |
|
28 |
else |
|
29 |
type_cast_code_without_correct_date_handling(var_name) |
|
30 |
end |
|
31 |
end |
|
32 |
alias_method_chain :type_cast_code, :correct_date_handling |
|
33 | ||
34 |
def self.cast_to_date(value) |
|
35 |
return value if value.is_a? Date |
|
36 |
time = cast_to_time(value) |
|
37 |
Date.new(time.year, time.month, time.day) |
|
38 |
end |
|
39 |
end |
|
40 |
|
|
41 |
::JdbcSpec::SQLite3.class_eval do |
|
42 |
def quote_with_date_support(value, column = nil) |
|
43 |
if value.respond_to?(:to_date) && column && column.type == :date |
|
44 |
quote_without_date_support(value.to_date, column) |
|
45 |
else |
|
46 |
quote_without_date_support(value, column) |
|
47 |
end |
|
48 |
end |
|
49 |
alias_method_chain :quote, :date_support |
|
50 |
end |
|
51 |
end |
lib/redcloth3.rb | ||
---|---|---|
388 | 388 |
(?!\-\-) |
389 | 389 |
#{rcq} |
390 | 390 |
(#{QTAGS_JOIN}|) # oqa |
391 |
(?=[[:punct:]]|\s|\)|$)/x |
|
391 |
(?=[[:punct:]]|<|\s|\)|$)/x
|
|
392 | 392 |
else |
393 | 393 |
/(#{rcq}) |
394 | 394 |
(#{C}) |
lib/redmine/scm/adapters/abstract_adapter.rb | ||
---|---|---|
190 | 190 |
begin |
191 | 191 |
IO.popen(cmd, "r+") do |io| |
192 | 192 |
io.close_write |
193 |
block.call(io) if block_given? |
|
193 |
if block_given? |
|
194 |
block.call(io) |
|
195 |
while(io.gets); end |
|
196 |
end |
|
194 | 197 |
end |
195 | 198 |
rescue Errno::ENOENT => e |
196 | 199 |
msg = strip_credential(e.message) |
lib/redmine/themes.rb | ||
---|---|---|
54 | 54 |
private |
55 | 55 |
|
56 | 56 |
def self.scan_themes |
57 |
dirs = Dir.glob("#{RAILS_ROOT}/public/themes/*").select do |f|
|
|
57 |
dirs = Dir.glob("#{Rails.public_path}/themes/*").select do |f|
|
|
58 | 58 |
# A theme should at least override application.css |
59 | 59 |
File.directory?(f) && File.exist?("#{f}/stylesheets/application.css") |
60 | 60 |
end |
lib/tasks/jdbc.rake | ||
---|---|---|
1 |
# This file was generated by the "jdbc" generator, which is provided |
|
2 |
# by the activerecord-jdbc-adapter gem. |
|
3 |
# |
|
4 |
# This file allows you to use Rails' various db:* tasks with JDBC. |
|
5 |
if defined?(JRUBY_VERSION) |
|
6 |
require 'jdbc_adapter' |
|
7 |
require 'jdbc_adapter/rake_tasks' |
|
8 |
end |
test/functional/timelog_controller_test.rb | ||
---|---|---|
89 | 89 |
t = TimeEntry.find_by_comments('Some work on TimelogControllerTest') |
90 | 90 |
assert_not_nil t |
91 | 91 |
assert_equal 11, t.activity_id |
92 |
assert_equal 7.3, t.hours
|
|
92 |
assert_equal '7.3', '%.1f' % t.hours
|
|
93 | 93 |
assert_equal 3, t.user_id |
94 | 94 |
assert_equal i, t.issue |
95 | 95 |
assert_equal i.project, t.project |
test/test_helper.rb | ||
---|---|---|
84 | 84 |
return nil |
85 | 85 |
end |
86 | 86 | |
87 |
def self.find_executable(name) |
|
88 |
ENV['PATH'].split(File::PATH_SEPARATOR).detect do |p| |
|
89 |
File.executable?(File.join(p, name)) |
|
90 |
end |
|
91 |
end |
|
92 | ||
87 | 93 |
# Shoulda macros |
88 | 94 |
def self.should_render_404 |
89 | 95 |
should_respond_with :not_found |
test/unit/changeset_test.rb | ||
---|---|---|
129 | 129 |
end |
130 | 130 |
|
131 | 131 |
def test_invalid_utf8_sequences_in_comments_should_be_stripped |
132 |
if defined?(JRUBY_VERSION) and # only in JRuby |
|
133 |
(!Gem::Version.correct?('1.5.0.RC1') or # following version check works only in Rubygems >= 1.3.6 - shipped with JRuby > 1.4.x |
|
134 |
Gem::Version.new(JRUBY_VERSION) < Gem::Version.new('1.5.0.RC1')) |
|
135 |
puts "JRuby's Iconv //IGNORE support is insufficient before 1.5.0.RC1" |
|
136 |
return |
|
137 |
end |
|
132 | 138 |
c = Changeset.new |
133 | 139 |
c.comments = File.read("#{RAILS_ROOT}/test/fixtures/encoding/iso-8859-1.txt") |
134 | 140 |
assert_equal "Texte encod en ISO-8859-1.", c.comments |
test/unit/lib/redmine/scm/adapters/subversion_adapter_test.rb | ||
---|---|---|
15 | 15 |
# along with this program; if not, write to the Free Software |
16 | 16 |
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
17 | 17 | |
18 |
require 'mkmf' |
|
19 | ||
20 | 18 |
require File.dirname(__FILE__) + '/../../../../../test_helper' |
21 | 19 | |
22 | 20 |
class SubversionAdapterTest < ActiveSupport::TestCase |
23 |
|
|
24 |
if find_executable0('svn') |
|
21 |
if find_executable('svn') |
|
25 | 22 |
def test_client_version |
26 | 23 |
v = Redmine::Scm::Adapters::SubversionAdapter.client_version |
27 | 24 |
assert v.is_a?(Array) |
vendor/plugins/engines/lib/engines.rb | ||
---|---|---|
48 | 48 |
# The name of the public directory to mirror public engine assets into. |
49 | 49 |
# Defaults to <tt>RAILS_ROOT/public/plugin_assets</tt>. |
50 | 50 |
mattr_accessor :public_directory |
51 |
self.public_directory = File.join(RAILS_ROOT, 'public', 'plugin_assets')
|
|
51 |
self.public_directory = File.join(Rails.public_path, 'plugin_assets')
|
|
52 | 52 | |
53 | 53 |
# The table in which to store plugin schema information. Defaults to |
54 | 54 |
# "plugin_schema_info". |