Class: Yamatanooroti

Inherits:
Object
  • Object
show all
Defined in:
lib/yamatanooroti.rb,
lib/yamatanooroti/version.rb

Defined Under Namespace

Modules: VTermTestCaseModule, WindowsDefinition, WindowsTestCaseModule Classes: TestCase, VTermTestCase, WindowsTestCase

Constant Summary collapse

VERSION =
'0.0.6'

Class Method Summary collapse

Class Method Details

.const_missing(id) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/yamatanooroti.rb', line 18

def self.const_missing(id)
  case id
  when :VTermTestCase
    load_vterm
    Yamatanooroti::VTermTestCase
  when :VTermTestCaseModule
    load_vterm
    Yamatanooroti::VTermTestCaseModule
  when :WindowsTestCase
    load_windows
    Yamatanooroti::WindowsTestCase
  when :WindowsTestCaseModule
    load_windows
    Yamatanooroti::WindowsTestCaseModule
  else
    raise StandardError.new("Unknown class #{id.to_s}")
  end
end

.has_vterm_gem?Boolean

Returns:

  • (Boolean)


41
42
43
44
45
46
47
48
49
# File 'lib/yamatanooroti.rb', line 41

def self.has_vterm_gem?
  begin
    require 'vterm'
  rescue LoadError
    false
  else
    true
  end
end

.load_vtermObject



4
5
6
7
8
9
# File 'lib/yamatanooroti.rb', line 4

def self.load_vterm
  require 'vterm'
  require 'yamatanooroti/vterm'
rescue LoadError
  raise LoadError.new('You need vterm gem for Yamatanooroti::VTermTestCase')
end

.load_windowsObject



11
12
13
14
15
16
# File 'lib/yamatanooroti.rb', line 11

def self.load_windows
  unless win?
    raise LoadError.new('You need Windows environment for Yamatanooroti::WindowsTestCase')
  end
  require 'yamatanooroti/windows'
end

.win?Boolean

Returns:

  • (Boolean)


37
38
39
# File 'lib/yamatanooroti.rb', line 37

def self.win?
  RbConfig::CONFIG['host_os'].match?(/mswin|msys|mingw|cygwin|bccwin|wince|emc/)
end