serpentine 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
- class IfFilterController < ApplicationController
3
+ class InlineIfFilterController < ApplicationController
4
4
  filter_collection :by_key, :if => proc { |params| params[:monkey] }
5
5
 
6
6
  def index
@@ -18,6 +18,51 @@ class IfFilterController < ApplicationController
18
18
  end
19
19
  end
20
20
 
21
+ class InlineIfFilterTest < ActionDispatch::IntegrationTest
22
+ def test_an_inline_if_conditional
23
+ User.create! :key => 1
24
+ User.create! :key => 2
25
+ User.create! :key => 3
26
+ User.create! :key => 4
27
+
28
+ get '/inline_if_filter/index', :keys => %w(1 2 3), :monkey => true
29
+
30
+ assert_response :success
31
+
32
+ keys = JSON.parse response.body
33
+ assert_equal %w(1 2 3), keys
34
+
35
+ get '/inline_if_filter/index', :keys => %w(1 2 3)
36
+
37
+ assert_response :success
38
+
39
+ keys = JSON.parse response.body
40
+ assert_equal %w(1 2 3 4), keys
41
+ end
42
+ end
43
+
44
+ class IfFilterController < ApplicationController
45
+ filter_collection :by_key, :if => :monkey?
46
+
47
+ def index
48
+ apply_scopes!
49
+
50
+ render_results
51
+ end
52
+
53
+ def collection
54
+ @collection ||= User.scoped
55
+ end
56
+
57
+ def monkey?
58
+ params[:monkey]
59
+ end
60
+
61
+ def by_key
62
+ collection.where :key => params[:keys]
63
+ end
64
+ end
65
+
21
66
  class IfFilterTest < ActionDispatch::IntegrationTest
22
67
  def test_an_if_conditional
23
68
  User.create! :key => 1
@@ -41,7 +86,7 @@ class IfFilterTest < ActionDispatch::IntegrationTest
41
86
  end
42
87
  end
43
88
 
44
- class UnlessFilterController < ApplicationController
89
+ class InlineUnlessFilterController < ApplicationController
45
90
  filter_collection :by_key, :unless => proc { |params| params[:skip_filters] }
46
91
 
47
92
  def index
@@ -59,6 +104,51 @@ class UnlessFilterController < ApplicationController
59
104
  end
60
105
  end
61
106
 
107
+ class InlineUnlessFilterTest < ActionDispatch::IntegrationTest
108
+ def test_an_inline_unless_conditional
109
+ User.create! :key => 1
110
+ User.create! :key => 2
111
+ User.create! :key => 3
112
+ User.create! :key => 4
113
+
114
+ get '/inline_unless_filter/index', :keys => %w(1 2 3)
115
+
116
+ assert_response :success
117
+
118
+ keys = JSON.parse response.body
119
+ assert_equal %w(1 2 3), keys
120
+
121
+ get '/inline_unless_filter/index', :keys => %w(1 2 3), :skip_filters => true
122
+
123
+ assert_response :success
124
+
125
+ keys = JSON.parse response.body
126
+ assert_equal %w(1 2 3 4), keys
127
+ end
128
+ end
129
+
130
+ class UnlessFilterController < ApplicationController
131
+ filter_collection :by_key, :unless => :skip_filters?
132
+
133
+ def index
134
+ apply_scopes!
135
+
136
+ render_results
137
+ end
138
+
139
+ def collection
140
+ @collection ||= User.scoped
141
+ end
142
+
143
+ def skip_filters?
144
+ params[:skip_filters]
145
+ end
146
+
147
+ def by_key
148
+ collection.where :key => params[:keys]
149
+ end
150
+ end
151
+
62
152
  class UnlessFilterTest < ActionDispatch::IntegrationTest
63
153
  def test_an_unless_conditional
64
154
  User.create! :key => 1
@@ -20,8 +20,4 @@ class ApplicationController
20
20
  def render_results
21
21
  render :json => collection.map(&:key)
22
22
  end
23
-
24
- def collection=(value)
25
- @collection = value
26
- end
27
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: serpentine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-22 00:00:00.000000000 Z
12
+ date: 2013-01-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -125,7 +125,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
125
125
  version: '0'
126
126
  segments:
127
127
  - 0
128
- hash: 1826887560178753735
128
+ hash: 1741723546611922369
129
129
  required_rubygems_version: !ruby/object:Gem::Requirement
130
130
  none: false
131
131
  requirements:
@@ -134,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
134
  version: '0'
135
135
  segments:
136
136
  - 0
137
- hash: 1826887560178753735
137
+ hash: 1741723546611922369
138
138
  requirements: []
139
139
  rubyforge_project:
140
140
  rubygems_version: 1.8.24