2010-03-20 23:13:25 -07:00
|
|
|
require 'testing_env'
|
2012-01-01 23:58:15 -06:00
|
|
|
require 'hardware'
|
2012-06-20 00:51:01 -05:00
|
|
|
|
2010-03-20 23:13:25 -07:00
|
|
|
class EnvironmentTests < Test::Unit::TestCase
|
|
|
|
def test_ENV_options
|
|
|
|
ENV.gcc_4_0
|
2012-03-08 00:59:11 -08:00
|
|
|
begin
|
|
|
|
ENV.gcc_4_2
|
|
|
|
rescue RuntimeError => e
|
|
|
|
if `sw_vers -productVersion` =~ /10\.(\d+)/ and $1.to_i < 7
|
|
|
|
raise e
|
|
|
|
end
|
|
|
|
end
|
2010-03-20 23:13:25 -07:00
|
|
|
ENV.O3
|
|
|
|
ENV.minimal_optimization
|
|
|
|
ENV.no_optimization
|
|
|
|
ENV.libxml2
|
|
|
|
ENV.enable_warnings
|
|
|
|
assert !ENV.cc.empty?
|
|
|
|
assert !ENV.cxx.empty?
|
|
|
|
end
|
2012-03-21 12:01:19 -05:00
|
|
|
|
|
|
|
def test_switching_compilers
|
|
|
|
ENV.llvm
|
|
|
|
ENV.clang
|
2012-09-27 16:23:24 -05:00
|
|
|
assert_nil ENV['LD']
|
2012-03-21 12:01:19 -05:00
|
|
|
assert_equal ENV['OBJC'], ENV['CC']
|
|
|
|
end
|
2013-01-19 20:45:57 -06:00
|
|
|
|
|
|
|
def test_with_build_environment
|
|
|
|
before = ENV.to_hash
|
|
|
|
ENV.with_build_environment do
|
|
|
|
ENV['foo'] = 'bar'
|
|
|
|
end
|
|
|
|
assert_nil ENV['foo']
|
|
|
|
assert_equal before, ENV.to_hash
|
|
|
|
end
|
2010-03-20 23:13:25 -07:00
|
|
|
end
|