summaryrefslogtreecommitdiff
path: root/spec/ruby/command_line/dash_l_spec.rb
blob: 5c1d3cf4cd9d09432a0cc888c7740561831233e1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
require_relative '../spec_helper'

describe "The -l command line option" do
  before :each do
    @names  = fixture __FILE__, "full_names.txt"
  end

  it "chomps lines with default separator" do
    ruby_exe('puts $_.end_with?("\n")', options: "-n -l", escape: true,
             args: " < #{@names}").should ==
        "false\nfalse\nfalse\n"
  end

  it "chomps last line based on $/" do
    ruby_exe('BEGIN { $/ = "ones\n" }; puts $_', options: "-W0 -n -l", escape: true,
             args: " < #{@names}").should ==
        "alice j\nbob field\njames grey\n"
  end

  it "sets $\\ to the value of $/" do
    ruby_exe("puts $\\ == $/", options: "-W0 -n -l", escape: true,
             args: " < #{@names}").should ==
        "true\ntrue\ntrue\n"
  end

  it "sets $-l" do
    ruby_exe("puts $-l", options: "-n -l", escape: true,
                         args: " < #{@names}").should ==
      "true\ntrue\ntrue\n"
  end
end