summaryrefslogtreecommitdiff
path: root/spec/ruby/core/io/buffer/mapped_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/core/io/buffer/mapped_spec.rb')
-rw-r--r--spec/ruby/core/io/buffer/mapped_spec.rb103
1 files changed, 9 insertions, 94 deletions
diff --git a/spec/ruby/core/io/buffer/mapped_spec.rb b/spec/ruby/core/io/buffer/mapped_spec.rb
index b3610207ff..13dc548ed2 100644
--- a/spec/ruby/core/io/buffer/mapped_spec.rb
+++ b/spec/ruby/core/io/buffer/mapped_spec.rb
@@ -6,103 +6,18 @@ describe "IO::Buffer#mapped?" do
@buffer = nil
end
- context "with a buffer created with .new" do
- it "is false for an internal buffer" do
- @buffer = IO::Buffer.new(4)
- @buffer.mapped?.should be_false
- end
-
- it "is true for a mapped buffer" do
- @buffer = IO::Buffer.new(4, IO::Buffer::MAPPED)
- @buffer.mapped?.should be_true
- end
- end
-
- context "with a file-backed buffer created with .map" do
- it "is true for a regular mapping" do
- File.open(__FILE__, "r") do |file|
- @buffer = IO::Buffer.map(file, nil, 0, IO::Buffer::READONLY)
- @buffer.mapped?.should be_true
- end
- end
-
- ruby_version_is "3.3" do
- it "is true for a private mapping" do
- File.open(__FILE__, "r") do |file|
- @buffer = IO::Buffer.map(file, nil, 0, IO::Buffer::READONLY | IO::Buffer::PRIVATE)
- @buffer.mapped?.should be_true
- end
- end
- end
- end
-
- context "with a String-backed buffer created with .for" do
- it "is false for a buffer created without a block" do
- @buffer = IO::Buffer.for("test")
- @buffer.mapped?.should be_false
- end
-
- it "is false for a buffer created with a block" do
- IO::Buffer.for(+"test") do |buffer|
- buffer.mapped?.should be_false
- end
- end
+ it "is true for a buffer with mapped memory" do
+ @buffer = IO::Buffer.new(12, IO::Buffer::MAPPED)
+ @buffer.mapped?.should be_true
end
- ruby_version_is "3.3" do
- context "with a String-backed buffer created with .string" do
- it "is false" do
- IO::Buffer.string(4) do |buffer|
- buffer.mapped?.should be_false
- end
- end
- end
+ it "is false for a buffer with non-mapped memory" do
+ @buffer = IO::Buffer.for("string")
+ @buffer.mapped?.should be_false
end
- # Always false for slices
- context "with a slice of a buffer" do
- context "created with .new" do
- it "is false when slicing an internal buffer" do
- @buffer = IO::Buffer.new(4)
- @buffer.slice.mapped?.should be_false
- end
-
- it "is false when slicing a mapped buffer" do
- @buffer = IO::Buffer.new(4, IO::Buffer::MAPPED)
- @buffer.slice.mapped?.should be_false
- end
- end
-
- context "created with .map" do
- it "is false" do
- File.open(__FILE__, "r") do |file|
- @buffer = IO::Buffer.map(file, nil, 0, IO::Buffer::READONLY)
- @buffer.slice.mapped?.should be_false
- end
- end
- end
-
- context "created with .for" do
- it "is false when slicing a buffer created without a block" do
- @buffer = IO::Buffer.for("test")
- @buffer.slice.mapped?.should be_false
- end
-
- it "is false when slicing a buffer created with a block" do
- IO::Buffer.for(+"test") do |buffer|
- buffer.slice.mapped?.should be_false
- end
- end
- end
-
- ruby_version_is "3.3" do
- context "created with .string" do
- it "is false" do
- IO::Buffer.string(4) do |buffer|
- buffer.slice.mapped?.should be_false
- end
- end
- end
- end
+ it "is false for a null buffer" do
+ @buffer = IO::Buffer.new(0)
+ @buffer.mapped?.should be_false
end
end