summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorBenoit Daloze <eregontp@gmail.com>2019-04-28 23:20:09 +0200
committerBenoit Daloze <eregontp@gmail.com>2019-04-28 23:20:09 +0200
commit994833085ae06afbe94d30ab183d80e0234fbe14 (patch)
tree4778d79395b0bfa7cccbec584e5755b3c5e97e66 /spec
parentbbb93608a385242da93bc5256a90a6376981d86f (diff)
Update to ruby/mspec@c25d63d
Diffstat (limited to 'spec')
-rw-r--r--spec/mspec/lib/mspec/helpers/io.rb32
-rw-r--r--spec/mspec/lib/mspec/utils/options.rb2
-rw-r--r--spec/mspec/spec/helpers/io_spec.rb42
3 files changed, 5 insertions, 71 deletions
diff --git a/spec/mspec/lib/mspec/helpers/io.rb b/spec/mspec/lib/mspec/helpers/io.rb
index 5361fb9564..f2c799dcab 100644
--- a/spec/mspec/lib/mspec/helpers/io.rb
+++ b/spec/mspec/lib/mspec/helpers/io.rb
@@ -65,8 +65,6 @@ end
# with any Ruby object). The file descriptor can safely be passed
# to IO.new without creating a Ruby object alias to the fd.
def new_fd(name, mode="w:utf-8")
- mode = options_or_mode(mode)
-
if mode.kind_of? Hash
if mode.key? :mode
mode = mode[:mode]
@@ -75,41 +73,15 @@ def new_fd(name, mode="w:utf-8")
end
end
- IO.sysopen name, fmode(mode)
+ IO.sysopen name, mode
end
# Creates an IO instance for a temporary file name. The file
# must be deleted.
def new_io(name, mode="w:utf-8")
- IO.new new_fd(name, options_or_mode(mode)), options_or_mode(mode)
+ IO.new new_fd(name, mode), mode
end
def find_unused_fd
Dir.entries("/dev/fd").map(&:to_i).max + 1
end
-
-# This helper simplifies passing file access modes regardless of
-# whether the :encoding feature is enabled. Only the access specifier
-# itself will be returned if :encoding is not enabled. Otherwise,
-# the full mode string will be returned (i.e. the helper is a no-op).
-def fmode(mode)
- if FeatureGuard.enabled? :encoding
- mode
- else
- mode.split(':').first
- end
-end
-
-# This helper simplifies passing file access modes or options regardless of
-# whether the :encoding feature is enabled. Only the access specifier itself
-# will be returned if :encoding is not enabled. Otherwise, the full mode
-# string or option will be returned (i.e. the helper is a no-op).
-def options_or_mode(oom)
- return fmode(oom) if oom.kind_of? String
-
- if FeatureGuard.enabled? :encoding
- oom
- else
- fmode(oom[:mode] || "r:utf-8")
- end
-end
diff --git a/spec/mspec/lib/mspec/utils/options.rb b/spec/mspec/lib/mspec/utils/options.rb
index 9f8dd01dbf..bbe64238c5 100644
--- a/spec/mspec/lib/mspec/utils/options.rb
+++ b/spec/mspec/lib/mspec/utils/options.rb
@@ -384,7 +384,7 @@ class MSpecOptions
def repeat
on("-R", "--repeat", "NUMBER",
"Repeatedly run an example NUMBER times") do |o|
- MSpec.repeat = o.to_i
+ MSpec.repeat = Integer(o)
end
end
diff --git a/spec/mspec/spec/helpers/io_spec.rb b/spec/mspec/spec/helpers/io_spec.rb
index 3219f59947..86e42097f8 100644
--- a/spec/mspec/spec/helpers/io_spec.rb
+++ b/spec/mspec/spec/helpers/io_spec.rb
@@ -64,7 +64,7 @@ describe Object, "#new_fd" do
fd = new_fd @name
fd.should be_kind_of(Integer)
- @io = IO.new fd, fmode('w:utf-8')
+ @io = IO.new fd, 'w:utf-8'
@io.sync = true
@io.print "io data"
@@ -76,7 +76,7 @@ describe Object, "#new_fd" do
fd = new_fd @name, { :mode => 'w:utf-8' }
fd.should be_kind_of(Integer)
- @io = IO.new fd, fmode('w:utf-8')
+ @io = IO.new fd, 'w:utf-8'
@io.sync = true
@io.print "io data"
@@ -134,41 +134,3 @@ describe Object, "#new_io" do
IO.read(@name).should == "io data"
end
end
-
-describe Object, "#fmode" do
- it "returns the argument unmodified if :encoding feature is enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).and_return(true)
- fmode("rb:binary:utf-8").should == "rb:binary:utf-8"
- end
-
- it "returns only the file access mode if :encoding feature is not enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).and_return(false)
- fmode("rb:binary:utf-8").should == "rb"
- end
-end
-
-describe Object, "#options_or_mode" do
- describe "if passed a Hash" do
- it "returns a mode string if :encoding feature is not enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).twice.and_return(false)
- options_or_mode(:mode => "rb:binary").should == "rb"
- end
-
- it "returns a Hash if :encoding feature is enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).and_return(true)
- options_or_mode(:mode => "rb:utf-8").should == { :mode => "rb:utf-8" }
- end
- end
-
- describe "if passed a String" do
- it "returns only the file access mode if :encoding feature is not enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).and_return(false)
- options_or_mode("rb:binary:utf-8").should == "rb"
- end
-
- it "returns the argument unmodified if :encoding feature is enabled" do
- FeatureGuard.should_receive(:enabled?).with(:encoding).and_return(true)
- options_or_mode("rb:binary:utf-8").should == "rb:binary:utf-8"
- end
- end
-end