aldebaran 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (97) hide show
  1. data/.gitignore +13 -0
  2. data/.travis.yml +16 -0
  3. data/.yardopts +4 -0
  4. data/AUTHORS +4 -0
  5. data/Gemfile +77 -0
  6. data/KNOWN_ISSUES +5 -0
  7. data/LICENSE +22 -0
  8. data/README.rdoc +1900 -0
  9. data/Rakefile +175 -0
  10. data/aldebaran.gemspec +19 -0
  11. data/lib/aldebaran.rb +7 -0
  12. data/lib/aldebaran/base.rb +1600 -0
  13. data/lib/aldebaran/images/404.png +0 -0
  14. data/lib/aldebaran/images/500.png +0 -0
  15. data/lib/aldebaran/main.rb +28 -0
  16. data/lib/aldebaran/showexceptions.rb +340 -0
  17. data/lib/aldebaran/version.rb +3 -0
  18. data/test/aldebaran_test.rb +17 -0
  19. data/test/base_test.rb +160 -0
  20. data/test/builder_test.rb +95 -0
  21. data/test/coffee_test.rb +92 -0
  22. data/test/contest.rb +98 -0
  23. data/test/creole_test.rb +65 -0
  24. data/test/delegator_test.rb +162 -0
  25. data/test/encoding_test.rb +20 -0
  26. data/test/erb_test.rb +104 -0
  27. data/test/extensions_test.rb +100 -0
  28. data/test/filter_test.rb +397 -0
  29. data/test/haml_test.rb +101 -0
  30. data/test/helper.rb +115 -0
  31. data/test/helpers_test.rb +1192 -0
  32. data/test/less_test.rb +67 -0
  33. data/test/liquid_test.rb +59 -0
  34. data/test/mapped_error_test.rb +259 -0
  35. data/test/markaby_test.rb +80 -0
  36. data/test/markdown_test.rb +81 -0
  37. data/test/middleware_test.rb +68 -0
  38. data/test/nokogiri_test.rb +69 -0
  39. data/test/public/favicon.ico +0 -0
  40. data/test/radius_test.rb +59 -0
  41. data/test/rdoc_test.rb +65 -0
  42. data/test/readme_test.rb +136 -0
  43. data/test/request_test.rb +45 -0
  44. data/test/response_test.rb +61 -0
  45. data/test/result_test.rb +98 -0
  46. data/test/route_added_hook_test.rb +59 -0
  47. data/test/routing_test.rb +1096 -0
  48. data/test/sass_test.rb +115 -0
  49. data/test/scss_test.rb +88 -0
  50. data/test/server_test.rb +48 -0
  51. data/test/settings_test.rb +493 -0
  52. data/test/slim_test.rb +98 -0
  53. data/test/static_test.rb +178 -0
  54. data/test/streaming_test.rb +100 -0
  55. data/test/templates_test.rb +298 -0
  56. data/test/textile_test.rb +65 -0
  57. data/test/views/a/in_a.str +1 -0
  58. data/test/views/ascii.erb +2 -0
  59. data/test/views/b/in_b.str +1 -0
  60. data/test/views/calc.html.erb +1 -0
  61. data/test/views/error.builder +3 -0
  62. data/test/views/error.erb +3 -0
  63. data/test/views/error.haml +3 -0
  64. data/test/views/error.sass +2 -0
  65. data/test/views/explicitly_nested.str +1 -0
  66. data/test/views/foo/hello.test +1 -0
  67. data/test/views/hello.builder +1 -0
  68. data/test/views/hello.coffee +1 -0
  69. data/test/views/hello.creole +1 -0
  70. data/test/views/hello.erb +1 -0
  71. data/test/views/hello.haml +1 -0
  72. data/test/views/hello.less +5 -0
  73. data/test/views/hello.liquid +1 -0
  74. data/test/views/hello.mab +1 -0
  75. data/test/views/hello.md +1 -0
  76. data/test/views/hello.nokogiri +1 -0
  77. data/test/views/hello.radius +1 -0
  78. data/test/views/hello.rdoc +1 -0
  79. data/test/views/hello.sass +2 -0
  80. data/test/views/hello.scss +3 -0
  81. data/test/views/hello.slim +1 -0
  82. data/test/views/hello.str +1 -0
  83. data/test/views/hello.test +1 -0
  84. data/test/views/hello.textile +1 -0
  85. data/test/views/layout2.builder +3 -0
  86. data/test/views/layout2.erb +2 -0
  87. data/test/views/layout2.haml +2 -0
  88. data/test/views/layout2.liquid +2 -0
  89. data/test/views/layout2.mab +2 -0
  90. data/test/views/layout2.nokogiri +3 -0
  91. data/test/views/layout2.radius +2 -0
  92. data/test/views/layout2.slim +3 -0
  93. data/test/views/layout2.str +2 -0
  94. data/test/views/layout2.test +1 -0
  95. data/test/views/nested.str +1 -0
  96. data/test/views/utf8.erb +2 -0
  97. metadata +231 -0
