rubyspec / rubyspec

Executable specification for the Ruby programming language using RSpec syntax.

This URL has Read+Write access

commit  91f73c887706cd54e0b6f15c9e3b999b72f01a92
tree    a33fd15921e1aaf8cb355ce6608d2fba213fcc74
parent  24d5364722f2b69ba411f325e0a92c5136886b6a
rubyspec / spec_helper.rb
100644 58 lines (53 sloc) 1.948 kb
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
unless ENV['MSPEC_RUNNER']
  begin
    require "pp"
    require 'mspec/version'
    require 'mspec/helpers'
    require 'mspec/guards'
    require 'mspec/runner/shared'
    require 'mspec/matchers/be_ancestor_of'
    require 'mspec/matchers/output'
    require 'mspec/matchers/output_to_fd'
    require 'mspec/matchers/complain'
    require 'mspec/matchers/equal_element'
    require 'mspec/matchers/equal_utf16'
    require 'mspec/matchers/match_yaml'
    require 'mspec/matchers/have_class_variable'
    require 'mspec/matchers/have_constant'
    require 'mspec/matchers/have_instance_method'
    require 'mspec/matchers/have_instance_variable'
    require 'mspec/matchers/have_method'
    require 'mspec/matchers/have_private_instance_method'
    require 'mspec/matchers/have_protected_instance_method'
    require 'mspec/matchers/have_public_instance_method'
 
    # Code to setup HOME directory correctly on Windows
    # This duplicates Ruby 1.9 semantics for defining HOME
    platform_is :windows do
      if ENV['HOME']
        ENV['HOME'] = ENV['HOME'].tr '\\', '/'
      elsif ENV['HOMEDIR'] && ENV['HOMEDRIVE']
        ENV['HOME'] = File.join(ENV['HOMEDRIVE'], ENV['HOMEDIR'])
      elsif ENV['HOMEDIR']
        ENV['HOME'] = ENV['HOMEDIR']
      elsif ENV['HOMEDRIVE']
        ENV['HOME'] = ENV['HOMEDRIVE']
      elsif ENV['USERPROFILE']
        ENV['HOME'] = ENV['USERPROFILE']
      else
        puts "No suitable HOME environment found. This means that all of"
        puts "HOME, HOMEDIR, HOMEDRIVE, and USERPROFILE are not set"
        exit 1
      end
    end
 
    TOLERANCE = 0.00003 unless Object.const_defined?(:TOLERANCE)
  rescue LoadError
    puts "Please install the MSpec gem to run the specs."
    exit 1
  end
end
 
minimum_version = "1.5.12"
unless MSpec::VERSION >= minimum_version
  puts "Please install MSpec version >= #{minimum_version} to run the specs"
  exit 1
end
 
$VERBOSE = nil unless ENV['OUTPUT_WARNINGS']