cuba 0.0.5 → 0.1.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/Rakefile CHANGED
@@ -1,5 +1,7 @@
1
1
  task :test do
2
- system "cd test && ruby cuba_test.rb"
2
+ require "cutest"
3
+
4
+ Cutest.run(Dir["test/*.rb"])
3
5
  end
4
6
 
5
7
  task :default => :test
data/cuba.gemspec CHANGED
@@ -1,17 +1,14 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cuba"
3
- s.version = "0.0.5"
3
+ s.version = "0.1.0"
4
4
  s.summary = "Rum based microframework for web applications."
5
5
  s.description = "Cuba is a light wrapper for Rum, a microframework for Rack applications."
6
6
  s.authors = ["Michel Martens"]
7
7
  s.email = ["michel@soveran.com"]
8
8
  s.homepage = "http://github.com/soveran/cuba"
9
- s.files = ["LICENSE", "README.markdown", "Rakefile", "lib/cuba/ron.rb", "lib/cuba/rum.rb", "lib/cuba/test.rb", "lib/cuba/version.rb", "lib/cuba.rb", "cuba.gemspec", "test/cuba_test.rb", "test/webrat.log"]
10
- s.add_dependency "rack", ">= 1.1.0"
11
- s.add_dependency "haml", ">= 2.2.22"
12
- s.add_dependency "tilt", ">= 0.9"
13
- s.add_dependency "webrat", ">= 0.7.0"
14
- s.add_dependency "contest", ">= 0.1.2"
15
- s.add_dependency "stories", ">= 0.1.3"
16
- s.add_dependency "rack-test", ">= 0.5.3"
9
+ s.files = ["LICENSE", "README.markdown", "Rakefile", "lib/cuba/ron.rb", "lib/cuba/rum.rb", "lib/cuba/test.rb", "lib/cuba/version.rb", "lib/cuba.rb", "cuba.gemspec", "test/integration.rb", "test/webrat.log"]
10
+ s.add_dependency "rack", "~> 1.2"
11
+ s.add_dependency "tilt", "~> 1.1"
12
+ s.add_development_dependency "cutest", "~> 0.1"
13
+ s.add_development_dependency "capybara", "~> 0.1"
17
14
  end
data/lib/cuba/ron.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require "cuba/rum"
2
- require "haml"
3
2
  require "tilt"
4
3
 
5
4
  module Cuba
@@ -8,9 +7,9 @@ module Cuba
8
7
  Thread.current[:_cache] ||= Tilt::Cache.new
9
8
  end
10
9
 
11
- def haml(template, locals = {})
10
+ def render(template, locals = {})
12
11
  _cache.fetch(template, locals) {
13
- Tilt::HamlTemplate.new("#{template}.haml")
12
+ Tilt.new(template)
14
13
  }.render(self, locals)
15
14
  end
16
15
 
data/lib/cuba/test.rb CHANGED
@@ -1,25 +1,9 @@
1
- require "webrat"
2
- require "rack/test"
3
- require "stories"
4
- require "stories/runner"
1
+ require "cuba"
2
+ require "cutest"
3
+ require "capybara/dsl"
5
4
 
6
- Webrat.configure do |config|
7
- config.mode = :rack
5
+ class Cutest::Scope
6
+ include Capybara
8
7
  end
9
8
 
