skelet 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 16c845744c58205b1355acd43c153e6e40482329
4
- data.tar.gz: c386ab82d0f63b929b8b9b0ecd8d91eee614f281
3
+ metadata.gz: 9fc3f916a6bf3a327041e72da6bdba26eb60e61d
4
+ data.tar.gz: 86392534c0dfa92c5c0935e404e9c29aae67fb98
5
5
  SHA512:
6
- metadata.gz: 1ce9fbfcde91cda6cf12d2f685ea9bcaac77dbbc69873f1baa371fd886f436b8cffee498c4048d018f072a73b62abdd57321e9c194aafbe91434bed2245d6628
7
- data.tar.gz: 347f363f6c0beb39ef913480d74956c90b94c7298ad64e1b88ac1f42b483bc2238d3625fa9c91b1dcae1abb7a199dcd403cc49e7410dc52baf41b44fe397a1a9
6
+ metadata.gz: 97f91fc9f15815fb4e1f4d9d1f72fa3af910b82ca760eecf976204a388bb8fb2b8aa070f8575bad0bb3b5a65180a0ae14bd9ef39b9ae0480330092160ba9660c
7
+ data.tar.gz: b67c6171906726baffbe31fc5631553b60a29370ce309bd6784697bae4ff672ff40b04c87592cbb2bad4746d6e322146eec4718be5e81fd134e3d5a14407331d
data/README.md ADDED
@@ -0,0 +1,20 @@
1
+ Create an application skeleton - files included - with one command.
2
+
3
+
4
+ Example:
5
+ >> skelet myapp
6
+ creates the following skeleton
7
+
8
+ myapp
9
+ ├── bin
10
+ │ └── skelet
11
+ ├── lib
12
+ │ └── myapp
13
+ │ │ └── version.rb
14
+ │ └── myapp.rb
15
+ ├── test
16
+ │ └── test_myapp.rb
17
+ └── myapp.gemspec
18
+
19
+ The files within are already filled with some basic information allowing to speed up creation.
20
+ For now it assumes using git and minitest.
data/bin/skelet CHANGED
@@ -1,5 +1,26 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require_relative '../lib/skelet'
4
-
5
- Skelet::Application.new(ARGV[0]).create_skeleton
3
+ #Create an application skeleton - files included - with one command.
4
+ #
5
+ #
6
+ #Example:
7
+ # >> skelet myapp
8
+ #creates the following skeleton
9
+ #
10
+ #myapp
11
+ #├── bin
12
+ #│ └── skelet
13
+ #├── lib
14
+ #│ └── myapp
15
+ #│ │ └── version.rb
16
+ #│ └── myapp.rb
17
+ #├── test
18
+ #│ └── test_myapp.rb
19
+ #└── myapp.gemspec
20
+ #
21
+ #The files within are already filled with some basic information allowing to speed up creation.
22
+ #For now it assumes using git and minitest.
23
+ #
24
+ $:.push File.expand_path("../../lib", __FILE__)
25
+ require 'skelet'
26
+ Skelet::Application.new(ARGV[0]).create_skeleton
data/lib/skelet.rb CHANGED
@@ -1,16 +1,17 @@
1
1
  require_relative 'skelet/files'
2
-
3
2
  include Skelet
4
3
 
5
4
  module Skelet
5
+ #main Skelet engine
6
+
6
7
  class Application
7
- PERM = 'w+'
8
+ PERM = 'w+'
8
9
  attr_reader :name
9
-
10
+
10
11
  def initialize(name)
11
12
  @name=name
12
13
  end
13
-
14
+
14
15
  def create_skeleton
15
16
  Dir.mkdir(@name)
16
17
  Dir.chdir(@name) do
@@ -23,8 +24,8 @@ module Skelet
23
24
  Dir.chdir("lib") { File.open("#{@name}.rb", PERM) {|f| f << Skelet::main(@name)} }
24
25
  Dir.chdir("lib/#{@name}") { File.open("version.rb", PERM) {|f| f << Skelet::version(@name) } }
25
26
  end
26
- rescue
27
- puts "#{@name} already exists. Please pick another name or directory."
27
+ rescue
28
+ puts "#{@name} already exists. Please pick another name or directory."
28
29
  end
29
30
  end
30
31
  end
data/lib/skelet/files.rb CHANGED
@@ -2,10 +2,10 @@ module Skelet
2
2
 
