rails_bridge 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. data/.rspec +1 -0
  2. data/Gemfile +21 -0
  3. data/Gemfile.lock +154 -0
  4. data/LICENSE +13 -0
  5. data/README.rdoc +244 -0
  6. data/Rakefile +46 -0
  7. data/VERSION +1 -0
  8. data/app/controllers/rails_bridge/layout_bridge_controller.rb +43 -0
  9. data/app/views/content.html.erb +13 -0
  10. data/app/views/rails_bridge/layout_bridge/index.html.erb +6 -0
  11. data/config/routes.rb +11 -0
  12. data/lib/generators/content_bridge/USAGE +12 -0
  13. data/lib/generators/content_bridge/content_bridge_generator.rb +9 -0
  14. data/lib/generators/content_bridge/templates/content_bridge.rb +47 -0
  15. data/lib/rails_bridge.rb +16 -0
  16. data/lib/rails_bridge/content_bridge.rb +137 -0
  17. data/lib/rails_bridge/content_request.rb +100 -0
  18. data/lib/rails_bridge/engine.rb +34 -0
  19. data/rails_bridge.gemspec +186 -0
  20. data/script/console +2 -0
  21. data/spec/dummy/.rspec +1 -0
  22. data/spec/dummy/Rakefile +7 -0
  23. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  24. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  25. data/spec/dummy/app/rails_bridge/content_bridges/twitter_content_bridge.rb +26 -0
  26. data/spec/dummy/app/rails_bridge/layout_bridge/layouts/application/content.html.erb +1 -0
  27. data/spec/dummy/app/rails_bridge/layout_bridge/views/layouts/_partial.html.erb +1 -0
  28. data/spec/dummy/app/views/layouts/_partial.html.erb +1 -0
  29. data/spec/dummy/app/views/layouts/alternative.html.erb +0 -0
  30. data/spec/dummy/app/views/layouts/application.html.erb +17 -0
  31. data/spec/dummy/autotest/discover.rb +2 -0
  32. data/spec/dummy/config.ru +4 -0
  33. data/spec/dummy/config/application.rb +44 -0
  34. data/spec/dummy/config/boot.rb +10 -0
  35. data/spec/dummy/config/database.yml +22 -0
  36. data/spec/dummy/config/environment.rb +5 -0
  37. data/spec/dummy/config/environments/development.rb +26 -0
  38. data/spec/dummy/config/environments/production.rb +49 -0
  39. data/spec/dummy/config/environments/test.rb +35 -0
  40. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  41. data/spec/dummy/config/initializers/inflections.rb +10 -0
  42. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  43. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  44. data/spec/dummy/config/initializers/session_store.rb +8 -0
  45. data/spec/dummy/config/locales/en.yml +5 -0
  46. data/spec/dummy/config/routes.rb +2 -0
  47. data/spec/dummy/db/development.sqlite3 +0 -0
  48. data/spec/dummy/db/test.sqlite3 +0 -0
  49. data/spec/dummy/public/404.html +26 -0
  50. data/spec/dummy/public/422.html +26 -0
  51. data/spec/dummy/public/500.html +26 -0
  52. data/spec/dummy/public/favicon.ico +0 -0
  53. data/spec/dummy/public/javascripts/application.js +2 -0
  54. data/spec/dummy/public/javascripts/controls.js +965 -0
  55. data/spec/dummy/public/javascripts/dragdrop.js +974 -0
  56. data/spec/dummy/public/javascripts/effects.js +1123 -0
  57. data/spec/dummy/public/javascripts/prototype.js +6001 -0
  58. data/spec/dummy/public/javascripts/rails.js +175 -0
  59. data/spec/dummy/public/stylesheets/.gitkeep +0 -0
  60. data/spec/dummy/script/rails +6 -0
  61. data/spec/dummy/spec/spec_helper.rb +33 -0
  62. data/spec/integration/content_bridge_spec.rb +82 -0
  63. data/spec/integration/engine_spec.rb +25 -0
  64. data/spec/requests/layout_bridge_controller_spec.rb +16 -0
  65. data/spec/spec_helper.rb +62 -0
  66. data/spec/support/content_bridge_helper.rb +26 -0
  67. data/spec/support/layout_bridge_helper.rb +2 -0
  68. data/spec/support/rails_bridge_helper.rb +12 -0
  69. data/spec/support/test_server_helper.rb +125 -0
  70. data/spec/unit/content_bridge_spec.rb +59 -0
  71. data/spec/unit/content_request_spec.rb +84 -0
  72. data/spec/unit/rails_bridge_spec.rb +11 -0
  73. metadata +380 -0
