aboutsummaryrefslogtreecommitdiffstats
path: root/spec/ruby/library/readline/readline_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library/readline/readline_spec.rb')
-rw-r--r--spec/ruby/library/readline/readline_spec.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/ruby/library/readline/readline_spec.rb b/spec/ruby/library/readline/readline_spec.rb
new file mode 100644
index 0000000000..599f84dffd
--- /dev/null
+++ b/spec/ruby/library/readline/readline_spec.rb
@@ -0,0 +1,31 @@
+require File.expand_path('../spec_helper', __FILE__)
+
+with_feature :readline do
+ describe "Readline.readline" do
+ before :each do
+ @file = tmp('readline')
+ @out = tmp('out.txt')
+ touch(@file) { |f|
+ f.puts "test"
+ }
+ @options = { options: "-rreadline", args: [@out, "< #{@file}"] }
+ end
+
+ after :each do
+ rm_r @file, @out
+ end
+
+ # Somehow those specs block on Windows
+ platform_is_not :windows do
+ it "returns the input string" do
+ ruby_exe('File.write ARGV[0], Readline.readline', @options)
+ File.read(@out).should == "test"
+ end
+
+ it "taints the returned strings" do
+ ruby_exe('File.write ARGV[0], Readline.readline.tainted?', @options)
+ File.read(@out).should == "true"
+ end
+ end
+ end
+end