3
3
 
4
4
  def gemspec(skelet_name)
5
-
5
+
6
6
  user_name = `git config user.name`.chomp rescue "TODO"
7
7
  user_email = `git config user.email`.chomp rescue "TODO"
8
-
8
+
9
9
  gemspec_content= <<EOF
10
10
  #-*- encoding utf-8 -*-
11
11
  $:.push File.expand_path("../lib", __FILE__)
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.homepage = "TODO"
21
21
  s.summary = "TODO"
22
22
  s.description = "TODO"
23
-
23
+
24
24
  s.files = `git ls-files`.split("\\n")
25
25
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\\n")
26
26
  s.executables = `git ls-files -- bin/*`.split("\\n").map { |f| File.basename(f)}
@@ -29,10 +29,10 @@ end
29
29
  EOF
30
30
  return gemspec_content
31
31
  end
32
-
33
-
34
-
35
-
32
+
33
+
34
+
35
+
36
36
  def version(skelet_name)
37
37
  version_content = <<EOF
38
38
  module #{skelet_name.capitalize}
@@ -40,21 +40,21 @@ module #{skelet_name.capitalize}
40
40
  end
41
41
  EOF
42
42
  return version_content
43
- end
44
-
45
-
46
-
47
-
43
+ end
44
+
45
+
46
+
47
+
48
48
  def bin(skelet_name)
49
49
  bin_content = <<EOF
50
50
  #!/usr/bin/env ruby
51
51
 
52
- require '../lib/#{skelet_name}'
52
+ require '#{skelet_name}'
53
53
  EOF
54
54
  return bin_content
55
55
  end
56
-
57
-
56
+
57
+
58
58
  def test(skelet_name)
59
59
  test_content = <<EOF
60
60
  require 'minitest/autorun'
@@ -64,15 +64,15 @@ include #{skelet_name.capitalize}
64
64
  class Test#{skelet_name.capitalize} < Minitest::Test
65
65
  def setup
66
66
  end
67
-
67
+
68
68
  def teardown
69
69
  end
70
70
  end
71
71
  EOF
72
72
  return test_content
73
73
  end
74
-
75
-
74
+
75
+
76
76
  def main(skelet_name)
77
77
  main_content = <<EOF
78
78
  module #{skelet_name.capitalize}
@@ -80,4 +80,4 @@ end
80
80
  EOF
81
81
  return main_content
82
82
  end
83
- end
83
+ end
@@ -1,3 +1,3 @@
1
1
  module Skelet
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
data/test/test_skelet.rb CHANGED
@@ -1,24 +1,23 @@
1
1
  require 'minitest/autorun'
2
2
  require 'fileutils'
3
3
  require_relative '../lib/skelet'
4
-
5
4
  include Skelet
6
5
 
7
6
  class TestSkelet < Minitest::Test
8
7
  def setup
9
8
  @skelet=Skelet::Application.new("new_gem")
9
+ @skelet.create_skeleton
10
10
  end
11
-
11
+
12
12
  def test_name()
13
13
  assert_equal "new_gem", @skelet.name
14
14
  assert_respond_to @skelet, :name
15
15
  refute_respond_to @skelet, :name=
16
16
  end
17
-
17
+
18
18
  def test_created_skeleton_tree()
19
- @skelet.create_skeleton
20
19
  assert_equal true, Dir.exist?(@skelet.name)
21
-
20
+
22
21
  Dir.chdir(@skelet.name) do
23
22
  assert_equal true, File.exist?("#{@skelet.name}.gemspec")
24
23
  entries = []
@@ -41,8 +40,8 @@ class TestSkelet < Minitest::Test
41
40
  end
42
41
  end
43
42
  end
44
-
43
+
45
44
  def teardown
46
45
  FileUtils.rm_rf(@skelet.name)
47
- end
48
- end
46
+ end
47
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skelet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kuba Krzempek
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-29 00:00:00.000000000 Z
11
+ date: 2013-07-07 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Simply generates a skeleton for an app
14
14
  email:
@@ -19,6 +19,7 @@ extensions: []
19
19
  extra_rdoc_files: []
20
20
  files:
21
21
  - .gitignore
22
+ - README.md
22
23
  - bin/skelet
23
24
  - lib/skelet.rb
24
25
  - lib/skelet/files.rb