andhapp-decoct 1.3.0 → 1.4.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.
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :patch: 0
3
3
  :major: 1
4
- :minor: 3
4
+ :minor: 4
data/decoct.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{decoct}
5
- s.version = "1.3.0"
5
+ s.version = "1.4.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Anuj Dutta"]
9
- s.date = %q{2009-04-22}
9
+ s.date = %q{2009-04-24}
10
10
  s.default_executable = %q{decoct}
11
11
  s.description = %q{Sinatra Rspec project generator}
12
12
  s.email = %q{anuj@andhapp.com}
@@ -21,9 +21,11 @@ Gem::Specification.new do |s|
21
21
  "bin/decoct",
22
22
  "decoct.gemspec",
23
23
  "lib/dconstants.rb",
24
+ "lib/dmeta.rb",
24
25
  "lib/dscript.rb",
25
26
  "lib/templates/.autotest",
26
27
  "lib/templates/generic_app.rb",
28
+ "lib/templates/spec/app_spec.rb",
27
29
  "lib/templates/spec/rcov.opts",
28
30
  "lib/templates/spec/spec.opts",
29
31
  "lib/templates/spec/spec_helper.rb",
data/lib/dmeta.rb ADDED
@@ -0,0 +1,28 @@
1
+ require 'ftools'
2
+ require File.dirname(__FILE__) + '/../lib/dconstants'
3
+
4
+ module Decoct
5
+ module Dmeta
6
+
7
+ include Decoct::Dconstants
8
+
9
+ def copy_file(from, to)
10
+ File.copy(Dconstants::TEMPLATES + from, to)
11
+ end
12
+
13
+ module ClassMethods
14
+ def create_dir(name)
15
+ attr_reader name
16
+ define_method("create_#{name}") do
17
+ path = "#{app_name}/#{name}"
18
+ Dir.mkdir(path) if !test(?d, path)
19
+ end
20
+ end
21
+ end
22
+
23
+ def self.included(host_class)
24
+ host_class.extend(ClassMethods)
25
+ end
26
+
27
+ end
28
+ end
data/lib/dscript.rb CHANGED
@@ -1,14 +1,17 @@
1
- require 'ftools'
2
- require File.dirname(__FILE__) + '/../lib/dconstants'
1
+ require File.dirname(__FILE__) + '/../lib/dmeta'
3
2
 
4
3
  module Decoct
5
-
6
- include Decoct::Dconstants
7
4
 
8
- # move the creation into a module and just include that module
9
5
  class Dscript
10
6
 
7
+ include Decoct::Dmeta
8
+
11
9
  attr_accessor :app_name
10
+
11
+ create_dir :lib
12
+ create_dir :spec
13
+ create_dir :views
14
+ create_dir :public
12
15
 
13
16
  def initialize(app_name)
14
17
  fail "app name cannot be nil or empty!!!" if app_name.eql?(nil) || app_name.empty?
@@ -23,25 +26,13 @@ module Decoct
23
26
  create_public
24
27
  copy_autotest_file
25
28
  copy_rspec_files
26
- create_app_file
29
+ copy_app_file
27
30
  end
28
31
 
29
- def create_lib
30
- create_dir(Dconstants::LIB)
31
- end
32
-
33
- def create_spec
34
- create_dir(Dconstants::SPEC)
35
- end
36
-
37
- def create_views
38
- create_dir(Dconstants::VIEWS)
32
+ def create_app_dir
33
+ Dir.mkdir("#{app_name}") if !test(?d, "#{app_name}")
39
34
  end
40
35
 
41
- def create_public
42
- create_dir(Dconstants::PUBLIC)
43
- end
44
-
45
36
  def copy_autotest_file
46
37
  copy_file(".autotest", "#{app_name}/.autotest")
47
38
  end
@@ -50,28 +41,13 @@ module Decoct
50
41
  copy_file("spec/spec.opts", "#{app_name}/spec/spec.opts")
51
42
  copy_file("spec/rcov.opts", "#{app_name}/spec/rcov.opts")
52
43
  copy_file("spec/spec_helper.rb", "#{app_name}/spec/spec_helper.rb")
44
+ copy_file("spec/app_spec.rb", "#{app_name}/spec/#{app_name}_spec.rb")
53
45
  end
54
46
 
