mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	* Other ruby implementations use the spec/ruby directory. [Misc #13792] [ruby-core:82287] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
require File.expand_path('../../../spec_helper', __FILE__)
 | 
						|
require 'getoptlong'
 | 
						|
 | 
						|
describe "GetoptLong#ordering=" do
 | 
						|
  it "raises an ArgumentError if called after processing has started" do
 | 
						|
    argv [ "--size", "10k", "--verbose" ] do
 | 
						|
      opts = GetoptLong.new([ '--size', GetoptLong::REQUIRED_ARGUMENT ],
 | 
						|
        [ '--verbose', GetoptLong::NO_ARGUMENT ])
 | 
						|
      opts.quiet = true
 | 
						|
      opts.get
 | 
						|
 | 
						|
      lambda {
 | 
						|
        opts.ordering = GetoptLong::PERMUTE
 | 
						|
      }.should raise_error(ArgumentError)
 | 
						|
    end
 | 
						|
  end
 | 
						|
 | 
						|
  it "raises an ArgumentError if given an invalid value" do
 | 
						|
    opts = GetoptLong.new
 | 
						|
 | 
						|
    lambda {
 | 
						|
      opts.ordering = 12345
 | 
						|
    }.should raise_error(ArgumentError)
 | 
						|
  end
 | 
						|
 | 
						|
  it "does not allow changing ordering to PERMUTE if ENV['POSIXLY_CORRECT'] is set" do
 | 
						|
    begin
 | 
						|
      old_env_value = ENV['POSIXLY_CORRECT']
 | 
						|
      ENV['POSIXLY_CORRECT'] = ""
 | 
						|
 | 
						|
      opts = GetoptLong.new
 | 
						|
      opts.ordering = GetoptLong::PERMUTE
 | 
						|
      opts.ordering.should == GetoptLong::REQUIRE_ORDER
 | 
						|
    ensure
 | 
						|
      ENV['POSIXLY_CORRECT'] = old_env_value
 | 
						|
    end
 | 
						|
  end
 | 
						|
end
 |