vesper 0.5.2 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -6,10 +6,6 @@ You may need to sudo this:
6
6
 
7
7
  gem install vesper
8
8
 
9
- ## Getting Started
9
+ ## Options
10
10
 
11
- Create an app:
12
-
13
- vesper create MyApp
14
-
15
- Follow the on screen instructions, then take a look at http://localhost:9292.
11
+ vesper options
data/bin/vesper CHANGED
@@ -30,6 +30,14 @@ def show_options
30
30
  puts ' Should be run from inside an existing Vesper app.'
31
31
  puts ' Example: vesper create plugin MyPlugin'
32
32
  puts ''
33
+ puts ' vesper run test'
34
+ puts ' Summary: Runs a test using a file in /tests using MiniTest.'
35
+ puts ' Example: vesper run test hello_world'
36
+ puts ''
37
+ puts ' vesper run tests'
38
+ puts ' Summary: Runs tests on all the files in /tests using MiniTest'
39
+ puts ' Example: vesper run tests'
40
+ puts ''
33
41
  puts 'Documentation can be found online at: http://vesperapps.com/learn'
34
42
  puts ''
35
43
  puts 'Questions and comments should be send to: jarrodtaylor@me.com'
@@ -95,36 +103,44 @@ def install_plugin repo
95
103
  exec "bundle > /dev/null && echo '\n#{META_DATA[:name]} is installed in /plugins.\n'"
96
104
  end
97
105
 
98
-
99
- unless ARGV[0] && ARGV[1] && ARGV[2]
100
- show_options
101
- else
102
- command = ARGV[0]
103
- option = ARGV[1]
104
- name = ARGV[2]
105
-
106
- case command
107
- when 'create'
108
- if option == 'application' || option == 'app'
109
- create_app name
110
- elsif option == 'plugin'
111
- create_plugin name
112
- else
113
- show_options
114
- end
115
- when 'install'
116
- if option == 'plugin'
117
- install_plugin name
118
- else
119
- show_options
120
- end
121
- when 'remove'
122
- if option == 'plugin'
123
- remove_plugin name
124
- else
125
- show_options
126
- end
106
+ def run_test file
107
+ if File.exists? "./tests/#{file}.rb"
108
+ require 'minitest/autorun'
109
+ require 'vesper'
110
+ require "./tests/#{file}.rb"
127
111
  else
128
- show_options
112
+ puts ''
113
+ puts 'I can\'t find that test. Maybe there\'s a typ0?'
114
+ puts ''
129
115
  end
116
+ end
117
+
118
+ def run_tests
119
+ require 'minitest/autorun'
120
+ require 'vesper'
121
+ Dir["./tests/**/*"].each {|file| require file}
122
+ end
123
+
124
+
125
+ ARGV[0] && ARGV[1] ? command = "#{ARGV[0]} #{ARGV[1]}" : command = false
126
+ ARGV[2] ? option = ARGV[2] : option = false
127
+
128
+
129
+ case command
130
+ when 'create application'
131
+ option ? create_app(option) : show_options
132
+ when 'create app'
133
+ option ? create_app(option) : show_options
134
+ when 'create plugin'
135
+ option ? create_plugin(option) : show_options
136
+ when 'install plugin'
137
+ option ? install_plugin(option) : show_options
138
+ when 'remove plugin'
139
+ option ? remove_plugin(option) : show_options
140
+ when 'run test'
141
+ option ? run_test(option) : show_options
142
+ when 'run tests'
143
+ run_tests
144
+ else
145
+ show_options
130
146
  end
@@ -10,6 +10,8 @@
10
10
 
11
11
  # For route handling
12
12
  gem 'sinatra', '~> 1.3.1'
13
+
14
+ gem 'vesper', :require => false
13
15
 
14
16
  # For writing cron jobs in Ruby
15
17
  gem 'whenever', '~> 0.7.0', :require => false
@@ -1,8 +1,2 @@
1
- # Load the application
2
- require './loader.rb'
3
-
4
- # Load plugin Rake tasks
5
- Dir["./plugins/**/tasks/*"].each {|file| require file}
6
-
7
- # Load your custom Rake tasks
8
- Dir["./tasks/**/*"].each {|file| require file}
1
+ require 'vesper'
2
+ require 'vesper/rake'
@@ -5,16 +5,19 @@ get '/?' do
5
5
  erb :hello_world
