rao-view_helper 0.0.47.pre → 0.0.49.pre

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 48e8c6cb564555926d3d0fe4e49cde95e6761f85d0fc5b3f1aad97adbd610153
4
- data.tar.gz: 837afa5d12544e445ad1b864bc50c23da5d7a7f82bc2a158fdaa498026510ba8
3
+ metadata.gz: bc64797ce8450e9cb1ae2b47a4442e8336fe49090fcd00f890c9a6552abdbffd
4
+ data.tar.gz: a33f26b4e62edb323a001020da23e88cf0ffdc6a3c8e2b91b8c5384f56d66596
5
5
  SHA512:
6
- metadata.gz: 44e809778b92b92298310451b9e90083e8b0718588c618864f9cdd86ee1b507ad1180ad391be264fdfacb9aba479acb36beaa081bb18919d5fa444a265d17f76
7
- data.tar.gz: 8ab06be040f133ae83fe6d93989cde3639af7581a3026328482b529088f9c59c3b27cb0c200ff50dbca82da211d5d742842061683edc4604835ff7e00713ffe6
6
+ metadata.gz: d0ff96f0ebfcf30fc3c5ccabffe426d71a246f48b36f5583d1c0aac3796a5a31073e2b0cf1058d36217ba25d76a1df78dc9b0ed1fa12410287118ae5c49aa472
7
+ data.tar.gz: 48657f561798d60e593022c875d8dd77ac6311e8af93417d1acdd3da1e3b305ece82b39570b5d2125372165804e12fdbdb605ad638a3b35343362fc02a32cff8
@@ -6,8 +6,8 @@ module Rao
6
6
  module ClassMethods
7
7
  def view_helper(klass, options = {})
8
8
  method_name = options.delete(:as) || klass.name.underscore.gsub('/', '_')
9
- define_method method_name do |context|
10
- klass.new(context)
9
+ define_method method_name do |context, options = {}|
10
+ klass.new(context, options)
11
11
  end
12
12
  helper_method method_name
13
13
  end
@@ -19,8 +19,11 @@ module Rao
19
19
  # => "4.52 ct/kWh"
20
20
  #
21
21
  class Base
22
- def initialize(context)
22
+ attr_reader :options
23
+
24
+ def initialize(context, options = {})
23
25
  @context = context
26
+ @options = options
24
27
  end
25
28
 
26
29
  private
@@ -30,7 +33,7 @@ module Rao
30
33
  end
31
34
 
32
35
  def render(locals = {})
33
- c.render partial: "/#{self.class.name.underscore}/#{caller_locations(1,1)[0].label}", locals: locals
36
+ c.render partial: "/#{self.class.name.underscore}/#{caller_locations(1,1)[0].label}", locals: locals.reverse_merge(view_helper: self)
34
37
  end
35
38
 
36
39
  # You can use scoped translations by using the dot notation.
@@ -56,9 +59,9 @@ module Rao
56
59
  module I18nConcern
57
60
  def t(key, options = {})
58
61
  if key.start_with?('.')
59
- I18n.t("view_helpers.#{self.class.name.underscore}.#{key}", options)
62
+ I18n.t("view_helpers.#{self.class.name.underscore}.#{key}", **options)
60
63
  else
61
- I18n.t(key, options)
64
+ I18n.t(key, **options)
62
65
  end
63
66
  end
64
67
  end
@@ -69,11 +69,11 @@ module Rao
69
69
  #
70
70
  module SpecHelper
71
71
  def self.included(mod)
72
- mod.let(:view_paths) { ActionController::Base.view_paths }
72
+ mod.let(:lookup_context) { ActionView::LookupContext.new(ActionController::Base.view_paths) }
73
73
  mod.let(:assigns) { {} }
74
74
  mod.let(:request) { ActionDispatch::Request.new({ 'rack.input' => StringIO.new }) }
75
75
  mod.let(:controller) { ActionController::Base.new.tap { |c| c.request = request; c } }
76
- mod.let(:view) { ActionView::Base.new(view_paths, assigns, controller) }
76
+ mod.let(:view) { ActionView::Base.new(lookup_context, assigns, controller) }
77
77
  mod.let(:view_helper) { described_class.new(view) }
78
78
  mod.let(:method_name) { |e| e.metadata[:example_group][:description].to_sym }
79
79
  mod.let(:default_url_options) { { host: 'localhost:3000' } }
@@ -88,6 +88,7 @@ module Rao
88
88
  }
89
89
  mod.let(:html) { Capybara::Node::Simple.new(rendered) }
90
90
 
91
+ mod.before(:each) { view.define_singleton_method(:compiled_method_container) { self.class } }
91
92
  mod.before(:each) { view.class.include Rails.application.routes.url_helpers }
92
93
  mod.before(:each) { view.class.send(:define_method, :main_app, -> { Rails.application.class.routes.url_helpers }) }
93
94
  mod.around(:each) do |example|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rao-view_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.47.pre
4
+ version: 0.0.49.pre
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roberto Vasquez Angel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-10-25 00:00:00.000000000 Z
11
+ date: 2023-04-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.2.0
19
+ version: '6.1'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 3.2.0
26
+ version: '6.1'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rao
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.3.6
47
+ version: '1.4'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.3.6
54
+ version: '1.4'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec-rails
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -139,14 +139,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
139
139
  requirements:
140
140
  - - ">="
141
141
  - !ruby/object:Gem::Version
142
- version: '0'
142
+ version: 2.6.0
143
143
  required_rubygems_version: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - ">"
146
146
  - !ruby/object:Gem::Version
147
147
  version: 1.3.1
148
148
  requirements: []
149
- rubygems_version: 3.1.4
149
+ rubygems_version: 3.4.11
150
150
  signing_key:
151
151
  specification_version: 4
152
152
  summary: View Helper Objects for Ruby on Rails.