spicycode-micronaut-rails 0.2.4 → 0.2.5

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.
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
- :patch: 4
3
2
  :major: 0
4
3
  :minor: 2
4
+ :patch: 5
@@ -20,74 +20,67 @@ module Micronaut
20
20
 
21
21
  end
22
22
 
23
+ module TemplateIsolationExtensions
24
+ def file_exists?(ignore); true; end
25
+
26
+ def render_file(*args)
27
+ @first_render ||= args[0] unless args[0] =~ /^layouts/
28
+ end
29
+
30
+ def render(*args)
31
+ return super if Hash === args.last && args.last[:inline]
32
+ record_render(args[0])
33
+ end
34
+
35
+ private
36
+
37
+ def record_render(opts)
38
+ @_rendered ||= {}
39
+ (@_rendered[:template] ||= opts[:file]) if opts[:file]
40
+ (@_rendered[:partials][opts[:partial]] += 1) if opts[:partial]
41
+ end
42
+
43
+ end
44
+
45
+
23
46
  module RenderOverrides
24
47
 
25
48
  def render_views!
26
49
  @render_views = true
27
50
  end
28
51
 
29
- def render_views?
52
+ def rendering_views?
30
53
  @render_views
31
54
  end
32
55
 
33
- def render(options=nil, &block)
34
- response.headers['Status'] = interpret_status((options.is_a?(Hash) && options[:status]) || ::ActionController::Base::DEFAULT_RENDER_STATUS_CODE)
35
-
36
- unless block_given? || render_views?
37
- if @template.respond_to?(:finder)
38
- (class << @template.finder; self; end).class_eval do
39
- define_method :file_exists? do; true; end
40
- end
41
- else
42
- (class << @template; self; end).class_eval do
43
- define_method :file_exists? do; true; end
44
- end
56
+ def render(options=nil, extra_options={}, &block)
57
+ unless block_given?
58
+ unless rendering_views?
59
+ @template.extend TemplateIsolationExtensions
45
60
  end
46
- (class << @template; self; end).class_eval do
47
-
48
- define_method :render_file do |*args|
49
- @first_render ||= args[0] unless args[0] =~ /^layouts/
50
- @_first_render ||= args[0] unless args[0] =~ /^layouts/
51
- end
52
-
53
- define_method :_pick_template do |*args|
54
- @_first_render ||= args[0] unless args[0] =~ /^layouts/
55
- PickedTemplate.new
56
- end
57
-
58
- end
59
-
60
- end
61
-
62
- super(options, &block)
61
+ end
62
+
63
+ super
63
64
  end
64
65
 
65
66
  end
66
67
 
67
- # Returned by _pick_template when running controller examples in isolation mode.
68
- class PickedTemplate
69
- # Do nothing when running controller examples in isolation mode.
70
- def render_template(*ignore_args); end
71
- # Do nothing when running controller examples in isolation mode.
72
- def render_partial(*ignore_args); end
73
- end
74
-
75
68
  def self.extended(extended_behaviour)
76
69
  extended_behaviour.send :include, ::ActionController::TestProcess, InstanceMethods, ::Micronaut::Rails::Matchers::Controllers
77
70
  extended_behaviour.describes.send :include, RenderOverrides, ::ActionController::TestCase::RaiseActionExceptions
78
71
 
79
72
  extended_behaviour.before do
80
- @controller = self.class.describes.new
81
- @controller.request = @request = ::ActionController::TestRequest.new
73
+ @request = ::ActionController::TestRequest.new
82
74
  @response = ::ActionController::TestResponse.new
83
- @response.session = @request.session
84
-
75
+ @controller ||= self.class.describes.new
76
+
77
+ @controller.request = @request
85
78
  @controller.params = {}
86
- @controller.send(:initialize_current_url)
79
+ @controller.send(:initialize_current_url)
87
80
  end
88
81
 
89
82
  end
90
83
 
91
84
  end
92
85
  end
93
- end
86
+ end
@@ -10,11 +10,24 @@ module Micronaut
10
10
  @expected = expected
11
11
  end
12
12
 
13
- def matches?(response)
13
+ def matches?(response_or_controller)
14
+ response = response_or_controller.respond_to?(:response) ?
15
+ response_or_controller.response :
16
+ response_or_controller
17
+
14
18
  if response.respond_to?(:rendered_file)
15
19
  @actual = response.rendered_file
16
- elsif response.respond_to?(:captured_render)
17
- @actual = @controller.captured_render
20
+ elsif response.respond_to?(:rendered)
21
+ case template = response.rendered[:template]
22
+ when nil
23
+ unless response.rendered[:partials].empty?
24
+ @actual = path_and_file(response.rendered[:partials].keys.first).join("/_")
25
+ end
26
+ when ActionView::Template
27
+ @actual = template.path
28
+ when String
29
+ @actual = template
30
+ end
18
31
  else
19
32
  @actual = response.rendered_template.to_s
20
33
  end
@@ -100,4 +113,4 @@ module Micronaut
100
113
  end
101
114
  end
102
115
  end
103
- end
116
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spicycode-micronaut-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chad Humphries
@@ -9,11 +9,12 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-02-10 00:00:00 -08:00
12
+ date: 2009-04-05 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: actionpack
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,6 +24,7 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: spicycode-micronaut
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
@@ -36,8 +38,9 @@ executables: []
36
38
 
37
39
  extensions: []
38
40
 
39
- extra_rdoc_files: []
40
-
41
+ extra_rdoc_files:
42
+ - README
43
+ - LICENSE
41
44
  files:
42
45
  - LICENSE
43
46
  - Rakefile