Class: ExpressCmd::Generator

Inherits:
Thor::Group
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/express_cmd/generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.source_rootObject



10
11
12
# File 'lib/express_cmd/generator.rb', line 10

def self.source_root
  File.join(File.dirname(__FILE__), "../../", "templates")
end

Instance Method Details

#bundle_installObject



57
58
59
60
61
# File 'lib/express_cmd/generator.rb', line 57

def bundle_install
  unless options[:skip_npm_install]
    system "cd #{app_name} && npm install && cd ../"
  end
end

#setup_appfileObject



49
50
51
52
53
54
55
# File 'lib/express_cmd/generator.rb', line 49

def setup_appfile
  copy_file ".gitignore", "#{app_name}/.gitignore"
  copy_file "Makefile", "#{app_name}/Makefile"
  copy_file "server.js", "#{app_name}/server.js"
  template "package.json.erb", "#{app_name}/package.json"
  template "README.md.erb", "#{app_name}/README.md"
end

#setup_configObject



20
21
22
23
24
# File 'lib/express_cmd/generator.rb', line 20

def setup_config
  keep_file "#{app_name}/config"
  copy_file "config/mongo.js", "#{app_name}/config/mongo.js"
  copy_file "config/mongo.yml", "#{app_name}/config/mongo.yml"
end

#setup_libObject



14
15
16
17
18
# File 'lib/express_cmd/generator.rb', line 14

def setup_lib
  keep_file "#{app_name}/lib"
  copy_file "lib/errors.js", "#{app_name}/lib/errors.js"
  copy_file "lib/logger.js", "#{app_name}/lib/logger.js"
end

#setup_middlewareObject



26
27
28
29
30
31
# File 'lib/express_cmd/generator.rb', line 26

def setup_middleware
  keep_file "#{app_name}/middlewares"
  copy_file "middlewares/before-filter.js", "#{app_name}/middlewares/before-filter.js"
  copy_file "middlewares/error-handler.js", "#{app_name}/middlewares/error-handler.js"
  copy_file "middlewares/morgan-log.js", "#{app_name}/middlewares/morgan-log.js"
end

#setup_routeObject



33
34
35
36
37
38
# File 'lib/express_cmd/generator.rb', line 33

def setup_route
  keep_file "#{app_name}/routes"
  copy_file "routes/instance.js", "#{app_name}/routes/instance.js"
  copy_file "routes/configuration.js", "#{app_name}/routes/configuration.js"
  copy_file "routes/translation.js", "#{app_name}/routes/translation.js"
end

#setup_testObject



40
41
42
43
44
45
46
47
# File 'lib/express_cmd/generator.rb', line 40

def setup_test
  keep_file "#{app_name}/test"
  keep_file "#{app_name}/test/reporter"
  keep_file "#{app_name}/test/units"

  copy_file "test/test-helper.js", "#{app_name}/test/test-helper.js"
  copy_file "test/units/demo_test.js", "#{app_name}/test/units/demo_test.js"
end