6
6
  end
7
7
 
8
- # DataMapper model class
9
- # For more info: http://datamapper.org/
10
- #
11
- # class User
12
- # include DataMapper::Resource
13
- #
14
- # property :id, Serial
15
- # property :deleted_at, ParanoidDateTime
16
- # timestamps :at
17
- #
18
- # property :email, String
19
- #
20
- # end
8
+ class User
9
+ # DataMapper model class
10
+ # For more info: http://datamapper.org/
11
+ #
12
+ # include DataMapper::Resource
13
+ #
14
+ # property :id, Serial
15
+ # property :deleted_at, ParanoidDateTime
16
+ # timestamps :at
17
+ #
18
+ # property :email, String
19
+
20
+ def knock_knock
21
+ "Who's there?"
22
+ end
23
+ end
@@ -1,5 +1,4 @@
1
- # Load the application
2
- require './loader.rb'
1
+ require 'vesper'
3
2
 
4
3
  # Run the app on Rack
5
- run Sinatra::Application
4
+ run Sinatra::Application
@@ -0,0 +1,9 @@
1
+ class TestHelloWorld < MiniTest::Unit::TestCase
2
+ def setup
3
+ @user = User.new
4
+ end
5
+
6
+ def test_knock_knock_joke
7
+ assert_equal "Who's there?", @user.knock_knock
8
+ end
9
+ end
@@ -0,0 +1,4 @@
1
+ class Vesper::Rake
2
+ Dir["./plugins/**/tasks/*"].each {|file| require file}
3
+ Dir["./tasks/**/*"].each {|file| require file}
4
+ end
@@ -1,3 +1,3 @@
1
1
  module Vesper
2
- VERSION = "0.5.2"
2
+ VERSION = "0.6.0"
3
3
  end
data/lib/vesper.rb CHANGED
@@ -1,5 +1,22 @@
1
1
  require "vesper/version"
2
2
 
3
3
  module Vesper
4
- # Your code goes here...
4
+
5
+ require 'bundler'
6
+ Bundler.require
7
+
8
+ Tilt.register Tilt::ERBTemplate, 'html'
9
+
10
+ set :views, './views'
11
+ set :public_folder, './public'
12
+
13
+ [
14
+ 'config',
15
+ 'plugins/**/config',
16
+ 'plugins/**/application',
17
+ 'application'
18
+ ].each {|dir| Dir["./#{dir}/**/*.rb"].each {|file| require file}}
19
+
20
+ DataMapper.finalize
21
+
5
22
  end
data/vesper.gemspec CHANGED
@@ -15,6 +15,8 @@ Gem::Specification.new do |s|
15
15
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
16
16
  s.require_paths = ["lib"]
17
17
 
18
+ s.required_ruby_version = ">= 1.9.2"
19
+
18
20
  s.post_install_message = "\nTo see what vesper can do:\n vesper options\n\nSend any questions or comments to jarrodtaylor@me.com\n\n"
19
21
 
20
22
  s.add_development_dependency "bundler", "~> 1.0.21"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vesper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.6.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-17 00:00:00.000000000 Z