@@ -0,0 +1,125 @@
1
+ require 'rubygems'
2
+ require 'eventmachine'
3
+ require 'cgi'
4
+ require 'pp'
5
+ require 'logger'
6
+
7
+ module HTTPHandler
8
+ def extract_query_params( query )
9
+ query = CGI::unescape( query )
10
+ pairs = query.split("&")
11
+ pairs.inject({}){|hash, pair| k,v=pair.split('='); v.nil? ? hash : (hash[k.to_sym]=v;hash)}
12
+ end
13
+
14
+ def http_request? data
15
+ http_request = nil
16
+ matches = data.split("\n").first.match(/(\w*) ([^\?]*)\??([^#]*)#?(.*) HTTP\/1\.1/)
17
+ if matches
18
+ http_request = {}
19
+ http_request[:request] = matches[0]
20
+ captures = matches.captures
21
+ http_request[:command] = captures.shift
22
+ http_request[:path] = captures.shift
23
+ http_request[:query_params] = extract_query_params(captures.shift)
24
+ http_request[:anchor] = captures.shift
25
+ end
26
+ # pp http_request
27
+ http_request
28
+ end
29
+
30
+ def process_http_request( http_request )
31
+ if sleep_time = http_request[:query_params][:sleep]
32
+ sleep( sleep_time.to_i )
33
+ end
34
+ unless return_data = http_request[:query_params][:return_data]
35
+ return_data = "Your HTTP Request(#{http_request[:request]}) was processed by the TestServer."
36
+ end
37
+ http_response(return_data)
38
+ end
39
+
40
+ def http_response( return_data, code=200 )
41
+ headers = <<-TXT
42
+ HTTP/1.1 #{ code } OK
43
+ Connection: Keep-Alive
44
+ Content-Type: text/html; charset=utf-8
45
+
46
+ TXT
47
+ headers + return_data
48
+ end
49
+ end
50
+
51
+ module TestServerModule
52
+
53
+ def self.included(base)
54
+ base.send(:include, HTTPHandler) unless base.include?( HTTPHandler )
55
+ end
56
+
57
+ def post_init
58
+ puts 'got connection'
59
+ end
60
+
61
+ def receive_data(data)
62
+ puts "Got data:\n#{data}"
63
+ if http_request = http_request?( data )
64
+ return_data = process_http_request( http_request )
65
+ else
66
+ return_data = "Your request was processed by the TestServer."
67
+ end
68
+ send_data(return_data)
69
+ puts "Sent: #{return_data}"
70
+ close_connection_after_writing
71
+ end
72
+
73
+ def puts string
74
+ TestServer.logger.debug( string )
75
+ end
76
+
77
+ end
78
+
79
+
80
+ class TestServer
81
+ @@logger = Logger.new(STDOUT)
82
+ @@thread = nil
83
+ PORT = 1234
84
+
85
+ def self.puts string
86
+ self.logger.debug( string )
87
+ end
88
+
89
+ def self.logger
90
+ @@logger
91
+ end
92
+
93
+ def self.logger= logger
94
+ @@logger = logger
95
+ end
96
+
97
+ def self.startup( port=PORT )
98
+ return if @@thread
99
+ @@thread = Thread.new do
100
+ begin
101
+ EM.run do
102
+ EM.start_server "0.0.0.0", port, TestServerModule
103
+ end
104
+ rescue Interrupt
105
+ end
106
+ end
107
+ puts "TestServer listening on port #{port}."
108
+ end
109
+
110
+ def self.shutdown
111
+ return unless @@thread
112
+ @@thread.kill
113
+ @@thread.join
114
+ puts "TestServer stopped."
115
+ @@thread = nil
116
+ end
117
+ end
118
+
119
+ if __FILE__ == $0
120
+ require 'typhoeus'
121
+ TestServer.startup
122
+ response = Typhoeus::Request.get("http://localhost:1234/hi?sleep=1&return_data=verified")
123
+ puts "response: #{response.inspect}"
124
+ TestServer.shutdown
125
+ end
@@ -0,0 +1,59 @@
1
+ require File.join(File.dirname(__FILE__),'..','spec_helper')
2
+
3
+ describe RailsBridge::ContentBridge do
4
+
5
+ include ContentBridgeSpecHelper
6
+
7
+ before(:all) do
8
+ ContentBridgeTest.request_timeout = 1
9
+ end
10
+
11
+ after(:all) do
12
+ ContentBridgeTest.request_timeout = 1000
13
+ end
14
+
15
+ it "requires content_bridge name to be a symbol", :focus=>false do
16
+ lambda {
17
+ ContentBridgeTest.content_request 'name'
18
+ }.should raise_error RuntimeError
19
+ end
20
+
21
+ it "allows block level setting of defined content request's attributes ", :focus=>false do
22
+ request = ContentBridgeTest.content_requests[:chang]
23
+ request.protocol.should == DEFAULT_REQUEST_VALUES[:protocol]
24
+ request.host.should == DEFAULT_REQUEST_VALUES[:host]
25
+ request.port.should == DEFAULT_REQUEST_VALUES[:port]
26
+ request.params.should == DEFAULT_REQUEST_VALUES[:params]
27
+ request.default_content.should == DEFAULT_REQUEST_VALUES[:default_content]
28
+ end
29
+
30
+ it "automatically defines method for content_request", :focus=>false do
31
+ lambda{ContentBridgeTest.get_chang}.should_not raise_error Exception
32
+ end
33
+
34
+ it "returns request's default content when defined", :focus=>false do
35
+ ContentBridgeTest.get_chang.should == DEFAULT_REQUEST_VALUES[:default_content]
36
+ end
37
+
38
+ it "returns bridge's default content when request's is undefined", :focus=>false do
39
+ ContentBridgeTest.content_requests[:chang].default_content = nil
40
+ ContentBridgeTest.get_chang.should == ContentBridgeTest.default_content
41
+ ContentBridgeTest.content_requests[:chang].default_content = DEFAULT_REQUEST_VALUES[:default_content]
42
+ end
43
+
44
+ it "request options can be overriden at request time", :focus=>false do
45
+ ContentBridgeTest.get_chang(:default_content=>"YADA YADA").should == "YADA YADA"
46
+ end
47
+
48
+ it "subclassing a ContentBridge does not change parent class' attributes", :focus=>false do
49
+ class ContentBridgeTest2 < ContentBridgeTest
50
+ self.default_content = "Some other content."
51
+ end
52
+ ContentBridgeTest2.default_content.should == "Some other content."
53
+ ContentBridgeTest.content_requests[:chang].default_content = nil
54
+ ContentBridgeTest.get_chang.should == ContentBridgeTest.default_content
55
+ ContentBridgeTest2.get_chang.should == "Some other content."
56
+ ContentBridgeTest.content_requests[:chang].default_content = DEFAULT_REQUEST_VALUES[:default_content]
57
+ end
58
+
59
+ end
@@ -0,0 +1,84 @@
1
+ require File.join(File.dirname(__FILE__),'..','spec_helper')
2
+
3
+ describe RailsBridge::ContentRequest do
4
+
5
+ DEFAULT_OPTIONS = {
6
+ :protocol => 'httpq',
7
+ :host => 'localhosty',
8
+ :port => 5678,
9
+ :path => '/path',
10
+ :params => {:p1=>'p1'},
11
+ :default_content => 'Default Content'
12
+ }
13
+
14
+ def default_options; DEFAULT_OPTIONS; end
15
+
16
+ it "initializes with options", :focus=>false do
17
+ request = RailsBridge::ContentRequest.new( default_options )
18
+ request.protocol.should == default_options[:protocol]
19
+ request.host.should == default_options[:host]
20
+ request.port.should == default_options[:port]
21
+ request.params.should == default_options[:params]
22
+ request.default_content.should == default_options[:default_content]
23
+ end
24
+
25
+ it "the accessors work", :focus=>false do
26
+ request = RailsBridge::ContentRequest.new
27
+ default_options.each do |k,v|
28
+ request.send("#{k}=".to_sym, v)
29
+ end
30
+ request.protocol.should == default_options[:protocol]
31
+ request.host.should == default_options[:host]
32
+ request.port.should == default_options[:port]
33
+ request.params.should == default_options[:params]
34
+ request.default_content.should == default_options[:default_content]
35
+ end
36
+
37
+ it "initializes its URL attributes components from :url when specified", :focus=>false do
38
+ request = RailsBridge::ContentRequest.new( {:url=>'http://localhost:5678/path?p1=p1'} )
39
+ request.url.should == 'http://localhost:5678/path'
40
+ request.params.should == {:p1=>'p1'}
41
+
42
+ request = RailsBridge::ContentRequest.new
43
+ request.url = "http://server.com:8080/some/path"
44
+ request.params = {:param1=>'a value', :param2=>'another value'}
45
+ request.url.should == 'http://server.com:8080/some/path'
46
+ request.params.should == {:param1=>'a value', :param2=>'another value'}
47
+
48
+ end
49
+
50
+ it "returns a properly formed URL without params", :focus=>false do
51
+ request = RailsBridge::ContentRequest.new( default_options )
52
+ request.url.should == 'httpq://localhosty:5678/path'
53
+ end
54
+
55
+ it ":on_success stores a block when passed and returns it when no block is passed", :focus=>false do
56
+ request = RailsBridge::ContentRequest.new( default_options )
57
+ executed = "concat"
58
+ request.on_success do |response|
59
+ response + "enated"
60
+ end
61
+ executed = request.on_success.call( executed )
62
+ executed.should == "concatenated"
63
+ end
64
+
65
+ it "uses the bridges attributes when none are specified on the request" do
66
+ class ContentBridgeTest3 < RailsBridge::ContentBridge
67
+ self.protocol = DEFAULT_OPTIONS[:protocol]
68
+ self.host = DEFAULT_OPTIONS[:host]
69
+ self.port = DEFAULT_OPTIONS[:port]
70
+ self.path = DEFAULT_OPTIONS[:path]
71
+ self.params = DEFAULT_OPTIONS[:params]
72
+ self.default_content = DEFAULT_OPTIONS[:default_content]
73
+ content_request :test
74
+ end
75
+ test_request = ContentBridgeTest3.content_requests[:test]
76
+ test_request.protocol.should == DEFAULT_OPTIONS[:protocol]
77
+ test_request.host.should == DEFAULT_OPTIONS[:host]
78
+ test_request.port.should == DEFAULT_OPTIONS[:port]
79
+ test_request.path.should == DEFAULT_OPTIONS[:path]
80
+ test_request.params.should == DEFAULT_OPTIONS[:params]
81
+ test_request.url.should == "httpq://localhosty:5678/path"
82
+ end
83
+
84
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe RailsBridge do
4
+ it "exists" do
5
+ RailsBridge.kind_of?( Module ).should == true
6
+ end
7
+
8
+ it "loads necessary classes", :focus=>false do
9
+ RailsBridge::ContentBridge.new.is_a?( RailsBridge::ContentBridge ).should == true
10
+ end
11
+ end
metadata ADDED
@@ -0,0 +1,380 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rails_bridge
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 0
8
+ - 5
9
+ version: 0.0.5
10
+ platform: ruby
11
+ authors:
12
+ - shock
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2011-01-04 00:00:00 -06:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
21
+ name: activesupport
22
+ requirement: &id001 !ruby/object:Gem::Requirement
23
+ none: false
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ type: :runtime
31
+ prerelease: false
32
+ version_requirements: *id001
33
+ - !ruby/object:Gem::Dependency
34
+ name: typhoeus
35
+ requirement: &id002 !ruby/object:Gem::Requirement
36
+ none: false
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ segments:
41
+ - 0
42
+ - 2
43
+ - 0
44
+ version: 0.2.0
45
+ type: :runtime
46
+ prerelease: false
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: rails_bridge
50
+ requirement: &id003 !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 0
57
+ version: "0"
58
+ type: :runtime
59
+ prerelease: false
60
+ version_requirements: *id003
61
+ - !ruby/object:Gem::Dependency
62
+ name: wdd-ruby-ext
63
+ requirement: &id004 !ruby/object:Gem::Requirement
64
+ none: false
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ segments:
69
+ - 0
70
+ - 2
71
+ - 3
72
+ version: 0.2.3
73
+ type: :runtime
74
+ prerelease: false
75
+ version_requirements: *id004
76
+ - !ruby/object:Gem::Dependency
77
+ name: rails
78
+ requirement: &id005 !ruby/object:Gem::Requirement
79
+ none: false
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ segments:
84
+ - 3
85
+ - 0
86
+ version: "3.0"
87
+ type: :development
88
+ prerelease: false
89
+ version_requirements: *id005
90
+ - !ruby/object:Gem::Dependency
91
+ name: jeweler
92
+ requirement: &id006 !ruby/object:Gem::Requirement
93
+ none: false
94
+ requirements:
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ segments:
98
+ - 0
99
+ version: "0"
100
+ type: :development
101
+ prerelease: false
102
+ version_requirements: *id006
103
+ - !ruby/object:Gem::Dependency
104
+ name: sqlite3-ruby
105
+ requirement: &id007 !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ segments:
111
+ - 0
112
+ version: "0"
113
+ type: :development
114
+ prerelease: false
115
+ version_requirements: *id007
116
+ - !ruby/object:Gem::Dependency
117
+ name: capybara
118
+ requirement: &id008 !ruby/object:Gem::Requirement
119
+ none: false
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ segments:
124
+ - 0
125
+ version: "0"
126
+ type: :development
127
+ prerelease: false
128
+ version_requirements: *id008
129
+ - !ruby/object:Gem::Dependency
130
+ name: rspec
131
+ requirement: &id009 !ruby/object:Gem::Requirement
132
+ none: false
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ segments:
137
+ - 0
138
+ version: "0"
139
+ type: :development
140
+ prerelease: false
141
+ version_requirements: *id009
142
+ - !ruby/object:Gem::Dependency
143
+ name: rspec-rails
144
+ requirement: &id010 !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ segments:
150
+ - 0
151
+ version: "0"
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: *id010
155
+ - !ruby/object:Gem::Dependency
156
+ name: eventmachine
157
+ requirement: &id011 !ruby/object:Gem::Requirement
158
+ none: false
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ segments:
163
+ - 0
164
+ version: "0"
165
+ type: :development
166
+ prerelease: false
167
+ version_requirements: *id011
168
+ - !ruby/object:Gem::Dependency
169
+ name: dalli
170
+ requirement: &id012 !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ segments:
176
+ - 0
177
+ version: "0"
178
+ type: :development
179
+ prerelease: false
180
+ version_requirements: *id012
181
+ - !ruby/object:Gem::Dependency
182
+ name: syntax
183
+ requirement: &id013 !ruby/object:Gem::Requirement
184
+ none: false
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ segments:
189
+ - 0
190
+ version: "0"
191
+ type: :development
192
+ prerelease: false
193
+ version_requirements: *id013
194
+ - !ruby/object:Gem::Dependency
195
+ name: tm_helper
196
+ requirement: &id014 !ruby/object:Gem::Requirement
197
+ none: false
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ segments:
202
+ - 0
203
+ version: "0"
204
+ type: :development
205
+ prerelease: false
206
+ version_requirements: *id014
207
+ - !ruby/object:Gem::Dependency
208
+ name: typhoeus
209
+ requirement: &id015 !ruby/object:Gem::Requirement
210
+ none: false
211
+ requirements:
212
+ - - ~>
213
+ - !ruby/object:Gem::Version
214
+ segments:
215
+ - 0
216
+ - 2
217
+ - 0
218
+ version: 0.2.0
219
+ type: :development
220
+ prerelease: false
221
+ version_requirements: *id015
222
+ - !ruby/object:Gem::Dependency
223
+ name: activesupport
224
+ requirement: &id016 !ruby/object:Gem::Requirement
225
+ none: false
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ segments:
230
+ - 2
231
+ - 3
232
+ - 8
233
+ version: 2.3.8
234
+ type: :development
235
+ prerelease: false
236
+ version_requirements: *id016
237
+ description: Allows for easy embedding of content from a remote HTTP server and exporting of the Rails HTML layout into another template.
238
+ email: billdoughty@capitalthought.com
239
+ executables: []
240
+
241
+ extensions: []
242
+
243
+ extra_rdoc_files:
244
+ - LICENSE
245
+ - README.rdoc
246
+ files:
247
+ - .rspec
248
+ - Gemfile
249
+ - Gemfile.lock
250
+ - LICENSE
251
+ - README.rdoc
252
+ - Rakefile
253
+ - VERSION
254
+ - app/controllers/rails_bridge/layout_bridge_controller.rb
255
+ - app/views/content.html.erb
256
+ - app/views/rails_bridge/layout_bridge/index.html.erb
257
+ - config/routes.rb
258
+ - lib/generators/content_bridge/USAGE
259
+ - lib/generators/content_bridge/content_bridge_generator.rb
260
+ - lib/generators/content_bridge/templates/content_bridge.rb
261
+ - lib/rails_bridge.rb
262
+ - lib/rails_bridge/content_bridge.rb
263
+ - lib/rails_bridge/content_request.rb
264
+ - lib/rails_bridge/engine.rb
265
+ - rails_bridge.gemspec
266
+ - script/console
267
+ - spec/dummy/.rspec
268
+ - spec/dummy/Rakefile
269
+ - spec/dummy/app/controllers/application_controller.rb
270
+ - spec/dummy/app/helpers/application_helper.rb
271
+ - spec/dummy/app/rails_bridge/content_bridges/twitter_content_bridge.rb
272
+ - spec/dummy/app/rails_bridge/layout_bridge/layouts/application/content.html.erb
273
+ - spec/dummy/app/rails_bridge/layout_bridge/views/layouts/_partial.html.erb
274
+ - spec/dummy/app/views/layouts/_partial.html.erb
275
+ - spec/dummy/app/views/layouts/alternative.html.erb
276
+ - spec/dummy/app/views/layouts/application.html.erb
277
+ - spec/dummy/autotest/discover.rb
278
+ - spec/dummy/config.ru
279
+ - spec/dummy/config/application.rb
280
+ - spec/dummy/config/boot.rb
281
+ - spec/dummy/config/database.yml
282
+ - spec/dummy/config/environment.rb
283
+ - spec/dummy/config/environments/development.rb
284
+ - spec/dummy/config/environments/production.rb
285
+ - spec/dummy/config/environments/test.rb
286
+ - spec/dummy/config/initializers/backtrace_silencers.rb
287
+ - spec/dummy/config/initializers/inflections.rb
288
+ - spec/dummy/config/initializers/mime_types.rb
289
+ - spec/dummy/config/initializers/secret_token.rb
290
+ - spec/dummy/config/initializers/session_store.rb
291
+ - spec/dummy/config/locales/en.yml
292
+ - spec/dummy/config/routes.rb
293
+ - spec/dummy/db/development.sqlite3
294
+ - spec/dummy/db/test.sqlite3
295
+ - spec/dummy/public/404.html
296
+ - spec/dummy/public/422.html
297
+ - spec/dummy/public/500.html
298
+ - spec/dummy/public/favicon.ico
299
+ - spec/dummy/public/javascripts/application.js
300
+ - spec/dummy/public/javascripts/controls.js
301
+ - spec/dummy/public/javascripts/dragdrop.js
302
+ - spec/dummy/public/javascripts/effects.js
303
+ - spec/dummy/public/javascripts/prototype.js
304
+ - spec/dummy/public/javascripts/rails.js
305
+ - spec/dummy/public/stylesheets/.gitkeep
306
+ - spec/dummy/script/rails
307
+ - spec/dummy/spec/spec_helper.rb
308
+ - spec/integration/content_bridge_spec.rb
309
+ - spec/integration/engine_spec.rb
310
+ - spec/requests/layout_bridge_controller_spec.rb
311
+ - spec/spec_helper.rb
312
+ - spec/support/content_bridge_helper.rb
313
+ - spec/support/layout_bridge_helper.rb
314
+ - spec/support/rails_bridge_helper.rb
315
+ - spec/support/test_server_helper.rb
316
+ - spec/unit/content_bridge_spec.rb
317
+ - spec/unit/content_request_spec.rb
318
+ - spec/unit/rails_bridge_spec.rb
319
+ has_rdoc: true
320
+ homepage: http://github.com/capitalthought/rails_bridge
321
+ licenses: []
322
+
323
+ post_install_message:
324
+ rdoc_options: []
325
+
326
+ require_paths:
327
+ - lib
328
+ required_ruby_version: !ruby/object:Gem::Requirement
329
+ none: false
330
+ requirements:
331
+ - - ">="
332
+ - !ruby/object:Gem::Version
333
+ hash: -3052608585109228459
334
+ segments:
335
+ - 0
336
+ version: "0"
337
+ required_rubygems_version: !ruby/object:Gem::Requirement
338
+ none: false
339
+ requirements:
340
+ - - ">="
341
+ - !ruby/object:Gem::Version
342
+ segments:
343
+ - 0
344
+ version: "0"
345
+ requirements: []
346
+
347
+ rubyforge_project:
348
+ rubygems_version: 1.3.7
349
+ signing_key:
350
+ specification_version: 3
351
+ summary: Bridges Rails with an external application.
352
+ test_files:
353
+ - spec/dummy/app/controllers/application_controller.rb
354
+ - spec/dummy/app/helpers/application_helper.rb
355
+ - spec/dummy/app/rails_bridge/content_bridges/twitter_content_bridge.rb
356
+ - spec/dummy/autotest/discover.rb
357
+ - spec/dummy/config/application.rb
358
+ - spec/dummy/config/boot.rb
359
+ - spec/dummy/config/environment.rb
360
+ - spec/dummy/config/environments/development.rb
361
+ - spec/dummy/config/environments/production.rb
362
+ - spec/dummy/config/environments/test.rb
363
+ - spec/dummy/config/initializers/backtrace_silencers.rb
364
+ - spec/dummy/config/initializers/inflections.rb
365
+ - spec/dummy/config/initializers/mime_types.rb
366
+ - spec/dummy/config/initializers/secret_token.rb
367
+ - spec/dummy/config/initializers/session_store.rb
368
+ - spec/dummy/config/routes.rb
369
+ - spec/dummy/spec/spec_helper.rb
370
+ - spec/integration/content_bridge_spec.rb
371
+ - spec/integration/engine_spec.rb
372
+ - spec/requests/layout_bridge_controller_spec.rb
373
+ - spec/spec_helper.rb
374
+ - spec/support/content_bridge_helper.rb
375
+ - spec/support/layout_bridge_helper.rb
376
+ - spec/support/rails_bridge_helper.rb
377
+ - spec/support/test_server_helper.rb
378
+ - spec/unit/content_bridge_spec.rb
379
+ - spec/unit/content_request_spec.rb
380
+ - spec/unit/rails_bridge_spec.rb