egalite 0.0.1

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.
Files changed (113) hide show
  1. data/.gitignore +17 -0
  2. data/README.md +91 -0
  3. data/auth/basic.rb +32 -0
  4. data/blank.rb +53 -0
  5. data/egalite.rb +742 -0
  6. data/errorconsole.rb +77 -0
  7. data/examples/simple/example.rb +39 -0
  8. data/examples/simple/pages/test.html +15 -0
  9. data/examples/simple_db/example_db.rb +103 -0
  10. data/examples/simple_db/pages/edit.html +6 -0
  11. data/helper.rb +251 -0
  12. data/keitai/keitai.rb +107 -0
  13. data/keitai/ketai.rb +11 -0
  14. data/keitai/rack/ketai/carrier/abstract.rb +131 -0
  15. data/keitai/rack/ketai/carrier/au.rb +78 -0
  16. data/keitai/rack/ketai/carrier/docomo.rb +80 -0
  17. data/keitai/rack/ketai/carrier/emoji/ausjisstrtoemojiid.rb +1391 -0
  18. data/keitai/rack/ketai/carrier/emoji/docomosjisstrtoemojiid.rb +759 -0
  19. data/keitai/rack/ketai/carrier/emoji/emojidata.rb +836 -0
  20. data/keitai/rack/ketai/carrier/emoji/softbankutf8strtoemojiid.rb +1119 -0
  21. data/keitai/rack/ketai/carrier/emoji/softbankwebcodetoutf8str.rb +499 -0
  22. data/keitai/rack/ketai/carrier/iphone.rb +8 -0
  23. data/keitai/rack/ketai/carrier/softbank.rb +82 -0
  24. data/keitai/rack/ketai/carrier.rb +17 -0
  25. data/keitai/rack/ketai/middleware.rb +24 -0
  26. data/m17n.rb +193 -0
  27. data/rack/auth/abstract/handler.rb +37 -0
  28. data/rack/auth/abstract/request.rb +37 -0
  29. data/rack/auth/basic.rb +58 -0
  30. data/rack/auth/digest/md5.rb +124 -0
  31. data/rack/auth/digest/nonce.rb +51 -0
  32. data/rack/auth/digest/params.rb +55 -0
  33. data/rack/auth/digest/request.rb +40 -0
  34. data/rack/builder.rb +80 -0
  35. data/rack/cascade.rb +41 -0
  36. data/rack/chunked.rb +49 -0
  37. data/rack/commonlogger.rb +49 -0
  38. data/rack/conditionalget.rb +47 -0
  39. data/rack/config.rb +15 -0
  40. data/rack/content_length.rb +29 -0
  41. data/rack/content_type.rb +23 -0
  42. data/rack/deflater.rb +96 -0
  43. data/rack/directory.rb +157 -0
  44. data/rack/etag.rb +32 -0
  45. data/rack/file.rb +92 -0
  46. data/rack/handler/cgi.rb +62 -0
  47. data/rack/handler/evented_mongrel.rb +8 -0
  48. data/rack/handler/fastcgi.rb +89 -0
  49. data/rack/handler/lsws.rb +63 -0
  50. data/rack/handler/mongrel.rb +90 -0
  51. data/rack/handler/scgi.rb +59 -0
  52. data/rack/handler/swiftiplied_mongrel.rb +8 -0
  53. data/rack/handler/thin.rb +18 -0
  54. data/rack/handler/webrick.rb +73 -0
  55. data/rack/handler.rb +88 -0
  56. data/rack/head.rb +19 -0
  57. data/rack/lint.rb +567 -0
  58. data/rack/lobster.rb +65 -0
  59. data/rack/lock.rb +16 -0
  60. data/rack/logger.rb +20 -0
  61. data/rack/methodoverride.rb +27 -0
  62. data/rack/mime.rb +208 -0
  63. data/rack/mock.rb +190 -0
  64. data/rack/nulllogger.rb +18 -0
  65. data/rack/recursive.rb +61 -0
  66. data/rack/reloader.rb +109 -0
  67. data/rack/request.rb +273 -0
  68. data/rack/response.rb +150 -0
  69. data/rack/rewindable_input.rb +103 -0
  70. data/rack/runtime.rb +27 -0
  71. data/rack/sendfile.rb +144 -0
  72. data/rack/server.rb +271 -0
  73. data/rack/session/abstract/id.rb +140 -0
  74. data/rack/session/cookie.rb +90 -0
  75. data/rack/session/memcache.rb +119 -0
  76. data/rack/session/pool.rb +100 -0
  77. data/rack/showexceptions.rb +349 -0
  78. data/rack/showstatus.rb +106 -0
  79. data/rack/static.rb +38 -0
  80. data/rack/urlmap.rb +55 -0
  81. data/rack/utils.rb +662 -0
  82. data/rack.rb +81 -0
  83. data/route.rb +231 -0
  84. data/sendmail.rb +222 -0
  85. data/sequel_helper.rb +20 -0
  86. data/session.rb +132 -0
  87. data/stringify_hash.rb +63 -0
  88. data/support.rb +35 -0
  89. data/template.rb +287 -0
  90. data/test/french.html +13 -0
  91. data/test/french_msg.html +3 -0
  92. data/test/m17n.txt +30 -0
  93. data/test/mobile.html +15 -0
  94. data/test/setup.rb +8 -0
  95. data/test/static/test.txt +1 -0
  96. data/test/template.html +58 -0
  97. data/test/template_inner.html +1 -0
  98. data/test/template_innerparam.html +1 -0
  99. data/test/test_auth.rb +43 -0
  100. data/test/test_blank.rb +44 -0
  101. data/test/test_csrf.rb +87 -0
  102. data/test/test_errorconsole.rb +91 -0
  103. data/test/test_handler.rb +155 -0
  104. data/test/test_helper.rb +296 -0
  105. data/test/test_keitai.rb +107 -0
  106. data/test/test_m17n.rb +129 -0
  107. data/test/test_route.rb +192 -0
  108. data/test/test_sendmail.rb +146 -0
  109. data/test/test_session.rb +83 -0
  110. data/test/test_stringify_hash.rb +67 -0
  111. data/test/test_template.rb +114 -0
  112. data/test.bat +2 -0
  113. metadata +240 -0
