Skip to content

Commit

Permalink
Flesh out Image#clone (#1251)
Browse files Browse the repository at this point in the history
  • Loading branch information
Le1gh committed Dec 9, 2020
1 parent fcb32c2 commit 0fdbd8c
Showing 1 changed file with 22 additions and 9 deletions.
31 changes: 22 additions & 9 deletions spec/rmagick/image/clone_spec.rb
@@ -1,15 +1,28 @@
RSpec.describe Magick::Image, "#clone" do
it "works" do
image = described_class.new(20, 20)
it "returns a new copy of the image" do
image = build_image

result = image.clone
expect(result).to be_instance_of(described_class)
expect(image).to eq(result)
new_image = image.clone

expect(new_image).to eq(image)
expect(new_image).not_to be(image)
expect(new_image.export_pixels).to eq(image.export_pixels)
end

it "returns a non-frozen copy of the image when it is not frozen" do
image = build_image

new_image = image.clone

expect(new_image.frozen?).to be(false)
end

it "returns a frozen copy of the image when it is frozen" do
image = build_image

result = image.clone
expect(image.frozen?).to eq(result.frozen?)
image.freeze
result = image.clone
expect(image.frozen?).to eq(result.frozen?)
new_image = image.clone

expect(new_image.frozen?).to be(true)
end
end

0 comments on commit 0fdbd8c

Please sign in to comment.