10
- class Test::Unit::TestCase
11
- include Rack::Test::Methods
12
- include Webrat::Methods
13
- include Webrat::Matchers
14
- include Stories::Webrat
15
-
16
- def app
17
- Cuba
18
- end
19
- end
20
-
21
- module Cuba
22
- def self.test(name, &block)
23
- Test::Unit::TestCase.context(name, &block)
24
- end
25
- end
9
+ Capybara.app = Cuba
data/lib/cuba/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Cuba
2
- VERSION = "0.0.5"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -0,0 +1,4 @@
1
+ test "examples" do
2
+ `cd example && rake -I../lib`
3
+ assert $?.exitstatus == 0
4
+ end
data/test/webrat.log CHANGED
@@ -1,9 +1,5 @@
1
- # Logfile created on 2010-05-08 22:24:04 -0300 by logger.rb/20321
2
- D, [2010-05-08T22:24:04.490239 #59737] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {}
3
- D, [2010-05-08T22:24:04.502240 #59737] DEBUG -- : REQUESTING PAGE: GET /login with {} and HTTP headers {"HTTP_REFERER"=>"/"}
4
- D, [2010-05-08T22:24:04.504636 #59737] DEBUG -- : REQUESTING PAGE: POST /login with {"user"=>"Michel"} and HTTP headers {"HTTP_REFERER"=>"/login"}
5
- D, [2010-05-08T22:24:04.507504 #59737] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {"HTTP_REFERER"=>"/login"}
6
- D, [2010-05-14T12:19:24.081242 #70310] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {}
7
- D, [2010-05-14T12:19:24.127110 #70310] DEBUG -- : REQUESTING PAGE: GET /login with {} and HTTP headers {"HTTP_REFERER"=>"/"}
8
- D, [2010-05-14T12:19:24.129474 #70310] DEBUG -- : REQUESTING PAGE: POST /login with {"user"=>"Michel"} and HTTP headers {"HTTP_REFERER"=>"/login"}
9
- D, [2010-05-14T12:19:24.132340 #70310] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {"HTTP_REFERER"=>"/login"}
1
+ # Logfile created on 2010-06-11 01:04:00 -0300 by logger.rb/20321
2
+ D, [2010-06-11T01:04:00.071479 #37917] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {}
3
+ D, [2010-06-11T01:04:00.082487 #37917] DEBUG -- : REQUESTING PAGE: GET /login with {} and HTTP headers {"HTTP_REFERER"=>"/"}
4
+ D, [2010-06-11T01:04:00.084940 #37917] DEBUG -- : REQUESTING PAGE: POST /login with {"user"=>"Michel"} and HTTP headers {"HTTP_REFERER"=>"/login"}
5
+ D, [2010-06-11T01:04:00.087758 #37917] DEBUG -- : REQUESTING PAGE: GET / with {} and HTTP headers {"HTTP_REFERER"=>"/login"}
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cuba
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
5
4
  prerelease: false
6
5
  segments:
7
6
  - 0
7
+ - 1
8
8
  - 0
9
- - 5
10
- version: 0.0.5
9
+ version: 0.1.0
11
10
  platform: ruby
12
11
  authors:
13
12
  - Michel Martens
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-05-14 00:00:00 -03:00
17
+ date: 2010-09-22 00:00:00 -03:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -24,111 +23,56 @@ dependencies:
24
23
  requirement: &id001 !ruby/object:Gem::Requirement
25
24
  none: false
26
25
  requirements:
27
- - - ">="
26
+ - - ~>
28
27
  - !ruby/object:Gem::Version
29
- hash: 19
30
28
  segments:
31
29
  - 1
32
- - 1
33
- - 0
34
- version: 1.1.0
30
+ - 2
31
+ version: "1.2"
35
32
  type: :runtime
36
33
  version_requirements: *id001
37
34
  - !ruby/object:Gem::Dependency
38
- name: haml
35
+ name: tilt
39
36
  prerelease: false
40
37
  requirement: &id002 !ruby/object:Gem::Requirement
41
38
  none: false
42
39
  requirements:
43
- - - ">="
40
+ - - ~>
44
41
  - !ruby/object:Gem::Version
45
- hash: 43
46
42
  segments:
47
- - 2
48
- - 2
49
- - 22
50
- version: 2.2.22
43
+ - 1
44
+ - 1
45
+ version: "1.1"
51
46
  type: :runtime
52
47
  version_requirements: *id002
53
48
  - !ruby/object:Gem::Dependency
54
- name: tilt
49
+ name: cutest
55
50
  prerelease: false
56
51
  requirement: &id003 !ruby/object:Gem::Requirement
57
52
  none: false
58
53
  requirements:
59
- - - ">="
54
+ - - ~>
60
55
  - !ruby/object:Gem::Version
61
- hash: 25
62
56
  segments:
63
57
  - 0
64
- - 9
65
- version: "0.9"
66
- type: :runtime
58
+ - 1
59
+ version: "0.1"
60
+ type: :development
67
61
  version_requirements: *id003
68
62
  - !ruby/object:Gem::Dependency
69
- name: webrat
63
+ name: capybara
70
64
  prerelease: false
71
65
  requirement: &id004 !ruby/object:Gem::Requirement
72
66
  none: false
73
67
  requirements:
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- hash: 3
77
- segments:
78
- - 0
79
- - 7
80
- - 0
81
- version: 0.7.0
82
- type: :runtime
83
- version_requirements: *id004
84
- - !ruby/object:Gem::Dependency
85
- name: contest
86
- prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - ">="
68
+ - - ~>
91
69
  - !ruby/object:Gem::Version
92
- hash: 31
93
70
  segments:
94
71
  - 0
95
72
  - 1
96
- - 2
97
- version: 0.1.2
98
- type: :runtime
99
- version_requirements: *id005
100
- - !ruby/object:Gem::Dependency
101
- name: stories
102
- prerelease: false
103
- requirement: &id006 !ruby/object:Gem::Requirement
104
- none: false
105
- requirements:
106
- - - ">="
107
- - !ruby/object:Gem::Version
108
- hash: 29
109
- segments:
110
- - 0
111
- - 1
112
- - 3
113
- version: 0.1.3
114
- type: :runtime
115
- version_requirements: *id006
116
- - !ruby/object:Gem::Dependency
117
- name: rack-test
118
- prerelease: false
119
- requirement: &id007 !ruby/object:Gem::Requirement
120
- none: false
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- hash: 13
125
- segments:
126
- - 0
127
- - 5
128
- - 3
129
- version: 0.5.3
130
- type: :runtime
131
- version_requirements: *id007
73
+ version: "0.1"
74
+ type: :development
75
+ version_requirements: *id004
132
76
  description: Cuba is a light wrapper for Rum, a microframework for Rack applications.
133
77
  email:
134
78
  - michel@soveran.com
@@ -148,7 +92,7 @@ files:
148
92
  - lib/cuba/version.rb
149
93
  - lib/cuba.rb
150
94
  - cuba.gemspec
151
- - test/cuba_test.rb
95
+ - test/integration.rb
152
96
  - test/webrat.log
153
97
  has_rdoc: true
154
98
  homepage: http://github.com/soveran/cuba
@@ -164,7 +108,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
164
108
  requirements:
165
109
  - - ">="
166
110
  - !ruby/object:Gem::Version
167
- hash: 3
168
111
  segments:
169
112
  - 0
170
113
  version: "0"
@@ -173,7 +116,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
116
  requirements:
174
117
  - - ">="
175
118
  - !ruby/object:Gem::Version
176
- hash: 3
177
119
  segments:
178
120
  - 0
179
121
  version: "0"
data/test/cuba_test.rb DELETED
@@ -1,54 +0,0 @@
1
- $:.unshift(File.dirname(__FILE__) + "/../lib/")
2
-
3
- require "cuba"
4
- require "cuba/test"
5
-
6
- form = <<EOS
7
- <form action="/login" method="post">
8
- <input name="user">
9
- <input type="submit" value="Login">
10
- </form>
11
- EOS
12
-
13
- Cuba.define do
14
- on get do
15
- on path("login") do
16
- res.write "Enter your username"
17
- res.write form
18
- end
19
-
20
- on default do
21
- if session[:user]
22
- res.write "Hey #{session[:user]}!"
23
- else
24
- res.redirect "/login"
25
- end
26
- end
27
- end
28
-
29
- on post, path("login") do
30
- on param("user") do |user|
31
- session[:user] = user
32
- res.write "Got #{user}"
33
- end
34
- end
35
- end
36
-
37
- Cuba.test "Sample Site" do
38
- story "As a user I want to be able to login" do
39
- scenario "A user submits good info" do
40
- visit "/"
41
-
42
- assert_contain "Enter your username"
43
-
44
- fill_in "user", :with => "Michel"
45
- click_button "Login"
46
-
47
- assert_contain "Got Michel"
48
-
49
- visit "/"
50
-
51
- assert_contain "Hey Michel!"
52
- end
53
- end
54
- end