55
- def create_app_file
47
+ def copy_app_file
56
48
  copy_file("generic_app.rb", "#{app_name}/#{app_name}.rb")
57
49
  end
58
50
 
59
- def create_app_dir
60
- create_dir
61
- end
62
-
63
- private
64
-
65
- def create_dir(value = '')
66
- path = "#{app_name}/#{value}"
67
- Dir.mkdir(path) if !test(?d, path)
68
- end
69
-
70
- def copy_file(from, to)
71
- File.copy(Dconstants::TEMPLATES + from, to)
72
- end
73
-
74
51
  end
75
52
 
76
53
  end
77
-
@@ -0,0 +1,13 @@
1
+ %w{spec spec/interop/test sinatra/test}.each {|x| require x}
2
+
3
+ set :environment, :test
4
+
5
+ describe 'App' do
6
+ include Sinatra::Test
7
+
8
+ it "should pick the spec files for autotest and display error messages with snarl" do
9
+ get '/'
10
+ response.should be_ok
11
+ response.body.should == 'It works!!!'
12
+ end
13
+ end
data/test/ts_script.rb CHANGED
@@ -18,41 +18,29 @@ class TestScript < Test::Unit::TestCase
18
18
  end
19
19
 
20
20
  should 'create a directory called lib' do
21
- initial_num_of_dir = dir_in_app_folder().size()
22
21
  @script.create_lib
23
- final_num_of_dir = dir_in_app_folder().size()
24
- assert_equal final_num_of_dir, initial_num_of_dir + 1
25
22
  assert_not_nil dir_in_app_folder.index("lib")
26
23
  end
27
24
 
28
25
  should 'create a directory called spec and copy the rspec files' do
29
- initial_num_of_dir = dir_in_app_folder().size()
30
26
  @script.create_spec
31
- final_num_of_dir = dir_in_app_folder().size()
32
-
33
27
  @script.copy_rspec_files
34
28
 
35
29
  assert File.exists?("#{@app_name}/spec/spec.opts")
36
30
  assert File.exists?("#{@app_name}/spec/rcov.opts")
37
31
  assert File.exists?("#{@app_name}/spec/spec_helper.rb")
32
+ assert File.exists?("#{@app_name}/spec/#{@app_name}_spec.rb")
38
33
 
39
- assert_equal final_num_of_dir, initial_num_of_dir + 1
40
34
  assert_not_nil dir_in_app_folder.index("spec")
41
35
  end
42
36
 
43
37
  should 'create a directory called views' do
44
- initial_num_of_dir = dir_in_app_folder().size()
45
38
  @script.create_views
46
- final_num_of_dir = dir_in_app_folder().size()
47
- assert_equal final_num_of_dir, initial_num_of_dir + 1
48
39
  assert_not_nil dir_in_app_folder.index("views")
49
40
  end
50
41
 
51
42
  should 'create a directory called public' do
52
- initial_num_of_dir = dir_in_app_folder().size()
53
43
  @script.create_public
54
- final_num_of_dir = dir_in_app_folder().size()
55
- assert_equal final_num_of_dir, initial_num_of_dir + 1
56
44
  assert_not_nil dir_in_app_folder.index("public")
57
45
  end
58
46
 
@@ -61,8 +49,8 @@ class TestScript < Test::Unit::TestCase
61
49
  assert File.exists?("#{@app_name}/.autotest")
62
50
  end
63
51
 
64
- should 'create the app file' do
65
- @script.create_app_file
52
+ should 'copy the app file' do
53
+ @script.copy_app_file
66
54
  assert File.exists?("#{@app_name}/#{@app_name}.rb")
67
55
  end
68
56
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: andhapp-decoct
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anuj Dutta
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-04-22 00:00:00 -07:00
12
+ date: 2009-04-24 00:00:00 -07:00
13
13
  default_executable: decoct
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -77,9 +77,11 @@ files:
77
77
  - bin/decoct
78
78
  - decoct.gemspec
79
79
  - lib/dconstants.rb
80
+ - lib/dmeta.rb
80
81
  - lib/dscript.rb
81
82
  - lib/templates/.autotest
82
83
  - lib/templates/generic_app.rb
84
+ - lib/templates/spec/app_spec.rb
83
85
  - lib/templates/spec/rcov.opts
84
86
  - lib/templates/spec/spec.opts
85
87
  - lib/templates/spec/spec_helper.rb