custom_generators_n 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 69e910ee6b0ada24108773e24ea766e7e737e138
4
+ data.tar.gz: 869d3b4247360e0459aed84d45226b3698e79979
5
+ SHA512:
6
+ metadata.gz: 6c9bbb66ac945e08481c5725914294b30d3d56b0a857f7b7171f3af4b0729f24480f572b01679bad162bb05022208a9f66f56900e198ca0b4a2e8a3b0f32f8e9
7
+ data.tar.gz: afeeb31e9a708b05c226cb38d51f56169cd257f64bd6bc087c14e3671e348277c45e3bc60993a999f37bf4ac59d82848fe8c4014f784b087fb5ad8c65ba53528
@@ -0,0 +1,5 @@
1
+ class CustomGeneratorsN
2
+ def self.hi
3
+ puts "Hello world"
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ Description:
2
+ Explain the generator
3
+
4
+ Example:
5
+ rails generate service Thing
6
+
7
+ This will create:
8
+ what/will/it/create
@@ -0,0 +1,49 @@
1
+ require 'rails/generators/base'
2
+
3
+ class ServiceGenerator < Rails::Generators::Base
4
+ source_root File.expand_path('../templates', __FILE__)
5
+ argument :service_name, type: :string, desc: "Add your service class name"
6
+
7
+ def generate_layout
8
+ unless File.directory?("#{Rails.root}/app/services")
9
+ # directory "/app", 'service'
10
+ directory "#{Rails.root}/app/", "#{Rails.root}/app/services", recursive: false
11
+ end
12
+ create_file "app/services/#{file_name}.rb", service_class_template
13
+
14
+ # creates a test case directory
15
+ unless File.directory?("#{Rails.root}/test")
16
+ directory "#{Rails.root}/test/", 'services'
17
+ end
18
+
19
+ # creates a test file
20
+ create_file "test/services/#{file_name}_test.rb", service_class_test_template
21
+ end
22
+
23
+ private
24
+
25
+ def service_class_template
26
+ <<-FILE
27
+ class #{file_name.classify}
28
+ def call
29
+ end
30
+ end
31
+ FILE
32
+ end
33
+
34
+ def service_class_test_template
35
+ <<-FILE
36
+ require 'test_helper'
37
+
38
+ class #{file_name.classify}ServiceTest < ActiveSupport::TestCase
39
+ # test "the truth" do
40
+ # assert true
41
+ # end
42
+ end
43
+ FILE
44
+ end
45
+
46
+ def file_name
47
+ service_name.underscore
48
+ end
49
+ end
@@ -0,0 +1,2 @@
1
+ class file_name.classify
2
+ end
metadata ADDED
@@ -0,0 +1,48 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: custom_generators_n
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - NishantUpadhyay
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-07-28 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A simple custom Rails generator
14
+ email: nishantupadhyay@botreeconsulting.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/custom_generators_n.rb
20
+ - lib/generators/service/USAGE
21
+ - lib/generators/service/service_generator.rb
22
+ - lib/generators/service/templates/service_layout.rb
23
+ homepage: http://rubygems.org/gems/custom_generators_n
24
+ licenses:
25
+ - MIT
26
+ metadata: {}
27
+ post_install_message:
28
+ rdoc_options: []
29
+ require_paths:
30
+ - lib
31
+ required_ruby_version: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: '0'
36
+ required_rubygems_version: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ requirements: []
42
+ rubyforge_project:
43
+ rubygems_version: 2.4.8
44
+ signing_key:
45
+ specification_version: 4
46
+ summary: A custom generator to follow service pattern. It will create service related
47
+ files for you
48
+ test_files: []