summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/redmine/views/builders/structure.rb2
-rw-r--r--test/unit/lib/redmine/views/builders/json_test.rb9
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/redmine/views/builders/structure.rb b/lib/redmine/views/builders/structure.rb
index 03f73c649..420190fc9 100644
--- a/lib/redmine/views/builders/structure.rb
+++ b/lib/redmine/views/builders/structure.rb
@@ -48,7 +48,7 @@ module Redmine
end
def method_missing(sym, *args, &block)
- if args.any?
+ if args.count > 0
if args.first.is_a?(Hash)
if @struct.last.is_a?(Array)
@struct.last << args.first unless block
diff --git a/test/unit/lib/redmine/views/builders/json_test.rb b/test/unit/lib/redmine/views/builders/json_test.rb
index 0cb75c98b..13381e3aa 100644
--- a/test/unit/lib/redmine/views/builders/json_test.rb
+++ b/test/unit/lib/redmine/views/builders/json_test.rb
@@ -18,6 +18,15 @@
require File.expand_path('../../../../../../test_helper', __FILE__)
class Redmine::Views::Builders::JsonTest < ActiveSupport::TestCase
+ def test_nil_and_false
+ assert_json_output({'value' => nil}) do |b|
+ b.value nil
+ end
+
+ assert_json_output({'value' => false}) do |b|
+ b.value false
+ end
+ end
def test_hash
assert_json_output({'person' => {'name' => 'Ryan', 'age' => 32}}) do |b|