activity_consumer 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.rdoc +3 -0
  4. data/Rakefile +15 -0
  5. data/app/assets/images/activity_consumer/cross.png +0 -0
  6. data/app/assets/images/activity_consumer/tick.png +0 -0
  7. data/app/assets/javascripts/activity_consumer/application.js +15 -0
  8. data/app/assets/stylesheets/activity_consumer/application.scss +43 -0
  9. data/app/assets/stylesheets/activity_consumer/table.scss +10 -0
  10. data/app/controllers/activity_consumer/application_controller.rb +3 -0
  11. data/app/controllers/activity_consumer/remote_activities_controller.rb +63 -0
  12. data/app/helpers/activity_consumer/application_helper.rb +4 -0
  13. data/app/models/activity_consumer/remote_activity.rb +21 -0
  14. data/app/services/activity_consumer/configuration.rb +24 -0
  15. data/app/services/activity_consumer/remote_activity_importer.rb +40 -0
  16. data/app/services/activity_consumer/remote_activity_rest_client.rb +77 -0
  17. data/app/views/activity_consumer/remote_activities/index.html.erb +32 -0
  18. data/app/views/activity_consumer/remote_activities/show.html.erb +37 -0
  19. data/app/views/layouts/activity_consumer/application.html.erb +17 -0
  20. data/config/locales/de.yml +18 -0
  21. data/config/routes.rb +9 -0
  22. data/db/migrate/20130725170303_create_activity_consumer_remote_activities.rb +16 -0
  23. data/db/migrate/20130817171648_add_etag_to_remote_activities.rb +5 -0
  24. data/lib/activity_consumer/engine.rb +13 -0
  25. data/lib/activity_consumer/version.rb +3 -0
  26. data/lib/activity_consumer.rb +26 -0
  27. data/lib/tasks/activity_consumer_tasks.rake +4 -0
  28. data/spec/controllers/activity_consumer/remote_activities_controller_spec.rb +72 -0
  29. data/spec/dummy/README.rdoc +261 -0
  30. data/spec/dummy/Rakefile +7 -0
  31. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  32. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  33. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  34. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  35. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  36. data/spec/dummy/config/application.rb +67 -0
  37. data/spec/dummy/config/boot.rb +10 -0
  38. data/spec/dummy/config/database.yml +25 -0
  39. data/spec/dummy/config/environment.rb +5 -0
  40. data/spec/dummy/config/environments/development.rb +37 -0
  41. data/spec/dummy/config/environments/production.rb +67 -0
  42. data/spec/dummy/config/environments/test.rb +37 -0
  43. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  44. data/spec/dummy/config/initializers/inflections.rb +15 -0
  45. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  46. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  47. data/spec/dummy/config/initializers/session_store.rb +8 -0
  48. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  49. data/spec/dummy/config/locales/en.yml +5 -0
  50. data/spec/dummy/config/routes.rb +4 -0
  51. data/spec/dummy/config.ru +4 -0
  52. data/spec/dummy/db/development.sqlite3 +0 -0
  53. data/spec/dummy/db/schema.rb +28 -0
  54. data/spec/dummy/db/test.sqlite3 +0 -0
  55. data/spec/dummy/log/development.log +295 -0
  56. data/spec/dummy/log/test.log +45193 -0
  57. data/spec/dummy/public/404.html +26 -0
  58. data/spec/dummy/public/422.html +26 -0
  59. data/spec/dummy/public/500.html +25 -0
  60. data/spec/dummy/public/favicon.ico +0 -0
  61. data/spec/dummy/script/rails +6 -0
  62. data/spec/dummy/tmp/cache/assets/CB9/640/sprockets%2F055df7094ed3c73903db121ec7947478 +0 -0
  63. data/spec/dummy/tmp/cache/assets/CDD/880/sprockets%2F0994815802d4bd56bf29a9c53bab6520 +0 -0
  64. data/spec/dummy/tmp/cache/assets/CEF/070/sprockets%2F833e7786517acf485f377186a1eb1ea6 +0 -0
  65. data/spec/dummy/tmp/cache/assets/CF3/F30/sprockets%2Fc0fff716a78291e8e6e3659a50b59824 +0 -0
  66. data/spec/dummy/tmp/cache/assets/D26/790/sprockets%2F4928ff8fb0382efb99f6362f4f1e2831 +0 -0
  67. data/spec/dummy/tmp/cache/assets/D26/A70/sprockets%2Fe8aae21d8889a7c4473672ff0c5396e7 +0 -0
  68. data/spec/dummy/tmp/cache/assets/DA5/890/sprockets%2F849c2c9c50783eb3f65bc4b2d5feb0e6 +0 -0
  69. data/spec/dummy/tmp/cache/assets/DCB/E30/sprockets%2F9c1335eaffea6e3a58425adc4c28a35f +0 -0
  70. data/spec/dummy/tmp/cache/assets/DD8/8A0/sprockets%2Ffb4d7aea2f81d5c9837b9e02586f1acf +0 -0
  71. data/spec/dummy/tmp/cache/assets/E3F/5B0/sprockets%2Fc4ab6ddfbe50dfb200e08f2ad0b21e1f +0 -0
  72. data/spec/fixtures/vcr_cassettes/activities-controller.yml +36 -0
  73. data/spec/fixtures/vcr_cassettes/activities-delta.yml +36 -0
  74. data/spec/fixtures/vcr_cassettes/activities-etag-abc123.yml +40 -0
  75. data/spec/fixtures/vcr_cassettes/activities-etag-def456.yml +40 -0
  76. data/spec/fixtures/vcr_cassettes/activities-etag-xyz789.yml +36 -0
  77. data/spec/fixtures/vcr_cassettes/activities-foo-and-bar.yml +38 -0
  78. data/spec/fixtures/vcr_cassettes/activities-foo.yml +36 -0
  79. data/spec/fixtures/vcr_cassettes/activities.yml +36 -0
  80. data/spec/fixtures/vcr_cassettes/unknown-activities.yml +36 -0
  81. data/spec/models/activity_consumer/remote_activity_spec.rb +22 -0
  82. data/spec/services/activity_consumer/configuration_spec.rb +17 -0
  83. data/spec/services/activity_consumer/remote_activity_importer_spec.rb +121 -0
  84. data/spec/services/activity_consumer/remote_activity_rest_client_spec.rb +157 -0
  85. data/spec/spec_helper.rb +23 -0
  86. metadata +312 -0
