crafti 0.0.15 → 0.0.16
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 +4 -4
- data/bin/crafti +4 -1
- data/lib/crafti/cli.rb +7 -1
- data/lib/crafti/version.rb +1 -1
- data/lib/crafti.rb +13 -5
- data/test/assets/app_template.rb +8 -0
- data/test/dsl_test.rb +17 -0
- metadata +6 -4
- data/test/assets/dsl_test.rb +0 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fcfd788057538060a82edf6c0e5f3f30ddfd4c1b
|
4
|
+
data.tar.gz: 92857272a5dadcc3ad4be05c5c5bc523ede00634
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2fed4deb18bb7032bdc8e390520cb1a9ca98bdb6b15c9de8b78d6e21a8f10c3471735f0bee31cb57df4be226bc1c1a1c6c848c5c88b22de5d78415d79bdd1e01
|
7
|
+
data.tar.gz: b83a950a1faa53111a3df39b8429a791a9085ab44c846b8f202cb38632e144002c7086649f1cfa5fe88c3bebf0b06ab09eb530e4e8e96ffa297a1ab0c613c7fc
|
data/bin/crafti
CHANGED
@@ -7,7 +7,7 @@ require 'crafti'
|
|
7
7
|
options = Crafti::CLI.parse(ARGV)
|
8
8
|
|
9
9
|
if options.event == "generate"
|
10
|
-
Crafti::FileReader.generate(options.template_path)
|
10
|
+
Crafti::FileReader.generate(options.template_path, options.name)
|
11
11
|
else
|
12
12
|
puts "That command is not supported."
|
13
13
|
exit
|
@@ -15,7 +15,10 @@ end
|
|
15
15
|
|
16
16
|
# require 'pathname'
|
17
17
|
# path = Pathname.new(options.template_path).expand_path
|
18
|
+
# puts "Options:\n"
|
19
|
+
# puts options.inspect
|
18
20
|
# puts "Values:\n"
|
19
21
|
# puts "path: #{path.to_s}"
|
22
|
+
# puts "Name: #{options.name}"
|
20
23
|
# puts "\nContent:\n#{path.read}"
|
21
24
|
|
data/lib/crafti/cli.rb
CHANGED
@@ -12,10 +12,16 @@ module Crafti
|
|
12
12
|
|
13
13
|
*** Crafti - Application Generation Simplified ***
|
14
14
|
|
15
|
-
Usage: crafti generate -m ~/path/to/template.rb
|
15
|
+
Usage: crafti generate -n appname -m ~/path/to/template.rb
|
16
|
+
|
16
17
|
TEXT
|
17
18
|
opts.separator ""
|
18
19
|
|
20
|
+
opts.on("-n", "--name NAME", "Name of the application you're creating. This overrides the name in the app template.") do |name|
|
21
|
+
name = nil if name.nil? || name == ''
|
22
|
+
options.name = name
|
23
|
+
end
|
24
|
+
|
19
25
|
opts.on("-t", "--template PATH", "Path to the application template") do |path|
|
20
26
|
options.template_path = path
|
21
27
|
end
|
data/lib/crafti/version.rb
CHANGED
data/lib/crafti.rb
CHANGED
@@ -86,20 +86,28 @@ module Crafti
|
|
86
86
|
end
|
87
87
|
end
|
88
88
|
|
89
|
+
module AppName
|
90
|
+
def self.name(appname = nil)
|
91
|
+
@name ||= appname
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
89
95
|
class FileReader
|
90
|
-
def self.generate(file)
|
91
|
-
app = new(file)
|
96
|
+
def self.generate(file, app_name = nil)
|
97
|
+
app = new(file, app_name)
|
92
98
|
app.evaluate
|
93
99
|
end
|
94
100
|
|
95
101
|
attr_reader :content
|
96
|
-
def initialize(file)
|
97
|
-
|
102
|
+
def initialize(file, app_name = nil)
|
103
|
+
::Crafti::AppName.name(app_name)
|
104
|
+
@content = ::Pathname.new(file.to_s).expand_path.read
|
98
105
|
end
|
99
106
|
|
100
107
|
def evaluate
|
101
108
|
klass = Class.new do
|
102
109
|
Kernel.extend(Crafti::KernelExtension)
|
110
|
+
Kernel.extend(Crafti::AppName)
|
103
111
|
def self.execute(string)
|
104
112
|
eval string
|
105
113
|
end
|
@@ -113,7 +121,7 @@ module Crafti
|
|
113
121
|
include FileUtilsExtension
|
114
122
|
|
115
123
|
def self.root(appname, &block)
|
116
|
-
app = new(appname)
|
124
|
+
app = new((::Crafti::AppName.name || appname))
|
117
125
|
app.create_root_directory
|
118
126
|
app.evaluate(&block) if block_given?
|
119
127
|
end
|
data/test/dsl_test.rb
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require_relative '../lib/crafti'
|
3
|
+
|
4
|
+
class DSLTest < Minitest::Test
|
5
|
+
def template_file
|
6
|
+
Pathname.new(__dir__).expand_path.join("assets/app_template.rb")
|
7
|
+
end
|
8
|
+
|
9
|
+
def test_file_evaluation
|
10
|
+
file = Crafti::FileReader.new(template_file)
|
11
|
+
file.evaluate
|
12
|
+
|
13
|
+
assert File.exists?("appname")
|
14
|
+
FileUtils.rm_rf("appname")
|
15
|
+
refute File.exists?("appname")
|
16
|
+
end
|
17
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: crafti
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.16
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Evans
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-01-
|
11
|
+
date: 2014-01-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,9 +72,10 @@ files:
|
|
72
72
|
- lib/crafti/project.rb
|
73
73
|
- lib/crafti/version.rb
|
74
74
|
- spike.rb
|
75
|
-
- test/assets/
|
75
|
+
- test/assets/app_template.rb
|
76
76
|
- test/assets/test_helper.rb.erb
|
77
77
|
- test/crafti_test.rb
|
78
|
+
- test/dsl_test.rb
|
78
79
|
- test/test_helper.rb
|
79
80
|
homepage: ''
|
80
81
|
licenses:
|
@@ -101,7 +102,8 @@ signing_key:
|
|
101
102
|
specification_version: 4
|
102
103
|
summary: Generate directories and files with/out templates.
|
103
104
|
test_files:
|
104
|
-
- test/assets/
|
105
|
+
- test/assets/app_template.rb
|
105
106
|
- test/assets/test_helper.rb.erb
|
106
107
|
- test/crafti_test.rb
|
108
|
+
- test/dsl_test.rb
|
107
109
|
- test/test_helper.rb
|
data/test/assets/dsl_test.rb
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
require 'test_helper'
|
2
|
-
require_relative '../../lib/crafti'
|
3
|
-
|
4
|
-
CONTENT = <<-RUBY
|
5
|
-
root "appname" do
|
6
|
-
mkdir "log"
|
7
|
-
mkdir "test"
|
8
|
-
mkdir "config"
|
9
|
-
touch "Rakefile"
|
10
|
-
touch "Guardfile"
|
11
|
-
touch "test/test_helper.rb"
|
12
|
-
end
|
13
|
-
RUBY
|
14
|
-
|
15
|
-
class DSLTest < Minitest::Test
|
16
|
-
def test_file_evaluation
|
17
|
-
file = Crafti::FileReader.new(CONTENT)
|
18
|
-
file.evaluate
|
19
|
-
|
20
|
-
assert File.exists?("appname")
|
21
|
-
FileUtils.rm_rf("appname")
|
22
|
-
refute File.exists?("appname")
|
23
|
-
end
|
24
|
-
end
|