decidim-dev 0.3.2 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/decidim/dev.rb +23 -1
- data/lib/decidim/dev/common_rake.rb +3 -0
- data/lib/decidim/dev/railtie.rb +3 -3
- data/lib/decidim/dev/test/base_spec_helper.rb +4 -3
- data/lib/decidim/dev/test/rspec_support/capybara.rb +3 -0
- data/lib/decidim/dev/test/rspec_support/feature.rb +8 -0
- data/lib/decidim/dev/test/rspec_support/feature_context.rb +4 -2
- data/lib/decidim/dev/test/rspec_support/geocoder.rb +7 -2
- data/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/phantomjs-getOwnPropertyNames.js +16 -0
- data/lib/decidim/dev/test/rspec_support/warden.rb +17 -1
- metadata +7 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e8ebbea7c935d9c967b51a080a0e21c86dfef127
|
4
|
+
data.tar.gz: ddba21fd8b94dcafa14affc8efb03c3d1d82865b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6ad72dd60ff4aa43f48f239f06483d1eb2bfdcc231fcadb6f4cb97653834d9a04406d58a5b24019e912b87517db234fd6852c870a85fc2cc7f20aa9a5c90cc4f
|
7
|
+
data.tar.gz: 526f46f6500fc3588068c19725f3f172354835e1ab079aeac9831675a329e9e67f19bd75949e9e074972f74e821efdd388b8f84c5711b2db101bb9d728f14a64
|
data/lib/decidim/dev.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "letter_opener_web"
|
4
3
|
require "decidim/dev/railtie"
|
5
4
|
|
6
5
|
module Decidim
|
@@ -14,5 +13,28 @@ module Decidim
|
|
14
13
|
def self.asset(name)
|
15
14
|
File.expand_path(File.join(__dir__, "dev", "assets", name))
|
16
15
|
end
|
16
|
+
|
17
|
+
# Public: add rake tasks
|
18
|
+
def self.install_tasks
|
19
|
+
Dir[File.join(__dir__, "../tasks/*.rake")].each do |file|
|
20
|
+
load file
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
# Public: Sets the dummy application path for testing.
|
25
|
+
#
|
26
|
+
# path - A string value defining the path.
|
27
|
+
def self.dummy_app_path=(path)
|
28
|
+
@dummy_app_path = path
|
29
|
+
end
|
30
|
+
|
31
|
+
# Public: Get the dummy application path and raises an error if it is not set.
|
32
|
+
def self.dummy_app_path
|
33
|
+
unless @dummy_app_path
|
34
|
+
raise StandardError, "Please, add Decidim::Dev::dummy_app_path = File.expand_path(File.join(\"..\", \"spec\", \"decidim_dummy_app\")) to\n
|
35
|
+
your spec helper with the path to the generated dummy app"
|
36
|
+
end
|
37
|
+
@dummy_app_path
|
38
|
+
end
|
17
39
|
end
|
18
40
|
end
|
data/lib/decidim/dev/railtie.rb
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "rails"
|
4
|
+
|
3
5
|
module Decidim
|
4
6
|
module Dev
|
5
7
|
class Railtie < Rails::Railtie
|
6
8
|
railtie_name :decidim_dev
|
7
9
|
|
8
10
|
rake_tasks do
|
9
|
-
|
10
|
-
load file
|
11
|
-
end
|
11
|
+
Decidim::Dev.install_tasks
|
12
12
|
end
|
13
13
|
end
|
14
14
|
end
|
@@ -1,10 +1,11 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "decidim/dev"
|
4
|
+
|
3
5
|
ENV["RAILS_ENV"] ||= "test"
|
4
6
|
|
5
7
|
root_path = File.expand_path("..", Dir.pwd)
|
6
8
|
engine_spec_dir = File.join(Dir.pwd, "spec")
|
7
|
-
dummy_app_path = File.expand_path(File.join(root_path, "spec", "decidim_dummy_app"))
|
8
9
|
|
9
10
|
if ENV["SIMPLECOV"]
|
10
11
|
require "simplecov"
|
@@ -35,10 +36,10 @@ require "decidim/core/test"
|
|
35
36
|
require "#{__dir__}/rspec_support/feature.rb"
|
36
37
|
|
37
38
|
begin
|
38
|
-
require "#{dummy_app_path}/config/environment"
|
39
|
+
require "#{Decidim::Dev.dummy_app_path}/config/environment"
|
39
40
|
rescue LoadError
|
40
41
|
puts "Could not load dummy application. Please ensure you have run `bundle exec rake decidim:generate_test_app`"
|
41
|
-
puts "Tried to load it from #{dummy_app_path}"
|
42
|
+
puts "Tried to load it from #{Decidim::Dev.dummy_app_path}"
|
42
43
|
exit(-1)
|
43
44
|
end
|
44
45
|
|
@@ -35,6 +35,14 @@ module Decidim
|
|
35
35
|
def reported_content_url
|
36
36
|
ResourceLocatorPresenter.new(self).url
|
37
37
|
end
|
38
|
+
|
39
|
+
def notifiable?(_context)
|
40
|
+
true
|
41
|
+
end
|
42
|
+
|
43
|
+
def users_to_notify
|
44
|
+
[author]
|
45
|
+
end
|
38
46
|
end
|
39
47
|
|
40
48
|
class DummyResourcesController < ActionController::Base
|
@@ -1,6 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
RSpec.shared_context "feature" do
|
4
|
+
include Decidim::FeaturePathHelper
|
5
|
+
|
4
6
|
let(:manifest) { Decidim.find_feature_manifest(manifest_name) }
|
5
7
|
|
6
8
|
let(:user) { create :user, :confirmed, organization: organization }
|
@@ -26,7 +28,7 @@ RSpec.shared_context "feature" do
|
|
26
28
|
end
|
27
29
|
|
28
30
|
def visit_feature
|
29
|
-
page.visit
|
31
|
+
page.visit feature_path(feature)
|
30
32
|
end
|
31
33
|
end
|
32
34
|
|
@@ -48,7 +50,7 @@ RSpec.shared_context "feature admin" do
|
|
48
50
|
end
|
49
51
|
|
50
52
|
def visit_feature_admin
|
51
|
-
visit
|
53
|
+
visit manage_feature_path(feature)
|
52
54
|
end
|
53
55
|
end
|
54
56
|
|
@@ -1,13 +1,18 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
RSpec.configure do |config|
|
4
|
-
config.before(:
|
4
|
+
config.before(:suite) do
|
5
5
|
# Set geocoder configuration in test mode
|
6
6
|
Decidim.geocoder = {
|
7
|
-
static_map_url: "
|
7
|
+
static_map_url: "https://www.example.org/my_static_map",
|
8
8
|
here_app_id: "1234",
|
9
9
|
here_app_code: "5678"
|
10
10
|
}
|
11
11
|
Geocoder.configure(lookup: :test)
|
12
12
|
end
|
13
|
+
|
14
|
+
config.before(:each, :serves_map) do
|
15
|
+
stub_request(:get, %r{https://www\.example\.org/my_static_map})
|
16
|
+
.to_return(body: "map_data")
|
17
|
+
end
|
13
18
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
var hasOwnProperty = Object.hasOwnProperty
|
2
|
+
var originalGetOwnPropertyNames = Object.getOwnPropertyNames
|
3
|
+
function getOwnPropertyNames (obj) {
|
4
|
+
var result = originalGetOwnPropertyNames.call(this, obj)
|
5
|
+
if (typeof obj !== 'function' || hasOwnProperty.call(obj, 'callee')) {
|
6
|
+
return result
|
7
|
+
}
|
8
|
+
return result.filter(function filterCallee (name) {
|
9
|
+
return name !== 'callee' && name !== 'arguments' && name !== 'caller';
|
10
|
+
})
|
11
|
+
};
|
12
|
+
Object.defineProperty(Object, 'getOwnPropertyNames', {
|
13
|
+
value: getOwnPropertyNames,
|
14
|
+
configurable: true,
|
15
|
+
writable: true
|
16
|
+
})
|
@@ -1,7 +1,23 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
module Decidim
|
4
|
+
module WardenTestHelpers
|
5
|
+
include Warden::Test::Helpers
|
6
|
+
|
7
|
+
#
|
8
|
+
# Utility method to login in the middle of a test as a different user from
|
9
|
+
# the current one.
|
10
|
+
#
|
11
|
+
def relogin_as(user, scope: :user)
|
12
|
+
logout scope
|
13
|
+
|
14
|
+
login_as user, scope: scope
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
3
19
|
RSpec.configure do |config|
|
4
|
-
config.include
|
20
|
+
config.include Decidim::WardenTestHelpers, type: :feature
|
5
21
|
config.include Devise::Test::ControllerHelpers, type: :controller
|
6
22
|
|
7
23
|
config.after :each, type: :feature do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-dev
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josep Jaume Rey Peroy
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-
|
13
|
+
date: 2017-07-12 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: decidim
|
@@ -18,14 +18,14 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
21
|
+
version: 0.4.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - '='
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: 0.
|
28
|
+
version: 0.4.0
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: factory_girl_rails
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
@@ -284,20 +284,6 @@ dependencies:
|
|
284
284
|
- - "~>"
|
285
285
|
- !ruby/object:Gem::Version
|
286
286
|
version: 0.9.0
|
287
|
-
- !ruby/object:Gem::Dependency
|
288
|
-
name: letter_opener_web
|
289
|
-
requirement: !ruby/object:Gem::Requirement
|
290
|
-
requirements:
|
291
|
-
- - "~>"
|
292
|
-
- !ruby/object:Gem::Version
|
293
|
-
version: 1.3.0
|
294
|
-
type: :runtime
|
295
|
-
prerelease: false
|
296
|
-
version_requirements: !ruby/object:Gem::Requirement
|
297
|
-
requirements:
|
298
|
-
- - "~>"
|
299
|
-
- !ruby/object:Gem::Version
|
300
|
-
version: 1.3.0
|
301
287
|
- !ruby/object:Gem::Dependency
|
302
288
|
name: rspec-html-matchers
|
303
289
|
requirement: !ruby/object:Gem::Requirement
|
@@ -332,14 +318,14 @@ dependencies:
|
|
332
318
|
requirements:
|
333
319
|
- - "~>"
|
334
320
|
- !ruby/object:Gem::Version
|
335
|
-
version: 3.
|
321
|
+
version: 3.9.1
|
336
322
|
type: :runtime
|
337
323
|
prerelease: false
|
338
324
|
version_requirements: !ruby/object:Gem::Requirement
|
339
325
|
requirements:
|
340
326
|
- - "~>"
|
341
327
|
- !ruby/object:Gem::Version
|
342
|
-
version: 3.
|
328
|
+
version: 3.9.1
|
343
329
|
description: Utilities and tools we need to develop Decidim
|
344
330
|
email:
|
345
331
|
- josepjaume@gmail.com
|
@@ -392,6 +378,7 @@ files:
|
|
392
378
|
- lib/decidim/dev/test/rspec_support/helpers.rb
|
393
379
|
- lib/decidim/dev/test/rspec_support/html_matchers.rb
|
394
380
|
- lib/decidim/dev/test/rspec_support/i18n.rb
|
381
|
+
- lib/decidim/dev/test/rspec_support/phantomjs_polyfills/phantomjs-getOwnPropertyNames.js
|
395
382
|
- lib/decidim/dev/test/rspec_support/phantomjs_polyfills/phantomjs-shim.js
|
396
383
|
- lib/decidim/dev/test/rspec_support/phantomjs_polyfills/promise.js
|
397
384
|
- lib/decidim/dev/test/rspec_support/translation_helpers.rb
|