chanko 2.0.4 → 2.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0e0142b6872b65eae751db25c63dc9d52fe37d46
4
- data.tar.gz: a84c70d70a9a14027c56c76d9215ee513b0bd93c
3
+ metadata.gz: 85f38de7313d2d2ee7f638e03dc81c249a1bc3e6
4
+ data.tar.gz: 0fe314d508fdb5cf1df669f26eb02e2c61e6a7bc
5
5
  SHA512:
6
- metadata.gz: 3cc42fbf6826ab15cc01493e4cca09ebf187628b933f80a85d20dd577f7a0ada5a701aa1f6a957cfb124893072741dce3f8b3d15fb56fd708910cc99396f5eec
7
- data.tar.gz: 81d677c15b8b247606a93318f877c57e4ea793e216133ec3ae03b1a6966ebbbb8c019fff711077b9abac9efffef8375bb2d75a36c461b86922d7e64561f9e526
6
+ metadata.gz: 4294a26631dab10ffd21f2467c3ac7762dfa53009beebee2575f5b051862ee00da396c80af45a368a2489add336181a77d531bb3e5f28f3bba1c5df66752af46
7
+ data.tar.gz: 0801e6006c30e6e67fe5426487f6baa388d538b6028dfd20c987da74c87a76e9e4532ca0cbad64449cbcb21d0e9e679ebdf6ae1cf940ab739f4ce09d25a00072
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ## 2.0.5
2
+ * Guarantee thread-safety of unit stack for Rails 4
3
+
1
4
  ## 2.0.4
2
5
  * Allow to change Chanko::Config.eager_load after loading chanko
3
6
 
@@ -2,9 +2,11 @@ module Chanko
2
2
  class Function
3
3
  attr_reader :block, :unit, :label
4
4
 
5
+ THREAD_LOCAL_UNITS_KEY = 'Chanko::Function.units'
6
+
5
7
  class << self
6
8
  def units
7
- @units ||= []
9
+ Thread.current[THREAD_LOCAL_UNITS_KEY] ||= []
8
10
  end
9
11
 
10
12
  def current_unit
@@ -26,5 +26,9 @@ module Chanko
26
26
  def method_missing(method_name, *args, &block)
27
27
  @context.send("#{prefix}#{method_name}", *args, &block)
28
28
  end
29
+
30
+ def respond_to_missing?(method_name, include_private)
31
+ @context.respond_to?("#{prefix}#{method_name}")
32
+ end
29
33
  end
30
34
  end
@@ -1,3 +1,3 @@
1
1
  module Chanko
2
- VERSION = "2.0.4"
2
+ VERSION = "2.0.5"
3
3
  end
@@ -41,6 +41,12 @@ module Chanko
41
41
  view.invoke(:example_unit, :helper, :type => :plain).should == "helper"
42
42
  end
43
43
 
44
+ context 'when unit is referred from unit function' do
45
+ it 'responds to method which the context responds to' do
46
+ expect(view.invoke(:example_unit, :respond_to_helper?, type: :plain)).to eq(true)
47
+ end
48
+ end
49
+
44
50
  context "when invoked in view" do
45
51
  it "invokes with partial view" do
46
52
  view.invoke(:example_unit, :render, :type => :plain).should == "test\n"
@@ -60,6 +60,10 @@ module ExampleUnit
60
60
  unit.helper
61
61
  end
62
62
 
63
+ function(:respond_to_helper?) do
64
+ unit.respond_to?(:helper)
65
+ end
66
+
63
67
  function(:render) do
64
68
  render "/test", :local => "test"
65
69
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chanko
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryo Nakamura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-16 00:00:00.000000000 Z
11
+ date: 2014-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails