decidim-dev 0.0.6

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 (52) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +24 -0
  3. data/Rakefile +2 -0
  4. data/app/views/decidim/dummy_resource/_linked_dummys.html.erb +5 -0
  5. data/config/i18n-tasks.yml +4 -0
  6. data/config/locales/ca.yml +5 -0
  7. data/config/locales/en.yml +5 -0
  8. data/config/locales/es.yml +5 -0
  9. data/config/locales/eu.yml +5 -0
  10. data/config/locales/fi.yml +5 -0
  11. data/lib/decidim/dev.rb +22 -0
  12. data/lib/decidim/dev/assets/Exampledocument.docx +0 -0
  13. data/lib/decidim/dev/assets/Exampledocument.odt +0 -0
  14. data/lib/decidim/dev/assets/Exampledocument.pdf +0 -0
  15. data/lib/decidim/dev/assets/avatar.jpg +0 -0
  16. data/lib/decidim/dev/assets/city.jpeg +0 -0
  17. data/lib/decidim/dev/assets/city2.jpeg +0 -0
  18. data/lib/decidim/dev/assets/city3.jpeg +0 -0
  19. data/lib/decidim/dev/assets/icon.png +0 -0
  20. data/lib/decidim/dev/assets/malicious.jpg +0 -0
  21. data/lib/decidim/dev/common_rake.rb +28 -0
  22. data/lib/decidim/dev/dummy_authorization_handler.rb +26 -0
  23. data/lib/decidim/dev/test/authorization_shared_examples.rb +23 -0
  24. data/lib/decidim/dev/test/base_spec_helper.rb +48 -0
  25. data/lib/decidim/dev/test/i18n_spec.rb +34 -0
  26. data/lib/decidim/dev/test/rspec_support/action_mailer.rb +72 -0
  27. data/lib/decidim/dev/test/rspec_support/active_job.rb +11 -0
  28. data/lib/decidim/dev/test/rspec_support/authenticated_controller_context.rb +9 -0
  29. data/lib/decidim/dev/test/rspec_support/authorization_handlers.rb +7 -0
  30. data/lib/decidim/dev/test/rspec_support/capybara.rb +73 -0
  31. data/lib/decidim/dev/test/rspec_support/database_cleaner.rb +13 -0
  32. data/lib/decidim/dev/test/rspec_support/engine_routes.rb +34 -0
  33. data/lib/decidim/dev/test/rspec_support/factory_girl.rb +4 -0
  34. data/lib/decidim/dev/test/rspec_support/feature.rb +91 -0
  35. data/lib/decidim/dev/test/rspec_support/feature_context.rb +44 -0
  36. data/lib/decidim/dev/test/rspec_support/geocoder.rb +11 -0
  37. data/lib/decidim/dev/test/rspec_support/helpers.rb +46 -0
  38. data/lib/decidim/dev/test/rspec_support/html_matchers.rb +6 -0
  39. data/lib/decidim/dev/test/rspec_support/i18n.rb +15 -0
  40. data/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/bind-polyfill.js +18 -0
  41. data/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/object-assign-polyfill.js +24 -0
  42. data/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/promise.js +233 -0
  43. data/lib/decidim/dev/test/rspec_support/translation_helpers.rb +75 -0
  44. data/lib/decidim/dev/test/rspec_support/warden.rb +9 -0
  45. data/lib/decidim/dev/test/rspec_support/webmock.rb +2 -0
  46. data/lib/decidim/dev/test/rspec_support/wisper.rb +6 -0
  47. data/lib/decidim/dev/test/spec_helper.rb +37 -0
  48. data/lib/generators/decidim/dummy_generator.rb +80 -0
  49. data/lib/generators/decidim/templates/autoprefixer.yml +8 -0
  50. data/lib/generators/decidim/templates/autoprefixer_initializer.rb +16 -0
  51. data/lib/generators/decidim/templates/decidim_dev.rb +2 -0
  52. metadata +406 -0
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+ # A collection of methods to help dealing with translated attributes.
3
+ module TranslationHelpers
4
+ # Gives the localized version of the attribute for the given locale. The
5
+ # locale defaults to the application's default one.
6
+ #
7
+ # It is intended to be used to avoid the implementation details, so that the
8
+ # translated attributes implementation can change more easily.
9
+ def translated(field, locale: I18n.locale)
10
+ field.try(:[], locale.to_s)
11
+ end
12
+
13
+ # Checks that the current page has some translated content. It strips the
14
+ # HTML tags from the field (in case there are any).
15
+ #
16
+ # field - the field that holds the translations
17
+ # locale - the ID of the locale to check
18
+ def have_i18n_content(field, locale: I18n.locale)
19
+ have_content(stripped(translated(field, locale: locale)))
20
+ end
21
+
22
+ # Handles how to fill in i18n form fields.
23
+ #
24
+ # field - the name of the field that should be filled, without the
25
+ # locale-related part (e.g. `:participatory_process_title`)
26
+ # tab_slector - a String representing the ID of the HTML element that holds
27
+ # the tabs for this input. It ususally is `"#<attribute_name>-tabs" (e.g.
28
+ # "#title-tabs")
29
+ # localized_values - a Hash where the keys are the locales IDs and the values
30
+ # are the values that will be entered in the form field.
31
+ def fill_in_i18n(field, tab_selector, localized_values)
32
+ fill_in_i18n_fields(field, tab_selector, localized_values) do |locator, value|
33
+ fill_in locator, with: value
34
+ end
35
+ end
36
+
37
+ # Handles how to fill in i18n form fields which uses a WYSIWYG editor.
38
+ #
39
+ # field - the name of the field that should be filled, without the
40
+ # locale-related part (e.g. `:participatory_process_title`)
41
+ # tab_slector - a String representing the ID of the HTML element that holds
42
+ # the tabs for this input. It ususally is `"#<attribute_name>-tabs" (e.g.
43
+ # "#title-tabs")
44
+ # localized_values - a Hash where the keys are the locales IDs and the values
45
+ # are the values that will be entered in the form field.
46
+ def fill_in_i18n_editor(field, tab_selector, localized_values)
47
+ fill_in_i18n_fields(field, tab_selector, localized_values) do |locator, value|
48
+ fill_in_editor locator, with: value
49
+ end
50
+ end
51
+
52
+ # Handles how to fill a WYSIWYG editor.
53
+ #
54
+ # locator - The input field ID. The DOM element is selected using jQuery.
55
+ # params - A Hash of options
56
+ # :with - A String value that will be entered in the form field. (required)
57
+ def fill_in_editor(locator, params = {})
58
+ raise ArgumentError if params[:with].blank?
59
+ page.execute_script <<-SCRIPT
60
+ $('##{locator}').siblings('.editor-container').find('.ql-editor')[0].innerHTML = "#{params[:with]}";
61
+ $('##{locator}').val("#{params[:with]}")
62
+ SCRIPT
63
+ end
64
+
65
+ private
66
+
67
+ def fill_in_i18n_fields(field, tab_selector, localized_values)
68
+ localized_values.each do |locale, value|
69
+ within tab_selector do
70
+ click_link I18n.with_locale(locale) { I18n.t("name", scope: "locale") }
71
+ end
72
+ yield "#{field}_#{locale}", value
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+ RSpec.configure do |config|
3
+ config.include Warden::Test::Helpers, type: :feature
4
+ config.include Devise::Test::ControllerHelpers, type: :controller
5
+
6
+ config.after :each, type: :feature do
7
+ Warden.test_reset!
8
+ end
9
+ end
@@ -0,0 +1,2 @@
1
+ require "webmock/rspec"
2
+ WebMock.allow_net_connect!
@@ -0,0 +1,6 @@
1
+ # frozen_string_literal: true
2
+ require "wisper/rspec/matchers"
3
+
4
+ RSpec.configure do |config|
5
+ config.include(Wisper::RSpec::BroadcastMatcher)
6
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+ ENV["RAILS_ENV"] ||= "test"
3
+
4
+ require "rails"
5
+ require "active_support/core_ext/string"
6
+ require "decidim/core"
7
+ require "decidim/core/test"
8
+
9
+ require "rails-controller-testing"
10
+ require "rspec/rails"
11
+ require "factory_girl_rails"
12
+ require "database_cleaner"
13
+ require "byebug"
14
+ require "cancan/matchers"
15
+ require "rectify/rspec"
16
+ require "wisper/rspec/stub_wisper_publisher"
17
+ require "db-query-matchers"
18
+
19
+ # Requires supporting files with custom matchers and macros, etc,
20
+ # in ./support/ and its subdirectories.
21
+ Dir["#{File.dirname(__FILE__)}/rspec_support/**/*.rb"].each { |f| require f }
22
+
23
+ RSpec.configure do |config|
24
+ config.color = true
25
+ config.fail_fast = ENV["FAIL_FAST"] || false
26
+ config.infer_spec_type_from_file_location!
27
+ config.mock_with :rspec
28
+ config.raise_errors_for_deprecations!
29
+
30
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
31
+ # examples within a transaction, comment the following line or assign false
32
+ # instead of true.
33
+ config.use_transactional_fixtures = false
34
+
35
+ config.include TranslationHelpers
36
+ config.include Rectify::RSpec::Helpers
37
+ end
@@ -0,0 +1,80 @@
1
+ # frozen_string_literal: true
2
+ require "rails/generators"
3
+ require "generators/decidim/app_generator"
4
+
5
+ module Decidim
6
+ module Generators
7
+ # Generates a dummy test Rails app for the given library folder. It uses
8
+ # the `AppGenerator` class to actually generate the Rails app, so this
9
+ # generator only sets the path and some flags.
10
+ #
11
+ # The Rails app will be installed with some flags to disable git, tests,
12
+ # Gemfile and other options. Refer to the `create_dummy_app` method to see
13
+ # all the flags passed to the `AppGenerator` class, which is the one that
14
+ # actually generates the Rails app.
15
+ #
16
+ # Remember that, for how generators work, actions are executed based on the
17
+ # definition order of the public methods.
18
+ class DummyGenerator < Rails::Generators::Base
19
+ desc "Generate dummy app for testing purposes"
20
+
21
+ class_option :engine_path, type: :string,
22
+ desc: "The library where the dummy app will be installed"
23
+
24
+ def source_paths
25
+ [
26
+ File.expand_path("../templates", __FILE__)
27
+ ]
28
+ end
29
+
30
+ def cleanup
31
+ remove_directory_if_exists(dummy_path)
32
+ end
33
+
34
+ def create_dummy_app
35
+ Decidim::Generators::AppGenerator.start [
36
+ dummy_path,
37
+ "--skip_gemfile",
38
+ "--skip-bundle",
39
+ "--skip-git",
40
+ "--skip-keeps",
41
+ "--skip-test",
42
+ "--recreate_db"
43
+ ]
44
+ end
45
+
46
+ def set_locales
47
+ inject_into_file "#{dummy_path}/config/application.rb", after: "class Application < Rails::Application" do
48
+ "\n config.i18n.available_locales = %w(en ca es)\n config.i18n.default_locale = :en"
49
+ end
50
+ end
51
+
52
+ def decidim_dev
53
+ template "decidim_dev.rb", "#{dummy_path}/config/initializers/decidim_dev.rb"
54
+
55
+ # TODO: Remove these after PhantomJS updates WebKit version (see YML and
56
+ # initializer comments)
57
+ template "autoprefixer.yml", "#{dummy_path}/config/autoprefixer.yml"
58
+ template "autoprefixer_initializer.rb", "#{dummy_path}/config/initializers/autoprefixer.rb"
59
+ end
60
+
61
+ private
62
+
63
+ def dummy_path
64
+ ENV["DUMMY_PATH"] || engine_path + "/spec/#{dir_name}_dummy_app"
65
+ end
66
+
67
+ def remove_directory_if_exists(path)
68
+ remove_dir(path) if File.directory?(path)
69
+ end
70
+
71
+ def dir_name
72
+ engine_path.split("/").last
73
+ end
74
+
75
+ def engine_path
76
+ options[:engine_path]
77
+ end
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,8 @@
1
+ # Loading the autoprefixer for WebKit browsers during tests will cause some
2
+ # tests to fail since parts of the UI are rendered differently. This is due to
3
+ # WebKit version used in PhantomJS that does not render some of the modern CSS
4
+ # features the same way as expected by the Foundation framework. For example,
5
+ # some elements are overlapping other elements which causes the elements to be
6
+ # inaccessible during the specific tests.
7
+ browsers:
8
+ - "Firefox > 2"
@@ -0,0 +1,16 @@
1
+ module AutoprefixerRails
2
+ class Sprockets
3
+ self.singleton_class.send(:alias_method, :call_original, :call)
4
+
5
+ def self.call(input)
6
+ filename = input[:name]
7
+
8
+ # Disable autoprefixer for the graphiql-rails gem's assets because it
9
+ # breaks some of the API tests when the '-webkit' prefixes are applied to
10
+ # its CSS.
11
+ return if filename.match(/^graphiql\/.*/)
12
+
13
+ self.call_original(input)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,2 @@
1
+ # frozen_string_literal: true
2
+ require "decidim/dev"
metadata ADDED
@@ -0,0 +1,406 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: decidim-dev
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.6
5
+ platform: ruby
6
+ authors:
7
+ - Josep Jaume Rey Peroy
8
+ - Marc Riera Casals
9
+ - Oriol Gual Oliva
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2017-03-24 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: decidim
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - '='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.0.6
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - '='
27
+ - !ruby/object:Gem::Version
28
+ version: 0.0.6
29
+ - !ruby/object:Gem::Dependency
30
+ name: factory_girl_rails
31
+ requirement: !ruby/object:Gem::Requirement
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
35
+ version: '0'
36
+ type: :runtime
37
+ prerelease: false
38
+ version_requirements: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: '0'
43
+ - !ruby/object:Gem::Dependency
44
+ name: database_cleaner
45
+ requirement: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: 1.5.0
50
+ type: :runtime
51
+ prerelease: false
52
+ version_requirements: !ruby/object:Gem::Requirement
53
+ requirements:
54
+ - - "~>"
55
+ - !ruby/object:Gem::Version
56
+ version: 1.5.0
57
+ - !ruby/object:Gem::Dependency
58
+ name: capybara
59
+ requirement: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - "~>"
62
+ - !ruby/object:Gem::Version
63
+ version: 2.12.0
64
+ type: :runtime
65
+ prerelease: false
66
+ version_requirements: !ruby/object:Gem::Requirement
67
+ requirements:
68
+ - - "~>"
69
+ - !ruby/object:Gem::Version
70
+ version: 2.12.0
71
+ - !ruby/object:Gem::Dependency
72
+ name: capybara-screenshot
73
+ requirement: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: 1.0.14
78
+ type: :runtime
79
+ prerelease: false
80
+ version_requirements: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - "~>"
83
+ - !ruby/object:Gem::Version
84
+ version: 1.0.14
85
+ - !ruby/object:Gem::Dependency
86
+ name: rspec-rails
87
+ requirement: !ruby/object:Gem::Requirement
88
+ requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '3.5'
92
+ type: :runtime
93
+ prerelease: false
94
+ version_requirements: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - "~>"
97
+ - !ruby/object:Gem::Version
98
+ version: '3.5'
99
+ - !ruby/object:Gem::Dependency
100
+ name: rspec-repeat
101
+ requirement: !ruby/object:Gem::Requirement
102
+ requirements:
103
+ - - "~>"
104
+ - !ruby/object:Gem::Version
105
+ version: 1.0.2
106
+ type: :runtime
107
+ prerelease: false
108
+ version_requirements: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - "~>"
111
+ - !ruby/object:Gem::Version
112
+ version: 1.0.2
113
+ - !ruby/object:Gem::Dependency
114
+ name: byebug
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ type: :runtime
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ version: '0'
127
+ - !ruby/object:Gem::Dependency
128
+ name: wisper-rspec
129
+ requirement: !ruby/object:Gem::Requirement
130
+ requirements:
131
+ - - "~>"
132
+ - !ruby/object:Gem::Version
133
+ version: 0.0.3
134
+ type: :runtime
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ requirements:
138
+ - - "~>"
139
+ - !ruby/object:Gem::Version
140
+ version: 0.0.3
141
+ - !ruby/object:Gem::Dependency
142
+ name: listen
143
+ requirement: !ruby/object:Gem::Requirement
144
+ requirements:
145
+ - - "~>"
146
+ - !ruby/object:Gem::Version
147
+ version: 3.1.0
148
+ type: :runtime
149
+ prerelease: false
150
+ version_requirements: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - "~>"
153
+ - !ruby/object:Gem::Version
154
+ version: 3.1.0
155
+ - !ruby/object:Gem::Dependency
156
+ name: launchy
157
+ requirement: !ruby/object:Gem::Requirement
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ version: '0'
162
+ type: :runtime
163
+ prerelease: false
164
+ version_requirements: !ruby/object:Gem::Requirement
165
+ requirements:
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ version: '0'
169
+ - !ruby/object:Gem::Dependency
170
+ name: i18n-tasks
171
+ requirement: !ruby/object:Gem::Requirement
172
+ requirements:
173
+ - - '='
174
+ - !ruby/object:Gem::Version
175
+ version: 0.9.12
176
+ type: :runtime
177
+ prerelease: false
178
+ version_requirements: !ruby/object:Gem::Requirement
179
+ requirements:
180
+ - - '='
181
+ - !ruby/object:Gem::Version
182
+ version: 0.9.12
183
+ - !ruby/object:Gem::Dependency
184
+ name: faker
185
+ requirement: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - "~>"
188
+ - !ruby/object:Gem::Version
189
+ version: 1.7.3
190
+ type: :runtime
191
+ prerelease: false
192
+ version_requirements: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - "~>"
195
+ - !ruby/object:Gem::Version
196
+ version: 1.7.3
197
+ - !ruby/object:Gem::Dependency
198
+ name: poltergeist
199
+ requirement: !ruby/object:Gem::Requirement
200
+ requirements:
201
+ - - "~>"
202
+ - !ruby/object:Gem::Version
203
+ version: 1.13.0
204
+ type: :runtime
205
+ prerelease: false
206
+ version_requirements: !ruby/object:Gem::Requirement
207
+ requirements:
208
+ - - "~>"
209
+ - !ruby/object:Gem::Version
210
+ version: 1.13.0
211
+ - !ruby/object:Gem::Dependency
212
+ name: rails-controller-testing
213
+ requirement: !ruby/object:Gem::Requirement
214
+ requirements:
215
+ - - "~>"
216
+ - !ruby/object:Gem::Version
217
+ version: 1.0.1
218
+ type: :runtime
219
+ prerelease: false
220
+ version_requirements: !ruby/object:Gem::Requirement
221
+ requirements:
222
+ - - "~>"
223
+ - !ruby/object:Gem::Version
224
+ version: 1.0.1
225
+ - !ruby/object:Gem::Dependency
226
+ name: simplecov
227
+ requirement: !ruby/object:Gem::Requirement
228
+ requirements:
229
+ - - "~>"
230
+ - !ruby/object:Gem::Version
231
+ version: '0.13'
232
+ type: :runtime
233
+ prerelease: false
234
+ version_requirements: !ruby/object:Gem::Requirement
235
+ requirements:
236
+ - - "~>"
237
+ - !ruby/object:Gem::Version
238
+ version: '0.13'
239
+ - !ruby/object:Gem::Dependency
240
+ name: codecov
241
+ requirement: !ruby/object:Gem::Requirement
242
+ requirements:
243
+ - - "~>"
244
+ - !ruby/object:Gem::Version
245
+ version: 0.1.9
246
+ type: :runtime
247
+ prerelease: false
248
+ version_requirements: !ruby/object:Gem::Requirement
249
+ requirements:
250
+ - - "~>"
251
+ - !ruby/object:Gem::Version
252
+ version: 0.1.9
253
+ - !ruby/object:Gem::Dependency
254
+ name: rubocop
255
+ requirement: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - "~>"
258
+ - !ruby/object:Gem::Version
259
+ version: '0.47'
260
+ type: :runtime
261
+ prerelease: false
262
+ version_requirements: !ruby/object:Gem::Requirement
263
+ requirements:
264
+ - - "~>"
265
+ - !ruby/object:Gem::Version
266
+ version: '0.47'
267
+ - !ruby/object:Gem::Dependency
268
+ name: db-query-matchers
269
+ requirement: !ruby/object:Gem::Requirement
270
+ requirements:
271
+ - - "~>"
272
+ - !ruby/object:Gem::Version
273
+ version: 0.7.0
274
+ type: :runtime
275
+ prerelease: false
276
+ version_requirements: !ruby/object:Gem::Requirement
277
+ requirements:
278
+ - - "~>"
279
+ - !ruby/object:Gem::Version
280
+ version: 0.7.0
281
+ - !ruby/object:Gem::Dependency
282
+ name: letter_opener_web
283
+ requirement: !ruby/object:Gem::Requirement
284
+ requirements:
285
+ - - "~>"
286
+ - !ruby/object:Gem::Version
287
+ version: 1.3.0
288
+ type: :runtime
289
+ prerelease: false
290
+ version_requirements: !ruby/object:Gem::Requirement
291
+ requirements:
292
+ - - "~>"
293
+ - !ruby/object:Gem::Version
294
+ version: 1.3.0
295
+ - !ruby/object:Gem::Dependency
296
+ name: rspec-html-matchers
297
+ requirement: !ruby/object:Gem::Requirement
298
+ requirements:
299
+ - - "~>"
300
+ - !ruby/object:Gem::Version
301
+ version: 0.9.1
302
+ type: :runtime
303
+ prerelease: false
304
+ version_requirements: !ruby/object:Gem::Requirement
305
+ requirements:
306
+ - - "~>"
307
+ - !ruby/object:Gem::Version
308
+ version: 0.9.1
309
+ - !ruby/object:Gem::Dependency
310
+ name: webmock
311
+ requirement: !ruby/object:Gem::Requirement
312
+ requirements:
313
+ - - "~>"
314
+ - !ruby/object:Gem::Version
315
+ version: 2.3.2
316
+ type: :runtime
317
+ prerelease: false
318
+ version_requirements: !ruby/object:Gem::Requirement
319
+ requirements:
320
+ - - "~>"
321
+ - !ruby/object:Gem::Version
322
+ version: 2.3.2
323
+ description: Utilities and tools we need to develop Decidim
324
+ email:
325
+ - josepjaume@gmail.com
326
+ - mrc2407@gmail.com
327
+ - oriolgual@gmail.com
328
+ executables: []
329
+ extensions: []
330
+ extra_rdoc_files: []
331
+ files:
332
+ - README.md
333
+ - Rakefile
334
+ - app/views/decidim/dummy_resource/_linked_dummys.html.erb
335
+ - config/i18n-tasks.yml
336
+ - config/locales/ca.yml
337
+ - config/locales/en.yml
338
+ - config/locales/es.yml
339
+ - config/locales/eu.yml
340
+ - config/locales/fi.yml
341
+ - lib/decidim/dev.rb
342
+ - lib/decidim/dev/assets/Exampledocument.docx
343
+ - lib/decidim/dev/assets/Exampledocument.odt
344
+ - lib/decidim/dev/assets/Exampledocument.pdf
345
+ - lib/decidim/dev/assets/avatar.jpg
346
+ - lib/decidim/dev/assets/city.jpeg
347
+ - lib/decidim/dev/assets/city2.jpeg
348
+ - lib/decidim/dev/assets/city3.jpeg
349
+ - lib/decidim/dev/assets/icon.png
350
+ - lib/decidim/dev/assets/malicious.jpg
351
+ - lib/decidim/dev/common_rake.rb
352
+ - lib/decidim/dev/dummy_authorization_handler.rb
353
+ - lib/decidim/dev/test/authorization_shared_examples.rb
354
+ - lib/decidim/dev/test/base_spec_helper.rb
355
+ - lib/decidim/dev/test/i18n_spec.rb
356
+ - lib/decidim/dev/test/rspec_support/action_mailer.rb
357
+ - lib/decidim/dev/test/rspec_support/active_job.rb
358
+ - lib/decidim/dev/test/rspec_support/authenticated_controller_context.rb
359
+ - lib/decidim/dev/test/rspec_support/authorization_handlers.rb
360
+ - lib/decidim/dev/test/rspec_support/capybara.rb
361
+ - lib/decidim/dev/test/rspec_support/database_cleaner.rb
362
+ - lib/decidim/dev/test/rspec_support/engine_routes.rb
363
+ - lib/decidim/dev/test/rspec_support/factory_girl.rb
364
+ - lib/decidim/dev/test/rspec_support/feature.rb
365
+ - lib/decidim/dev/test/rspec_support/feature_context.rb
366
+ - lib/decidim/dev/test/rspec_support/geocoder.rb
367
+ - lib/decidim/dev/test/rspec_support/helpers.rb
368
+ - lib/decidim/dev/test/rspec_support/html_matchers.rb
369
+ - lib/decidim/dev/test/rspec_support/i18n.rb
370
+ - lib/decidim/dev/test/rspec_support/phantomjs_polyfills/bind-polyfill.js
371
+ - lib/decidim/dev/test/rspec_support/phantomjs_polyfills/object-assign-polyfill.js
372
+ - lib/decidim/dev/test/rspec_support/phantomjs_polyfills/promise.js
373
+ - lib/decidim/dev/test/rspec_support/translation_helpers.rb
374
+ - lib/decidim/dev/test/rspec_support/warden.rb
375
+ - lib/decidim/dev/test/rspec_support/webmock.rb
376
+ - lib/decidim/dev/test/rspec_support/wisper.rb
377
+ - lib/decidim/dev/test/spec_helper.rb
378
+ - lib/generators/decidim/dummy_generator.rb
379
+ - lib/generators/decidim/templates/autoprefixer.yml
380
+ - lib/generators/decidim/templates/autoprefixer_initializer.rb
381
+ - lib/generators/decidim/templates/decidim_dev.rb
382
+ homepage: https://github.com/AjuntamentdeBarcelona/decidim
383
+ licenses:
384
+ - AGPLv3
385
+ metadata: {}
386
+ post_install_message:
387
+ rdoc_options: []
388
+ require_paths:
389
+ - lib
390
+ required_ruby_version: !ruby/object:Gem::Requirement
391
+ requirements:
392
+ - - ">="
393
+ - !ruby/object:Gem::Version
394
+ version: 2.3.1
395
+ required_rubygems_version: !ruby/object:Gem::Requirement
396
+ requirements:
397
+ - - ">="
398
+ - !ruby/object:Gem::Version
399
+ version: '0'
400
+ requirements: []
401
+ rubyforge_project:
402
+ rubygems_version: 2.6.8
403
+ signing_key:
404
+ specification_version: 4
405
+ summary: Decidim Dev tools
406
+ test_files: []