@@ -0,0 +1,65 @@
1
+ require File.expand_path('../helper', __FILE__)
2
+
3
+ begin
4
+ require 'redcloth'
5
+
6
+ class TextileTest < Test::Unit::TestCase
7
+ def textile_app(&block)
8
+ mock_app do
9
+ set :views, File.dirname(__FILE__) + '/views'
10
+ get '/', &block
11
+ end
12
+ get '/'
13
+ end
14
+
15
+ it 'renders inline textile strings' do
16
+ textile_app { textile 'h1. Hiya' }
17
+ assert ok?
18
+ assert_equal "<h1>Hiya</h1>", body
19
+ end
20
+
21
+ it 'renders .textile files in views path' do
22
+ textile_app { textile :hello }
23
+ assert ok?
24
+ assert_equal "<h1>Hello From Textile</h1>", body
25
+ end
26
+
27
+ it "raises error if template not found" do
28
+ mock_app { get('/') { textile :no_such_template } }
29
+ assert_raise(Errno::ENOENT) { get('/') }
30
+ end
31
+
32
+ it "renders with inline layouts" do
33
+ mock_app do
34
+ layout { 'THIS. IS. #{yield.upcase}!' }
35
+ get('/') { textile 'Sparta', :layout_engine => :str }
36
+ end
37
+ get '/'
38
+ assert ok?
39
+ assert_like 'THIS. IS. <P>SPARTA</P>!', body
40
+ end
41
+
42
+ it "renders with file layouts" do
43
+ textile_app { textile 'Hello World', :layout => :layout2, :layout_engine => :erb }
44
+ assert ok?
45
+ assert_body "ERB Layout!\n<p>Hello World</p>"
46
+ end
47
+
48
+ it "can be used in a nested fashion for partials and whatnot" do
49
+ mock_app do
50
+ template(:inner) { "hi" }
51
+ template(:outer) { "<outer><%= textile :inner %></outer>" }
52
+ get '/' do
53
+ erb :outer
54
+ end
55
+ end
56
+
57
+ get '/'
58
+ assert ok?
59
+ assert_like '<outer><p>hi</p></outer>', body
60
+ end
61
+ end
62
+
63
+ rescue LoadError
64
+ warn "#{$!.to_s}: skipping textile tests"
65
+ end
@@ -0,0 +1 @@
1
+ Gimme an A!
@@ -0,0 +1,2 @@
1
+ This file has no unicode in it!
2
+ <%= value %>
@@ -0,0 +1 @@
1
+ Gimme a B!
@@ -0,0 +1 @@
1
+ <%= 1 + 1 %>
@@ -0,0 +1,3 @@
1
+ xml.error do
2
+ raise "goodbye"
3
+ end
@@ -0,0 +1,3 @@
1
+ Hello <%= 'World' %>
2
+ <% raise 'Goodbye' unless defined?(french) && french %>
3
+ <% raise 'Au revoir' if defined?(french) && french %>
@@ -0,0 +1,3 @@
1
+ %h1 Hello From Haml
2
+ = raise 'goodbye' unless defined?(french) && french
3
+ = raise 'au revoir' if defined?(french) && french
@@ -0,0 +1,2 @@
1
+ #sass
2
+ +argle-bargle
@@ -0,0 +1 @@
1
+ <content>#{render :str, :hello, :layout => :layout2}</content>
@@ -0,0 +1 @@
1
+ from another views directory
@@ -0,0 +1 @@
1
+ xml.exclaim "You're my boy, #{@name}!"
@@ -0,0 +1 @@
1
+ alert "Aye!"
@@ -0,0 +1 @@
1
+ = Hello From Creole
@@ -0,0 +1 @@
1
+ Hello <%= 'World' %>
@@ -0,0 +1 @@
1
+ %h1 Hello From Haml
@@ -0,0 +1,5 @@
1
+ @white_colour: #fff;
2
+
3
+ #main {
4
+ background-color: @white_colour;
5
+ }
@@ -0,0 +1 @@
1
+ <h1>Hello From Liquid</h1>
@@ -0,0 +1 @@
1
+ h1 "Hello From Markaby"
@@ -0,0 +1 @@
1
+ # Hello From Markdown
@@ -0,0 +1 @@
1
+ xml.exclaim "You're my boy, #{@name}!"
@@ -0,0 +1 @@
1
+ <h1>Hello From Radius</h1>
@@ -0,0 +1 @@
1
+ = Hello From RDoc
@@ -0,0 +1,2 @@
1
+ #sass
2
+ :background-color black
@@ -0,0 +1,3 @@
1
+ #scss {
2
+ background-color: white
3
+ }
@@ -0,0 +1 @@
1
+ h1 Hello From Slim
@@ -0,0 +1 @@
1
+ <h1>Hello From String</h1>
@@ -0,0 +1 @@
1
+ Hello World!
@@ -0,0 +1 @@
1
+ h1. Hello From Textile
@@ -0,0 +1,3 @@
1
+ xml.layout do
2
+ xml << yield
3
+ end
@@ -0,0 +1,2 @@
1
+ ERB Layout!
2
+ <%= yield %>
@@ -0,0 +1,2 @@
1
+ %h1 HAML Layout!
2
+ %p= yield
@@ -0,0 +1,2 @@
1
+ <h1>Liquid Layout!</h1>
2
+ <p>{{ yield }}</p>
@@ -0,0 +1,2 @@
1
+ h1 "Markaby Layout!"
2
+ p { yield }
@@ -0,0 +1,3 @@
1
+ xml.layout do
2
+ xml << yield
3
+ end
@@ -0,0 +1,2 @@
1
+ <h1>Radius Layout!</h1>
2
+ <p><r:yield /></p>
@@ -0,0 +1,3 @@
1
+ h1 Slim Layout!
2
+ p
3
+ == yield
@@ -0,0 +1,2 @@
1
+ <h1>String Layout!</h1>
2
+ #{yield}
@@ -0,0 +1 @@
1
+ Layout 2!
@@ -0,0 +1 @@
1
+ <content>#{render :str, :hello}</content>
@@ -0,0 +1,2 @@
1
+ <h1><%= value %></h1>
2
+ Ingen vill veta var du köpt din tröja.
metadata ADDED
@@ -0,0 +1,231 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: aldebaran
3
+ version: !ruby/object:Gem::Version
4
+ hash: 21
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 0
9
+ - 1
10
+ version: 1.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Mahmut Bulut
14
+ - Eren Kaplan
15
+ autorequire:
16
+ bindir: bin
17
+ cert_chain: []
18
+
19
+ date: 2011-09-09 00:00:00 Z
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: rack
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ hash: 9
30
+ segments:
31
+ - 1
32
+ - 3
33
+ version: "1.3"
34
+ type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: tilt
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ~>
43
+ - !ruby/object:Gem::Version
44
+ hash: 9
45
+ segments:
46
+ - 1
47
+ - 3
48
+ version: "1.3"
49
+ type: :runtime
50
+ version_requirements: *id002
51
+ description: Aldebaran is Web-development DSL micro-framework written with Mathematical Constructions
52
+ email:
53
+ executables: []
54
+
55
+ extensions: []
56
+
57
+ extra_rdoc_files:
58
+ - README.rdoc
59
+ - LICENSE
60
+ files:
61
+ - .gitignore
62
+ - .travis.yml
63
+ - .yardopts
64
+ - AUTHORS
65
+ - Gemfile
66
+ - KNOWN_ISSUES
67
+ - LICENSE
68
+ - README.rdoc
69
+ - Rakefile
70
+ - aldebaran.gemspec
71
+ - lib/aldebaran.rb
72
+ - lib/aldebaran/base.rb
73
+ - lib/aldebaran/images/404.png
74
+ - lib/aldebaran/images/500.png
75
+ - lib/aldebaran/main.rb
76
+ - lib/aldebaran/showexceptions.rb
77
+ - lib/aldebaran/version.rb
78
+ - test/aldebaran_test.rb
79
+ - test/base_test.rb
80
+ - test/builder_test.rb
81
+ - test/coffee_test.rb
82
+ - test/contest.rb
83
+ - test/creole_test.rb
84
+ - test/delegator_test.rb
85
+ - test/encoding_test.rb
86
+ - test/erb_test.rb
87
+ - test/extensions_test.rb
88
+ - test/filter_test.rb
89
+ - test/haml_test.rb
90
+ - test/helper.rb
91
+ - test/helpers_test.rb
92
+ - test/less_test.rb
93
+ - test/liquid_test.rb
94
+ - test/mapped_error_test.rb
95
+ - test/markaby_test.rb
96
+ - test/markdown_test.rb
97
+ - test/middleware_test.rb
98
+ - test/nokogiri_test.rb
99
+ - test/public/favicon.ico
100
+ - test/radius_test.rb
101
+ - test/rdoc_test.rb
102
+ - test/readme_test.rb
103
+ - test/request_test.rb
104
+ - test/response_test.rb
105
+ - test/result_test.rb
106
+ - test/route_added_hook_test.rb
107
+ - test/routing_test.rb
108
+ - test/sass_test.rb
109
+ - test/scss_test.rb
110
+ - test/server_test.rb
111
+ - test/settings_test.rb
112
+ - test/slim_test.rb
113
+ - test/static_test.rb
114
+ - test/streaming_test.rb
115
+ - test/templates_test.rb
116
+ - test/textile_test.rb
117
+ - test/views/a/in_a.str
118
+ - test/views/ascii.erb
119
+ - test/views/b/in_b.str
120
+ - test/views/calc.html.erb
121
+ - test/views/error.builder
122
+ - test/views/error.erb
123
+ - test/views/error.haml
124
+ - test/views/error.sass
125
+ - test/views/explicitly_nested.str
126
+ - test/views/foo/hello.test
127
+ - test/views/hello.builder
128
+ - test/views/hello.coffee
129
+ - test/views/hello.creole
130
+ - test/views/hello.erb
131
+ - test/views/hello.haml
132
+ - test/views/hello.less
133
+ - test/views/hello.liquid
134
+ - test/views/hello.mab
135
+ - test/views/hello.md
136
+ - test/views/hello.nokogiri
137
+ - test/views/hello.radius
138
+ - test/views/hello.rdoc
139
+ - test/views/hello.sass
140
+ - test/views/hello.scss
141
+ - test/views/hello.slim
142
+ - test/views/hello.str
143
+ - test/views/hello.test
144
+ - test/views/hello.textile
145
+ - test/views/layout2.builder
146
+ - test/views/layout2.erb
147
+ - test/views/layout2.haml
148
+ - test/views/layout2.liquid
149
+ - test/views/layout2.mab
150
+ - test/views/layout2.nokogiri
151
+ - test/views/layout2.radius
152
+ - test/views/layout2.slim
153
+ - test/views/layout2.str
154
+ - test/views/layout2.test
155
+ - test/views/nested.str
156
+ - test/views/utf8.erb
157
+ homepage: http://www.resettek.com/aldebaran
158
+ licenses: []
159
+
160
+ post_install_message:
161
+ rdoc_options:
162
+ - --line-numbers
163
+ - --inline-source
164
+ - --title
165
+ - aldebaran
166
+ - --main
167
+ - README.rdoc
168
+ require_paths:
169
+ - lib
170
+ required_ruby_version: !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ hash: 3
176
+ segments:
177
+ - 0
178
+ version: "0"
179
+ required_rubygems_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - ">="
183
+ - !ruby/object:Gem::Version
184
+ hash: 3
185
+ segments:
186
+ - 0
187
+ version: "0"
188
+ requirements: []
189
+
190
+ rubyforge_project:
191
+ rubygems_version: 1.8.5
192
+ signing_key:
193
+ specification_version: 3
194
+ summary: DSL micro-framework with mathematical constructions
195
+ test_files:
196
+ - test/aldebaran_test.rb
197
+ - test/base_test.rb
198
+ - test/builder_test.rb
199
+ - test/coffee_test.rb
200
+ - test/creole_test.rb
201
+ - test/delegator_test.rb
202
+ - test/encoding_test.rb
203
+ - test/erb_test.rb
204
+ - test/extensions_test.rb
205
+ - test/filter_test.rb
206
+ - test/haml_test.rb
207
+ - test/helpers_test.rb
208
+ - test/less_test.rb
209
+ - test/liquid_test.rb
210
+ - test/mapped_error_test.rb
211
+ - test/markaby_test.rb
212
+ - test/markdown_test.rb
213
+ - test/middleware_test.rb
214
+ - test/nokogiri_test.rb
215
+ - test/radius_test.rb
216
+ - test/rdoc_test.rb
217
+ - test/readme_test.rb
218
+ - test/request_test.rb
219
+ - test/response_test.rb
220
+ - test/result_test.rb
221
+ - test/route_added_hook_test.rb
222
+ - test/routing_test.rb
223
+ - test/sass_test.rb
224
+ - test/scss_test.rb
225
+ - test/server_test.rb
226
+ - test/settings_test.rb
227
+ - test/slim_test.rb
228
+ - test/static_test.rb
229
+ - test/streaming_test.rb
230
+ - test/templates_test.rb
231
+ - test/textile_test.rb