1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
require File.expand_path('../teststrap', __FILE__)
context 'Rabl::Configuration' do
context 'defaults' do
# multi_json compatibility TODO
helper(:json_engine) { ::Oj }
setup { Rabl.configuration }
asserts(:include_json_root).equals true
asserts(:include_child_root).equals true
asserts(:include_xml_root).equals false
asserts(:enable_json_callbacks).equals false
asserts(:view_paths).equals []
asserts(:json_engine).equals { json_engine }
asserts(:cache_engine).is_a?(Rabl::CacheEngine)
asserts(:replace_nil_values_with_empty_strings).equals false
asserts(:replace_empty_string_values_with_nil_values).equals false
asserts(:exclude_nil_values).equals false
asserts(:exclude_empty_values_in_collections).equals false
end
context 'custom JSON engine configured as Symbol' do
setup do
Rabl.configure do |c|
c.json_engine = :oj
end
end
asserts('uses a custom JSON engine') { topic.json_engine.to_s =~ /oj/i }
end # custom json, symbol
context 'custom JSON engine configured as Class' do
setup do
Rabl.configure do |c|
c.json_engine = ActiveSupport::JSON
end
end
asserts('uses a custom JSON engine') { topic.json_engine.to_s == 'ActiveSupport::JSON' }
end # custom JSON, class
context 'raise on missing attributes' do
setup do
Rabl.configure do |c|
c.raise_on_missing_attribute = true
end
end
asserts(:raise_on_missing_attribute).equals true
end # raise on missing
context 'replace nil values with empty strings' do
setup do
Rabl.configure do |c|
c.replace_nil_values_with_empty_strings = true
end
end
asserts(:replace_nil_values_with_empty_strings).equals true
end # replace nil values with empty strings
context 'replace empty string values with nil values' do
setup do
Rabl.configure do |c|
c.replace_empty_string_values_with_nil_values = true
end
end
asserts(:replace_empty_string_values_with_nil_values).equals true
end # replace empty string values with nil values
context 'exclude nil values' do
setup do
Rabl.configure do |c|
c.exclude_nil_values = true
end
end
asserts(:exclude_nil_values).equals true
end # exclude nil values
context 'exclude empty values in collections' do
setup do
Rabl.configure do |c|
c.exclude_empty_values_in_collections = true
end
end
asserts(:exclude_empty_values_in_collections).equals true
end # exclude empty values in collections
end
|