Class: TestGen::Generators::Project

Inherits:
Thor::Group
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/testgen/generators/project.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



15
16
17
# File 'lib/testgen/generators/project.rb', line 15

def self.source_root
  File.dirname(__FILE__) + "/project"
end

Instance Method Details

#copy_cucumber_ymlObject



23
24
25
# File 'lib/testgen/generators/project.rb', line 23

def copy_cucumber_yml
  template "cucumber.yml.tt", "#{name}/cucumber.yml"
end

#copy_envObject



41
42
43
# File 'lib/testgen/generators/project.rb', line 41

def copy_env
  template "env.rb.tt", "#{name}/features/support/env.rb"
end

#copy_gemfileObject



27
28
29
# File 'lib/testgen/generators/project.rb', line 27

def copy_gemfile
  template "Gemfile.tt", "#{name}/Gemfile"
end

#copy_hooksObject



45
46
47
# File 'lib/testgen/generators/project.rb', line 45

def copy_hooks
  template "hooks.rb.tt", "#{name}/features/support/hooks.rb" if gen_pageobject
end

#copy_rakefileObject



31
32
33
# File 'lib/testgen/generators/project.rb', line 31

def copy_rakefile
  copy_file "Rakefile", "#{name}/Rakefile"
end

#create_cucumber_directoriesObject



35
36
37
38
39
# File 'lib/testgen/generators/project.rb', line 35

def create_cucumber_directories
  empty_directory("#{name}/features")
  empty_directory("#{name}/features/support")
  empty_directory("#{name}/features/step_definitions")
end

#create_lib_directoryObject



49
50
51
# File 'lib/testgen/generators/project.rb', line 49

def create_lib_directory
  empty_directory("#{name}/lib") if gen_lib
end

#create_pages_directoryObject



53
54
55
56
57
58
59
60
61
# File 'lib/testgen/generators/project.rb', line 53

def create_pages_directory
  if gen_lib
    empty_directory("#{name}/lib/pages") if gen_pageobject
    empty_directory("#{name}/lib/screens") unless gen_pageobject
  else
    empty_directory("#{name}/features/support/pages") if gen_pageobject
    empty_directory("#{name}/features/support/screens") unless gen_pageobject
  end
end

#create_top_directoryObject



19
20
21
# File 'lib/testgen/generators/project.rb', line 19

def create_top_directory
  empty_directory(name)
end