test/hexapdf/test_revision.rb in hexapdf-0.8.0 vs test/hexapdf/test_revision.rb in hexapdf-0.9.0
- old
+ new
@@ -123,17 +123,30 @@
@rev.add(@obj)
obj2 = @rev.object(2)
obj3 = @rev.object(3)
assert_equal([@obj, obj2, obj3], @rev.each.to_a)
end
+
+ it "iterates only over loaded objects" do
+ obj = @rev.object(2)
+ assert_equal([obj], @rev.each(only_loaded: true).to_a)
+ end
end
it "works without a cross-reference section" do
rev = HexaPDF::Revision.new({})
rev.add(@obj)
assert_equal(@obj, rev.object(@ref))
assert(rev.object?(@ref))
assert_equal([@obj], rev.each.to_a)
rev.delete(@ref, mark_as_free: false)
refute(rev.object?(@ref))
+ end
+
+ it "can iterate over all modified objects" do
+ obj = @rev.object(2)
+ assert_equal([], @rev.each_modified_object.to_a)
+ obj.value = :Other
+ @rev.add(@obj)
+ assert_equal([obj, @obj], @rev.each_modified_object.to_a)
end
end