@@ -0,0 +1,114 @@
1
+ $LOAD_PATH << File.join(File.dirname(__FILE__), '..')
2
+
3
+ require 'rubygems'
4
+ require 'test/unit'
5
+ require 'egalite'
6
+
7
+ require 'rack/test'
8
+
9
+ require 'setup'
10
+
11
+ class TemplateController < Egalite::Controller
12
+ def get
13
+ {
14
+ :val => 'piyo',
15
+ :true => true,
16
+ :false => false,
17
+ :array => [
18
+ {:val => 1,
19
+ :true => true,
20
+ :array2 => [{:val => 2}],
21
+ :array3 => [{:val => 3, :array4 => [{:val => 41},{:val => 42}]
22
+ }]
23
+ },
24
+ {:val => 12}
25
+ ]
26
+ }
27
+ end
28
+ def inner
29
+ { :innervalue => 'mogura' }
30
+ end
31
+ def innerparam(id)
32
+ { :innervalue => "inner:#{id}_#{params[:usagi]}" }
33
+ end
34
+ def innerdelegate
35
+ delegate :action => :innerparam, :id => 5, :usagi => :kirin
36
+ end
37
+ end
38
+
39
+ class T_Template < Test::Unit::TestCase
40
+ include Rack::Test::Methods
41
+
42
+ def app
43
+ Egalite::Handler.new(:template_path => File.dirname(__FILE__))
44
+ end
45
+ def test_template
46
+ get "/template"
47
+ # puts last_response.body
48
+ assert last_response.ok?
49
+ assert last_response.body =~ /value:piyo/
50
+ assert last_response.body =~ /nestedif/
51
+ assert last_response.body =~ /iftrue/
52
+ assert last_response.body !~ /iffalse/
53
+ assert last_response.body !~ /unlesstrue/
54
+ assert last_response.body =~ /unlessfalse/
55
+ assert last_response.body =~ %r|<a\s+href='/foo/bar/1\?hoge=piyo'\s*>|
56
+ assert last_response.body =~ %r|<form action='/foo/bar/1\?hoge=piyo'\s+method='post'\s*>|
57
+ assert last_response.body =~ /mogura/
58
+ assert last_response.body =~ /inner:9_hiyoko/
59
+ assert last_response.body =~ /inner:5_kirin/
60
+ end
61
+ def test_grouptag
62
+ get "/template"
63
+ assert last_response.body =~ /group1-1: 1/
64
+ assert last_response.body =~ /group1-2: 1/
65
+ assert last_response.body =~ /group1-1: 12/
66
+ assert last_response.body =~ /group1-2: 12/
67
+ assert last_response.body =~ /group2: 2/
68
+ assert last_response.body =~ /group3-1: 3/
69
+ assert last_response.body =~ /group3-2: 3/
70
+ assert last_response.body =~ /group4: 41/
71
+ assert last_response.body =~ /group4: 42/
72
+ end
73
+ end
74
+
75
+ class T_OnHtmlLoadFilter < Test::Unit::TestCase
76
+ include Rack::Test::Methods
77
+
78
+ def app
79
+ Egalite::Handler.new(
80
+ :template_path => File.dirname(__FILE__)
81
+ )
82
+ end
83
+ def setup
84
+ TemplateController.class_eval {
85
+ def filter_on_html_load(html,path)
86
+ "filtered: #{html}\n path: #{path}"
87
+ end
88
+ }
89
+ end
90
+ def teardown
91
+ TemplateController.class_eval {
92
+ def filter_on_html_load(html,path)
93
+ html
94
+ end
95
+ }
96
+ end
97
+ def test_filter_on_html_load
98
+ get "/template"
99
+ assert last_response.ok?
100
+ assert_match /\Afiltered: <html>/, last_response.body
101
+ assert_match %r|path: template\.html\Z|, last_response.body
102
+ assert_match /value:piyo/, last_response.body
103
+ assert_match /nestedif/, last_response.body
104
+ assert_match /iftrue/, last_response.body
105
+ assert last_response.body !~ /iffalse/
106
+ assert last_response.body !~ /unlesstrue/
107
+ assert last_response.body =~ /unlessfalse/
108
+ assert last_response.body =~ %r|<a\s+href='/foo/bar/1\?hoge=piyo'\s*>|
109
+ assert last_response.body =~ %r|<form action='/foo/bar/1\?hoge=piyo'\s+method='post'\s*>|
110
+ assert last_response.body =~ /mogura/
111
+ assert last_response.body =~ /inner:9_hiyoko/
112
+ assert last_response.body =~ /inner:5_kirin/
113
+ end
114
+ end
data/test.bat ADDED
@@ -0,0 +1,2 @@
1
+
2
+ rcov -x rack test/*.rb
metadata ADDED
@@ -0,0 +1,240 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: egalite
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Shunichi Arai
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2013-06-26 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: bundler
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ hash: 9
29
+ segments:
30
+ - 1
31
+ - 3
32
+ version: "1.3"
33
+ type: :development
34
+ version_requirements: *id001
35
+ - !ruby/object:Gem::Dependency
36
+ name: rake
37
+ prerelease: false
38
+ requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 3
44
+ segments:
45
+ - 0
46
+ version: "0"
47
+ type: :development
48
+ version_requirements: *id002
49
+ - !ruby/object:Gem::Dependency
50
+ name: rack
51
+ prerelease: false
52
+ requirement: &id003 !ruby/object:Gem::Requirement
53
+ none: false
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 3
58
+ segments:
59
+ - 0
60
+ version: "0"
61
+ type: :runtime
62
+ version_requirements: *id003
63
+ description: Egalite - yet another web application framework. see description at https://github.com/araipiyo/egalite
64
+ email:
65
+ - arai@mellowtone.co.jp
66
+ executables: []
67
+
68
+ extensions: []
69
+
70
+ extra_rdoc_files: []
71
+
72
+ files:
73
+ - .gitignore
74
+ - README.md
75
+ - auth/basic.rb
76
+ - blank.rb
77
+ - egalite.rb
78
+ - errorconsole.rb
79
+ - examples/simple/example.rb
80
+ - examples/simple/pages/test.html
81
+ - examples/simple_db/example_db.rb
82
+ - examples/simple_db/pages/edit.html
83
+ - helper.rb
84
+ - keitai/keitai.rb
85
+ - keitai/ketai.rb
86
+ - keitai/rack/ketai/carrier.rb
87
+ - keitai/rack/ketai/carrier/abstract.rb
88
+ - keitai/rack/ketai/carrier/au.rb
89
+ - keitai/rack/ketai/carrier/docomo.rb
90
+ - keitai/rack/ketai/carrier/emoji/ausjisstrtoemojiid.rb
91
+ - keitai/rack/ketai/carrier/emoji/docomosjisstrtoemojiid.rb
92
+ - keitai/rack/ketai/carrier/emoji/emojidata.rb
93
+ - keitai/rack/ketai/carrier/emoji/softbankutf8strtoemojiid.rb
94
+ - keitai/rack/ketai/carrier/emoji/softbankwebcodetoutf8str.rb
95
+ - keitai/rack/ketai/carrier/iphone.rb
96
+ - keitai/rack/ketai/carrier/softbank.rb
97
+ - keitai/rack/ketai/middleware.rb
98
+ - m17n.rb
99
+ - rack.rb
100
+ - rack/auth/abstract/handler.rb
101
+ - rack/auth/abstract/request.rb
102
+ - rack/auth/basic.rb
103
+ - rack/auth/digest/md5.rb
104
+ - rack/auth/digest/nonce.rb
105
+ - rack/auth/digest/params.rb
106
+ - rack/auth/digest/request.rb
107
+ - rack/builder.rb
108
+ - rack/cascade.rb
109
+ - rack/chunked.rb
110
+ - rack/commonlogger.rb
111
+ - rack/conditionalget.rb
112
+ - rack/config.rb
113
+ - rack/content_length.rb
114
+ - rack/content_type.rb
115
+ - rack/deflater.rb
116
+ - rack/directory.rb
117
+ - rack/etag.rb
118
+ - rack/file.rb
119
+ - rack/handler.rb
120
+ - rack/handler/cgi.rb
121
+ - rack/handler/evented_mongrel.rb
122
+ - rack/handler/fastcgi.rb
123
+ - rack/handler/lsws.rb
124
+ - rack/handler/mongrel.rb
125
+ - rack/handler/scgi.rb
126
+ - rack/handler/swiftiplied_mongrel.rb
127
+ - rack/handler/thin.rb
128
+ - rack/handler/webrick.rb
129
+ - rack/head.rb
130
+ - rack/lint.rb
131
+ - rack/lobster.rb
132
+ - rack/lock.rb
133
+ - rack/logger.rb
134
+ - rack/methodoverride.rb
135
+ - rack/mime.rb
136
+ - rack/mock.rb
137
+ - rack/nulllogger.rb
138
+ - rack/recursive.rb
139
+ - rack/reloader.rb
140
+ - rack/request.rb
141
+ - rack/response.rb
142
+ - rack/rewindable_input.rb
143
+ - rack/runtime.rb
144
+ - rack/sendfile.rb
145
+ - rack/server.rb
146
+ - rack/session/abstract/id.rb
147
+ - rack/session/cookie.rb
148
+ - rack/session/memcache.rb
149
+ - rack/session/pool.rb
150
+ - rack/showexceptions.rb
151
+ - rack/showstatus.rb
152
+ - rack/static.rb
153
+ - rack/urlmap.rb
154
+ - rack/utils.rb
155
+ - route.rb
156
+ - sendmail.rb
157
+ - sequel_helper.rb
158
+ - session.rb
159
+ - stringify_hash.rb
160
+ - support.rb
161
+ - template.rb
162
+ - test.bat
163
+ - test/french.html
164
+ - test/french_msg.html
165
+ - test/m17n.txt
166
+ - test/mobile.html
167
+ - test/setup.rb
168
+ - test/static/test.txt
169
+ - test/template.html
170
+ - test/template_inner.html
171
+ - test/template_innerparam.html
172
+ - test/test_auth.rb
173
+ - test/test_blank.rb
174
+ - test/test_csrf.rb
175
+ - test/test_errorconsole.rb
176
+ - test/test_handler.rb
177
+ - test/test_helper.rb
178
+ - test/test_keitai.rb
179
+ - test/test_m17n.rb
180
+ - test/test_route.rb
181
+ - test/test_sendmail.rb
182
+ - test/test_session.rb
183
+ - test/test_stringify_hash.rb
184
+ - test/test_template.rb
185
+ homepage: https://github.com/araipiyo/egalite
186
+ licenses:
187
+ - MIT
188
+ post_install_message:
189
+ rdoc_options: []
190
+
191
+ require_paths:
192
+ - lib
193
+ required_ruby_version: !ruby/object:Gem::Requirement
194
+ none: false
195
+ requirements:
196
+ - - ">="
197
+ - !ruby/object:Gem::Version
198
+ hash: 3
199
+ segments:
200
+ - 0
201
+ version: "0"
202
+ required_rubygems_version: !ruby/object:Gem::Requirement
203
+ none: false
204
+ requirements:
205
+ - - ">="
206
+ - !ruby/object:Gem::Version
207
+ hash: 3
208
+ segments:
209
+ - 0
210
+ version: "0"
211
+ requirements: []
212
+
213
+ rubyforge_project:
214
+ rubygems_version: 1.8.24
215
+ signing_key:
216
+ specification_version: 3
217
+ summary: Egalite - yet another web application framework.
218
+ test_files:
219
+ - test/french.html
220
+ - test/french_msg.html
221
+ - test/m17n.txt
222
+ - test/mobile.html
223
+ - test/setup.rb
224
+ - test/static/test.txt
225
+ - test/template.html
226
+ - test/template_inner.html
227
+ - test/template_innerparam.html
228
+ - test/test_auth.rb
229
+ - test/test_blank.rb
230
+ - test/test_csrf.rb
231
+ - test/test_errorconsole.rb
232
+ - test/test_handler.rb
233
+ - test/test_helper.rb
234
+ - test/test_keitai.rb
235
+ - test/test_m17n.rb
236
+ - test/test_route.rb
237
+ - test/test_sendmail.rb
238
+ - test/test_session.rb
239
+ - test/test_stringify_hash.rb
240
+ - test/test_template.rb