12
+ date: 2011-12-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
16
- requirement: &70208182914440 !ruby/object:Gem::Requirement
16
+ requirement: &70186917291680 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: 1.0.21
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70208182914440
24
+ version_requirements: *70186917291680
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: bundler
27
- requirement: &70208182913860 !ruby/object:Gem::Requirement
27
+ requirement: &70186917291200 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: 1.0.21
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70208182913860
35
+ version_requirements: *70186917291200
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: chronic
38
- requirement: &70208182913140 !ruby/object:Gem::Requirement
38
+ requirement: &70186917290680 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: 0.6.5
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70208182913140
46
+ version_requirements: *70186917290680
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: data_mapper
49
- requirement: &70208182912420 !ruby/object:Gem::Requirement
49
+ requirement: &70186917290080 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 1.2.0
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70208182912420
57
+ version_requirements: *70186917290080
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: dm-sqlite-adapter
60
- requirement: &70208182911960 !ruby/object:Gem::Requirement
60
+ requirement: &70186917289400 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 1.2.0
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70208182911960
68
+ version_requirements: *70186917289400
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: grit
71
- requirement: &70208182911500 !ruby/object:Gem::Requirement
71
+ requirement: &70186917288600 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 2.4.1
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70208182911500
79
+ version_requirements: *70186917288600
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: redcarpet
82
- requirement: &70208182911020 !ruby/object:Gem::Requirement
82
+ requirement: &70186917288080 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: 2.0.0
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *70208182911020
90
+ version_requirements: *70186917288080
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: sinatra
93
- requirement: &70208182910560 !ruby/object:Gem::Requirement
93
+ requirement: &70186917309820 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ~>
@@ -98,10 +98,10 @@ dependencies:
98
98
  version: 1.3.1
99
99
  type: :runtime
100
100
  prerelease: false
101
- version_requirements: *70208182910560
101
+ version_requirements: *70186917309820
102
102
  - !ruby/object:Gem::Dependency
103
103
  name: whenever
104
- requirement: &70208182910080 !ruby/object:Gem::Requirement
104
+ requirement: &70186917309260 !ruby/object:Gem::Requirement
105
105
  none: false
106
106
  requirements:
107
107
  - - ~>
@@ -109,7 +109,7 @@ dependencies:
109
109
  version: 0.7.0
110
110
  type: :runtime
111
111
  prerelease: false
112
- version_requirements: *70208182910080
112
+ version_requirements: *70186917309260
113
113
  description:
114
114
  email: jarrodtaylor@me.com
115
115
  executables:
@@ -130,12 +130,10 @@ files:
130
130
  - lib/vesper/framework/application/hello_world.rb
131
131
  - lib/vesper/framework/config.ru
132
132
  - lib/vesper/framework/config/databases.rb
133
- - lib/vesper/framework/config/mime_types.rb
134
133
  - lib/vesper/framework/config/schedule.rb
135
134
  - lib/vesper/framework/config/sessions.rb
136
135
  - lib/vesper/framework/data/seeds.rb
137
136
  - lib/vesper/framework/data/transmogrify.rb
138
- - lib/vesper/framework/loader.rb
139
137
  - lib/vesper/framework/log/messages.log
140
138
  - lib/vesper/framework/plugins/addendums/Readme.md
141
139
  - lib/vesper/framework/plugins/addendums/application/helpers.rb
@@ -161,9 +159,11 @@ files:
161
159
  - lib/vesper/framework/public/robots.txt
162
160
  - lib/vesper/framework/tasks/databases.rb
163
161
  - lib/vesper/framework/tasks/irb.rb
162
+ - lib/vesper/framework/tests/hello_world.rb
164
163
  - lib/vesper/framework/tmp/restart.txt
165
164
  - lib/vesper/framework/views/hello_world.html
166
165
  - lib/vesper/framework/views/layout.html
166
+ - lib/vesper/rake.rb
167
167
  - lib/vesper/version.rb
168
168
  - vesper.gemspec
169
169
  homepage: http://jarrodtaylor.github.com/vesper/
@@ -178,7 +178,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
178
178
  requirements:
179
179
  - - ! '>='
180
180
  - !ruby/object:Gem::Version
181
- version: '0'
181
+ version: 1.9.2
182
182
  required_rubygems_version: !ruby/object:Gem::Requirement
183
183
  none: false
184
184
  requirements:
@@ -1,2 +0,0 @@
1
- # Runs embedded Ruby inside html files
2
- Tilt.register Tilt::ERBTemplate, 'html'
@@ -1,9 +0,0 @@
1
- # Use the gems in Gemfile
2
- require 'bundler'
3
- Bundler.require
4
-
5
- # Directories to load, in order
6
- ['config', 'plugins/**/config', 'plugins/**/application', 'application'].each {|dir| Dir["./#{dir}/**/*.rb"].each {|file| require file}}
7
-
8
- # Tell DataMapper that all the models are ready
9
- DataMapper.finalize