Skip to content

Commit 909ecd6

Browse files
authored
Merge pull request #1061 from sul-dlss/do-not-compact-bool
Do not compact away false values
2 parents f9e1fa1 + 590dfaf commit 909ecd6

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

app/services/versioned_files_service/metadata.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ def self.deep_compact_blank(node)
2626
when Array
2727
compacted_array = value.map { |v| deep_compact_blank(v) }.compact_blank
2828
output[key] = compacted_array unless compacted_array.empty?
29+
when TrueClass, FalseClass
30+
output[key] = value
2931
else
3032
output[key] = value if value.present?
3133
end
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# frozen_string_literal: true
2+
3+
require 'rails_helper'
4+
5+
RSpec.describe VersionedFilesService::Metadata do
6+
describe '.deep_compact_blank' do
7+
subject { described_class.deep_compact_blank(input) }
8+
9+
context 'with false values' do
10+
let(:input) do
11+
{
12+
administrative: {
13+
publish: true,
14+
sdrPreserve: false,
15+
shelve: true
16+
}
17+
}
18+
end
19+
20+
it { is_expected.to eq(input) }
21+
end
22+
end
23+
end

0 commit comments

Comments
 (0)