@@ -0,0 +1,157 @@
1
+ require 'spec_helper'
2
+
3
+ # stub implementation of a RemoteActivity sub-class
4
+ class RemoteFooActivity < ActivityConsumer::RemoteActivity
5
+ end
6
+
7
+ module ActivityConsumer
8
+
9
+ describe RemoteActivityRestClient do
10
+
11
+ FEED_URL = 'http://inoxio-cim.dev/activities.json'
12
+ FULLEXPORT_URL = 'http://inoxio-cim.dev/activities/fullexport.json'
13
+
14
+ before(:each) do
15
+ ActivityConsumer.configure do |c|
16
+ c.activity_uri = FEED_URL
17
+ c.activity_fullexport_uri = FULLEXPORT_URL
18
+ c.import_types = ['Foo']
19
+ end
20
+ end
21
+
22
+ after(:each) do
23
+ VCR.eject_cassette
24
+ WebMock.reset!
25
+ end
26
+
27
+ describe "#request_url" do
28
+ context "on delta" do
29
+ let(:client) { ActivityConsumer::RemoteActivityRestClient.new(:delta) }
30
+ it "uses the correct url" do
31
+ client.send(:request_url).should == FEED_URL
32
+ end
33
+ end
34
+
35
+ context "on initial" do
36
+ let(:client) { ActivityConsumer::RemoteActivityRestClient.new(:initial) }
37
+ it "uses the correct url" do
38
+ client.send(:request_url).should == FULLEXPORT_URL
39
+ end
40
+ end
41
+ end
42
+
43
+ describe "#fetch" do
44
+ let(:client) { ActivityConsumer::RemoteActivityRestClient.new(:delta) }
45
+
46
+ it "returns a list of RemoteActivity items" do
47
+ VCR.insert_cassette 'activities'
48
+
49
+ activities = client.fetch
50
+
51
+ activities.class.should == Array
52
+ activities.count.should == 3 # there should be some activities in the feed
53
+ activities.each do |a|
54
+ a.should be_kind_of ActivityConsumer::RemoteActivity #each activity should be a kind of RemoteActivity
55
+ end
56
+ end
57
+
58
+ it "returns sub classes activities" do
59
+ VCR.insert_cassette 'activities-foo'
60
+
61
+ activities = client.fetch
62
+ activities.count.should == 3 # there should be some activities in the feed
63
+ activities.each do |a|
64
+ a.should be_kind_of RemoteFooActivity #each activity should be a kind of RemoteFooActivity
65
+ end
66
+ end
67
+
68
+ it "raises error on unknown activity type" do
69
+ VCR.insert_cassette 'unknown-activities'
70
+
71
+ ActivityConsumer.configure do |c|
72
+ c.import_types = ['Unknown']
73
+ end
74
+
75
+ expect {client.fetch}.to raise_error NameError
76
+ end
77
+
78
+ it "ignores activity types that are not configured to be imported" do
79
+ VCR.insert_cassette 'activities-foo-and-bar'
80
+
81
+ ActivityConsumer.configure do |c|
82
+ c.import_types = ['Foo']
83
+ end
84
+
85
+ activities = client.fetch
86
+ activities.count.should == 2 # there should be some activities in the feed
87
+ activities.each do |a|
88
+ a.should be_kind_of RemoteFooActivity #each activity should be a kind of RemoteFooActivity
89
+ end
90
+ end
91
+
92
+ it "raises a timeout if service is not available" do
93
+ stub_request(:any, //).to_timeout
94
+ expect {client.fetch}.to raise_error Timeout::Error
95
+ end
96
+
97
+ context "on delta" do
98
+ it "returns a list only of new RemoteActivity items" do
99
+ VCR.insert_cassette 'activities-delta'
100
+ latest_timestamp = Time.parse('2013-06-12T20:00:00+02:00')
101
+ RemoteFooActivity.create(timestamp: latest_timestamp, action: 'create')
102
+
103
+ activities = client.fetch
104
+ activities.each do |a|
105
+ a.timestamp.should > latest_timestamp #activity should be newer than timestamp'
106
+ end
107
+ end
108
+
109
+ it "uses a correctly formatted query parameter to get a delta" do
110
+ RemoteFooActivity.create(timestamp: Time.parse('2013-09-25T12:00:00+0200'), action: 'create')
111
+ client.send(:request_params).should == '?since=2013-09-25T12:00:00+02:00'
112
+ end
113
+
114
+ it "fallsback to full import if there is no activity yet" do
115
+ client.send(:request_params).should == ''
116
+ end
117
+ end
118
+ end
119
+
120
+ describe "#is_fresh?" do
121
+ let(:client) { ActivityConsumer::RemoteActivityRestClient.new(:delta) }
122
+
123
+ before(:each) do
124
+ RemoteFooActivity.create(etag: '"def567"', action: 'create', timestamp: 2.minutes.ago)
125
+ RemoteFooActivity.create(etag: '"abc123"', action: 'create', timestamp: Time.now)
126
+ end
127
+
128
+ it "uses a HEAD request with If-None-Match" do
129
+ RemoteActivityRestClient.should_receive(:head)
130
+ .with(anything(), hash_including(headers: {"If-None-Match" => '"abc123"'}))
131
+ .and_return(double("Response").as_null_object)
132
+
133
+ client.is_fresh?
134
+ end
135
+
136
+ it "recognizes a 304 as 'no update needed'" do
137
+ VCR.insert_cassette 'activities-etag-abc123'
138
+ client.is_fresh?.should == true
139
+ end
140
+
141
+ it "recognizes a 200 as 'update needed'" do
142
+ VCR.insert_cassette 'activities-etag-def456'
143
+ client.is_fresh?.should == false
144
+ end
145
+
146
+ it "doesn't puke if there is no actvity yet" do
147
+ RemoteFooActivity.all.each {|a| a.destroy}
148
+ RemoteActivityRestClient.stub(:head).and_return(double("Response").as_null_object)
149
+ expect {
150
+ client.is_fresh?
151
+ }.not_to raise_error
152
+ end
153
+ end
154
+
155
+ end
156
+
157
+ end
@@ -0,0 +1,23 @@
1
+ ENV['RAILS_ENV'] ||= 'test'
2
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
3
+ require 'rspec/rails'
4
+ require 'rspec/autorun'
5
+ require 'factory_girl_rails'
6
+ require 'webmock/rspec'
7
+ require 'vcr'
8
+
9
+ Rails.backtrace_cleaner.remove_silencers!
10
+ # Load support files
11
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
12
+ RSpec.configure do |config|
13
+ config.mock_with :rspec
14
+ config.use_transactional_fixtures = true
15
+ config.infer_base_class_for_anonymous_controllers = false
16
+ config.order = "random"
17
+ end
18
+
19
+ VCR.configure do |c|
20
+ c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
21
+ c.hook_into :webmock
22
+ c.ignore_localhost = true
23
+ end
metadata ADDED
@@ -0,0 +1,312 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: activity_consumer
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.4.0
5
+ platform: ruby
6
+ authors:
7
+ - Torsten Mangner
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2018-06-10 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 3.2.12
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 3.2.12
27
+ - !ruby/object:Gem::Dependency
28
+ name: httparty
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: sqlite3
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: database_cleaner
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: webmock
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "<"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.12'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "<"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.12'
83
+ - !ruby/object:Gem::Dependency
84
+ name: vcr
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec-rails
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: capybara
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: factory_girl_rails
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ description: help to consume activity feeds of CIM
140
+ email:
141
+ - torsten.mangner@inoxio.de
142
+ executables: []
143
+ extensions: []
144
+ extra_rdoc_files: []
145
+ files:
146
+ - MIT-LICENSE
147
+ - README.rdoc
148
+ - Rakefile
149
+ - app/assets/images/activity_consumer/cross.png
150
+ - app/assets/images/activity_consumer/tick.png
151
+ - app/assets/javascripts/activity_consumer/application.js
152
+ - app/assets/stylesheets/activity_consumer/application.scss
153
+ - app/assets/stylesheets/activity_consumer/table.scss
154
+ - app/controllers/activity_consumer/application_controller.rb
155
+ - app/controllers/activity_consumer/remote_activities_controller.rb
156
+ - app/helpers/activity_consumer/application_helper.rb
157
+ - app/models/activity_consumer/remote_activity.rb
158
+ - app/services/activity_consumer/configuration.rb
159
+ - app/services/activity_consumer/remote_activity_importer.rb
160
+ - app/services/activity_consumer/remote_activity_rest_client.rb
161
+ - app/views/activity_consumer/remote_activities/index.html.erb
162
+ - app/views/activity_consumer/remote_activities/show.html.erb
163
+ - app/views/layouts/activity_consumer/application.html.erb
164
+ - config/locales/de.yml
165
+ - config/routes.rb
166
+ - db/migrate/20130725170303_create_activity_consumer_remote_activities.rb
167
+ - db/migrate/20130817171648_add_etag_to_remote_activities.rb
168
+ - lib/activity_consumer.rb
169
+ - lib/activity_consumer/engine.rb
170
+ - lib/activity_consumer/version.rb
171
+ - lib/tasks/activity_consumer_tasks.rake
172
+ - spec/controllers/activity_consumer/remote_activities_controller_spec.rb
173
+ - spec/dummy/README.rdoc
174
+ - spec/dummy/Rakefile
175
+ - spec/dummy/app/assets/javascripts/application.js
176
+ - spec/dummy/app/assets/stylesheets/application.css
177
+ - spec/dummy/app/controllers/application_controller.rb
178
+ - spec/dummy/app/helpers/application_helper.rb
179
+ - spec/dummy/app/views/layouts/application.html.erb
180
+ - spec/dummy/config.ru
181
+ - spec/dummy/config/application.rb
182
+ - spec/dummy/config/boot.rb
183
+ - spec/dummy/config/database.yml
184
+ - spec/dummy/config/environment.rb
185
+ - spec/dummy/config/environments/development.rb
186
+ - spec/dummy/config/environments/production.rb
187
+ - spec/dummy/config/environments/test.rb
188
+ - spec/dummy/config/initializers/backtrace_silencers.rb
189
+ - spec/dummy/config/initializers/inflections.rb
190
+ - spec/dummy/config/initializers/mime_types.rb
191
+ - spec/dummy/config/initializers/secret_token.rb
192
+ - spec/dummy/config/initializers/session_store.rb
193
+ - spec/dummy/config/initializers/wrap_parameters.rb
194
+ - spec/dummy/config/locales/en.yml
195
+ - spec/dummy/config/routes.rb
196
+ - spec/dummy/db/development.sqlite3
197
+ - spec/dummy/db/schema.rb
198
+ - spec/dummy/db/test.sqlite3
199
+ - spec/dummy/log/development.log
200
+ - spec/dummy/log/test.log
201
+ - spec/dummy/public/404.html
202
+ - spec/dummy/public/422.html
203
+ - spec/dummy/public/500.html
204
+ - spec/dummy/public/favicon.ico
205
+ - spec/dummy/script/rails
206
+ - spec/dummy/tmp/cache/assets/CB9/640/sprockets%2F055df7094ed3c73903db121ec7947478
207
+ - spec/dummy/tmp/cache/assets/CDD/880/sprockets%2F0994815802d4bd56bf29a9c53bab6520
208
+ - spec/dummy/tmp/cache/assets/CEF/070/sprockets%2F833e7786517acf485f377186a1eb1ea6
209
+ - spec/dummy/tmp/cache/assets/CF3/F30/sprockets%2Fc0fff716a78291e8e6e3659a50b59824
210
+ - spec/dummy/tmp/cache/assets/D26/790/sprockets%2F4928ff8fb0382efb99f6362f4f1e2831
211
+ - spec/dummy/tmp/cache/assets/D26/A70/sprockets%2Fe8aae21d8889a7c4473672ff0c5396e7
212
+ - spec/dummy/tmp/cache/assets/DA5/890/sprockets%2F849c2c9c50783eb3f65bc4b2d5feb0e6
213
+ - spec/dummy/tmp/cache/assets/DCB/E30/sprockets%2F9c1335eaffea6e3a58425adc4c28a35f
214
+ - spec/dummy/tmp/cache/assets/DD8/8A0/sprockets%2Ffb4d7aea2f81d5c9837b9e02586f1acf
215
+ - spec/dummy/tmp/cache/assets/E3F/5B0/sprockets%2Fc4ab6ddfbe50dfb200e08f2ad0b21e1f
216
+ - spec/fixtures/vcr_cassettes/activities-controller.yml
217
+ - spec/fixtures/vcr_cassettes/activities-delta.yml
218
+ - spec/fixtures/vcr_cassettes/activities-etag-abc123.yml
219
+ - spec/fixtures/vcr_cassettes/activities-etag-def456.yml
220
+ - spec/fixtures/vcr_cassettes/activities-etag-xyz789.yml
221
+ - spec/fixtures/vcr_cassettes/activities-foo-and-bar.yml
222
+ - spec/fixtures/vcr_cassettes/activities-foo.yml
223
+ - spec/fixtures/vcr_cassettes/activities.yml
224
+ - spec/fixtures/vcr_cassettes/unknown-activities.yml
225
+ - spec/models/activity_consumer/remote_activity_spec.rb
226
+ - spec/services/activity_consumer/configuration_spec.rb
227
+ - spec/services/activity_consumer/remote_activity_importer_spec.rb
228
+ - spec/services/activity_consumer/remote_activity_rest_client_spec.rb
229
+ - spec/spec_helper.rb
230
+ homepage: http://inoxio.de
231
+ licenses: []
232
+ metadata: {}
233
+ post_install_message:
234
+ rdoc_options: []
235
+ require_paths:
236
+ - lib
237
+ required_ruby_version: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - ">="
240
+ - !ruby/object:Gem::Version
241
+ version: '0'
242
+ required_rubygems_version: !ruby/object:Gem::Requirement
243
+ requirements:
244
+ - - ">="
245
+ - !ruby/object:Gem::Version
246
+ version: '0'
247
+ requirements: []
248
+ rubyforge_project:
249
+ rubygems_version: 2.6.4
250
+ signing_key:
251
+ specification_version: 4
252
+ summary: help to consume activity feeds of CIM
253
+ test_files:
254
+ - spec/spec_helper.rb
255
+ - spec/dummy/app/controllers/application_controller.rb
256
+ - spec/dummy/app/views/layouts/application.html.erb
257
+ - spec/dummy/app/assets/javascripts/application.js
258
+ - spec/dummy/app/assets/stylesheets/application.css
259
+ - spec/dummy/app/helpers/application_helper.rb
260
+ - spec/dummy/config/routes.rb
261
+ - spec/dummy/config/locales/en.yml
262
+ - spec/dummy/config/environments/production.rb
263
+ - spec/dummy/config/environments/development.rb
264
+ - spec/dummy/config/environments/test.rb
265
+ - spec/dummy/config/environment.rb
266
+ - spec/dummy/config/application.rb
267
+ - spec/dummy/config/database.yml
268
+ - spec/dummy/config/boot.rb
269
+ - spec/dummy/config/initializers/backtrace_silencers.rb
270
+ - spec/dummy/config/initializers/mime_types.rb
271
+ - spec/dummy/config/initializers/session_store.rb
272
+ - spec/dummy/config/initializers/wrap_parameters.rb
273
+ - spec/dummy/config/initializers/secret_token.rb
274
+ - spec/dummy/config/initializers/inflections.rb
275
+ - spec/dummy/config.ru
276
+ - spec/dummy/script/rails
277
+ - spec/dummy/Rakefile
278
+ - spec/dummy/public/favicon.ico
279
+ - spec/dummy/public/422.html
280
+ - spec/dummy/public/500.html
281
+ - spec/dummy/public/404.html
282
+ - spec/dummy/db/schema.rb
283
+ - spec/dummy/db/test.sqlite3
284
+ - spec/dummy/db/development.sqlite3
285
+ - spec/dummy/log/test.log
286
+ - spec/dummy/log/development.log
287
+ - spec/dummy/tmp/cache/assets/CB9/640/sprockets%2F055df7094ed3c73903db121ec7947478
288
+ - spec/dummy/tmp/cache/assets/CDD/880/sprockets%2F0994815802d4bd56bf29a9c53bab6520
289
+ - spec/dummy/tmp/cache/assets/DCB/E30/sprockets%2F9c1335eaffea6e3a58425adc4c28a35f
290
+ - spec/dummy/tmp/cache/assets/CEF/070/sprockets%2F833e7786517acf485f377186a1eb1ea6
291
+ - spec/dummy/tmp/cache/assets/D26/790/sprockets%2F4928ff8fb0382efb99f6362f4f1e2831
292
+ - spec/dummy/tmp/cache/assets/D26/A70/sprockets%2Fe8aae21d8889a7c4473672ff0c5396e7
293
+ - spec/dummy/tmp/cache/assets/E3F/5B0/sprockets%2Fc4ab6ddfbe50dfb200e08f2ad0b21e1f
294
+ - spec/dummy/tmp/cache/assets/DD8/8A0/sprockets%2Ffb4d7aea2f81d5c9837b9e02586f1acf
295
+ - spec/dummy/tmp/cache/assets/DA5/890/sprockets%2F849c2c9c50783eb3f65bc4b2d5feb0e6
296
+ - spec/dummy/tmp/cache/assets/CF3/F30/sprockets%2Fc0fff716a78291e8e6e3659a50b59824
297
+ - spec/dummy/README.rdoc
298
+ - spec/models/activity_consumer/remote_activity_spec.rb
299
+ - spec/fixtures/vcr_cassettes/activities-etag-abc123.yml
300
+ - spec/fixtures/vcr_cassettes/activities.yml
301
+ - spec/fixtures/vcr_cassettes/activities-controller.yml
302
+ - spec/fixtures/vcr_cassettes/activities-foo.yml
303
+ - spec/fixtures/vcr_cassettes/activities-etag-def456.yml
304
+ - spec/fixtures/vcr_cassettes/activities-delta.yml
305
+ - spec/fixtures/vcr_cassettes/unknown-activities.yml
306
+ - spec/fixtures/vcr_cassettes/activities-etag-xyz789.yml
307
+ - spec/fixtures/vcr_cassettes/activities-foo-and-bar.yml
308
+ - spec/controllers/activity_consumer/remote_activities_controller_spec.rb
309
+ - spec/services/activity_consumer/configuration_spec.rb
310
+ - spec/services/activity_consumer/remote_activity_rest_client_spec.rb
311
+ - spec/services/activity_consumer/remote_activity_importer_spec.rb
312
+ has_rdoc: