wicked 0.0.2 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of wicked might be problematic. Click here for more details.
- data/CHANGELOG.md +12 -0
- data/Gemfile +4 -3
- data/Gemfile.lock +4 -0
- data/README.md +83 -13
- data/VERSION +1 -1
- data/app/controllers/wicked/wizard_controller.rb +31 -23
- data/test/dummy/app/controllers/bar_controller.rb +14 -0
- data/test/dummy/app/controllers/foo_controller.rb +2 -0
- data/test/dummy/app/views/bar/first.html.erb +6 -0
- data/test/dummy/app/views/bar/last_step.html.erb +1 -0
- data/test/dummy/app/views/bar/second.html.erb +1 -0
- data/test/dummy/config/routes.rb +2 -0
- data/test/integration/helpers_test.rb +26 -0
- data/test/integration/navigation_test.rb +37 -1
- data/test/support/integration_case.rb +1 -1
- data/wicked.gemspec +11 -2
- metadata +34 -17
data/CHANGELOG.md
ADDED
data/Gemfile
CHANGED
@@ -6,11 +6,12 @@ gem "rails" , ">= 3.0.7"
|
|
6
6
|
|
7
7
|
|
8
8
|
group :development do
|
9
|
-
gem 'jeweler',
|
10
|
-
gem "bundler",
|
11
|
-
gem "rcov",
|
9
|
+
gem 'jeweler', "~> 1.6.4"
|
10
|
+
gem "bundler", "~> 1.0.0"
|
11
|
+
gem "rcov", ">= 0"
|
12
12
|
gem "capybara", ">= 0.4.0"
|
13
13
|
gem "sqlite3"
|
14
|
+
gem "launchy"
|
14
15
|
end
|
15
16
|
|
16
17
|
|
data/Gemfile.lock
CHANGED
@@ -28,6 +28,7 @@ GEM
|
|
28
28
|
activemodel (= 3.0.11)
|
29
29
|
activesupport (= 3.0.11)
|
30
30
|
activesupport (3.0.11)
|
31
|
+
addressable (2.2.7)
|
31
32
|
arel (2.0.10)
|
32
33
|
builder (2.1.2)
|
33
34
|
capybara (1.1.2)
|
@@ -49,6 +50,8 @@ GEM
|
|
49
50
|
git (>= 1.2.5)
|
50
51
|
rake
|
51
52
|
json (1.6.4)
|
53
|
+
launchy (2.0.5)
|
54
|
+
addressable (~> 2.2.6)
|
52
55
|
mail (2.2.19)
|
53
56
|
activesupport (>= 2.3.6)
|
54
57
|
i18n (>= 0.4.0)
|
@@ -104,6 +107,7 @@ DEPENDENCIES
|
|
104
107
|
bundler (~> 1.0.0)
|
105
108
|
capybara (>= 0.4.0)
|
106
109
|
jeweler (~> 1.6.4)
|
110
|
+
launchy
|
107
111
|
rails (>= 3.0.7)
|
108
112
|
rcov
|
109
113
|
sqlite3
|
data/README.md
CHANGED
@@ -1,39 +1,66 @@
|
|
1
1
|
# Wicked
|
2
2
|
|
3
|
-
Use wicked to make your Rails controllers into step-by-step wizards.
|
3
|
+
Use wicked to make your Rails controllers into step-by-step wizards. To see Wicked in action check out the example [Rails app](https://github.com/schneems/wicked_example) or [watch the screencast](http://schneems.com/post/18437886598/wizard-ify-your-rails-controllers-with-wicked).
|
4
4
|
|
5
5
|
## Why
|
6
6
|
|
7
|
-
Many times I'm left wanting a
|
7
|
+
Many times I'm left wanting a RESTful way to display a step by step process that may or not be associated with a resource. Wicked gives the flexibility to do what I want while hiding all the really scary stuff you shouldn't do in a controller to make this possible. At it's core Wicked is a RESTful(ish) state machine, but you don't need to know that, just use it.
|
8
8
|
|
9
9
|
## Install
|
10
10
|
|
11
11
|
Add this to your Gemfile
|
12
12
|
|
13
13
|
```ruby
|
14
|
-
|
15
14
|
gem 'wicked'
|
16
|
-
|
17
15
|
```
|
18
16
|
|
19
17
|
Then run `bundle install` and you're ready to start
|
20
18
|
|
21
19
|
## How
|
22
20
|
|
23
|
-
|
21
|
+
We are going to build an 'after signup' wizard. First create a controller:
|
22
|
+
|
23
|
+
```
|
24
|
+
rails g controller after_signup
|
25
|
+
```
|
26
|
+
|
27
|
+
Add Routes into `config/routes.rb`:
|
28
|
+
|
29
|
+
```ruby
|
30
|
+
resources :after_signup
|
31
|
+
```
|
32
|
+
|
33
|
+
Next include `Wicked::Wizard` in your controller
|
34
|
+
|
35
|
+
```ruby
|
36
|
+
|
37
|
+
class AfterSignupController < ApplicationController
|
38
|
+
include Wicked::Wizard
|
39
|
+
|
40
|
+
steps :confirm_password, :confirm_profile, :find_friends
|
41
|
+
# ...
|
42
|
+
|
43
|
+
```
|
44
|
+
|
45
|
+
You can also use the old way of inheriting from `Wicked::WizardController`.
|
24
46
|
|
25
47
|
```ruby
|
26
|
-
|
48
|
+
|
49
|
+
class AfterSignupController < Wicked::WizardController
|
27
50
|
|
28
51
|
steps :confirm_password, :confirm_profile, :find_friends
|
29
52
|
# ...
|
30
53
|
|
31
54
|
```
|
32
55
|
|
33
|
-
The wizard is set to call steps in order in the show action, you can specify custom logic in your show using a case statement like this:
|
56
|
+
The wizard is set to call steps in order in the show action, you can specify custom logic in your show using a case statement like below. To send someone to the first step in this wizard we can direct them to `after_signup_path(:confirm_password)`.
|
34
57
|
|
35
58
|
```ruby
|
36
|
-
class
|
59
|
+
class AfterSignupController < ApplicationController
|
60
|
+
include Wicked::Wizard
|
61
|
+
|
62
|
+
steps :confirm_password, :confirm_profile, :find_friends
|
63
|
+
|
37
64
|
def show
|
38
65
|
@user = current_user
|
39
66
|
case step
|
@@ -45,9 +72,9 @@ The wizard is set to call steps in order in the show action, you can specify cus
|
|
45
72
|
end
|
46
73
|
```
|
47
74
|
|
48
|
-
|
75
|
+
You'll need to call `render_wizard` at the end of your action to get the correct views to show up.
|
49
76
|
|
50
|
-
By default the wizard will render a view with the same name as the step. So for our controller `
|
77
|
+
By default the wizard will render a view with the same name as the step. So for our controller `AfterSignupController` with a view path of `/views/users/after_signup/` if call the :confirm_password step, our wizard will render `/views/users/after_signup/confirm_password.html.erb`
|
51
78
|
|
52
79
|
Then in your view you can use the helpers to get to the next step.
|
53
80
|
|
@@ -65,7 +92,10 @@ In addition to showing sequential views we can update elements in our controller
|
|
65
92
|
|
66
93
|
|
67
94
|
```ruby
|
68
|
-
class
|
95
|
+
class AfterSignupController < ApplicationController
|
96
|
+
include Wicked::Wizard
|
97
|
+
|
98
|
+
steps :confirm_password, :confirm_profile, :find_friends
|
69
99
|
|
70
100
|
def update
|
71
101
|
@user = current_user
|
@@ -79,7 +109,7 @@ In addition to showing sequential views we can update elements in our controller
|
|
79
109
|
end
|
80
110
|
```
|
81
111
|
|
82
|
-
|
112
|
+
We're passing `render_wizard` our `@user` object here. If you pass an object into `render_wizard` it will show the next step if the object saves or re-render the previous view if it does not save.
|
83
113
|
|
84
114
|
|
85
115
|
To get to this update action, you simply need to submit a form that PUT's to the same url
|
@@ -95,7 +125,7 @@ To get to this update action, you simply need to submit a form that PUT's to the
|
|
95
125
|
|
96
126
|
```
|
97
127
|
|
98
|
-
|
128
|
+
We explicitly tell the form to PUT above. If you forget this, you will get a warning about the create action not existing, or no route found for POST. Don't forget this.
|
99
129
|
|
100
130
|
|
101
131
|
In the controller if you find that you want to skip a step, you can do it simply by calling `skip_step`
|
@@ -117,6 +147,46 @@ In the controller if you find that you want to skip a step, you can do it simply
|
|
117
147
|
|
118
148
|
```
|
119
149
|
|
150
|
+
Now you've got a fully functioning AfterSignup controller! If you have questions or if you struggled with something, let me know on [twitter](http://twitter.com/schneems), and i'll try to make it better or make the docs better.
|
151
|
+
|
152
|
+
## Quick Reference
|
153
|
+
|
154
|
+
View/URL Helpers
|
155
|
+
|
156
|
+
```ruby
|
157
|
+
|
158
|
+
wizard_path # Grabs the current path in the wizard
|
159
|
+
wizard_path(:specific_step) # Url of the :specific_step
|
160
|
+
next_wizard_path # Url of the next step
|
161
|
+
|
162
|
+
# These only work while in a Wizard, and are not absolute paths
|
163
|
+
# You can have multiple wizards in a project with multiple `wizard_path` calls
|
164
|
+
```
|
165
|
+
|
166
|
+
|
167
|
+
Controller Tidbits:
|
168
|
+
|
169
|
+
```ruby
|
170
|
+
|
171
|
+
steps :first, :second # Sets the order of steps
|
172
|
+
step # Gets symbol of current step
|
173
|
+
next_step # Gets symbol of next step
|
174
|
+
render_wizard # Renders the current step
|
175
|
+
render_wizard(@user) # Shows next_step if @user.save, otherwise renders current step
|
176
|
+
```
|
177
|
+
|
178
|
+
Finally:
|
179
|
+
|
180
|
+
Don't forget to create your named views
|
181
|
+
|
182
|
+
```
|
183
|
+
app/
|
184
|
+
views/
|
185
|
+
controller_name/
|
186
|
+
first.html.erb
|
187
|
+
second.html.erb
|
188
|
+
# ...
|
189
|
+
```
|
120
190
|
|
121
191
|
## About
|
122
192
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0
|
1
|
+
0.1.0
|
@@ -1,20 +1,40 @@
|
|
1
|
+
module Wicked
|
2
|
+
module Wizard
|
3
|
+
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
# Include the modules!!
|
6
|
+
include Wicked::Controller::Concerns::Path
|
7
|
+
include Wicked::Controller::Concerns::RenderRedirect
|
8
|
+
include Wicked::Controller::Concerns::Steps
|
9
|
+
|
10
|
+
included do
|
11
|
+
# Give our Views helper methods!
|
12
|
+
helper_method :wizard_path, :next_wizard_path
|
13
|
+
# Set @step and @next_step variables
|
14
|
+
before_filter :setup_wizard
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
def setup_wizard
|
19
|
+
@step = params[:id].try(:to_sym) || steps.first
|
20
|
+
@next_step = next_step(@step)
|
21
|
+
end
|
22
|
+
public
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
|
27
|
+
|
1
28
|
# Please don't re-use any patterns found in this controller,
|
2
29
|
# they work, but are not very good practices.
|
3
30
|
# If you have a better way to do this, please let me know
|
4
31
|
|
5
32
|
class Wicked::WizardController < ApplicationController
|
6
|
-
include Wicked::
|
7
|
-
include Wicked::Controller::Concerns::RenderRedirect
|
8
|
-
include Wicked::Controller::Concerns::Steps
|
9
|
-
|
10
|
-
|
11
|
-
helper_method :wizard_path, :next_wizard_path
|
33
|
+
include Wicked::Wizard
|
12
34
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
# redirect_to_first_step
|
17
|
-
end
|
35
|
+
# def index
|
36
|
+
# # redirect_to_first_step
|
37
|
+
# end
|
18
38
|
|
19
39
|
# steps :confirm_password, :invite_fb
|
20
40
|
|
@@ -41,17 +61,5 @@ class Wicked::WizardController < ApplicationController
|
|
41
61
|
# sign_in(@user, :bypass => true) # needed for devise
|
42
62
|
# render_wizard
|
43
63
|
# end
|
44
|
-
|
45
|
-
private
|
46
|
-
|
47
|
-
|
48
|
-
def setup_wizard
|
49
|
-
@step = params[:id].try(:to_sym) || steps.first
|
50
|
-
@next_step = next_step(@step)
|
51
|
-
end
|
52
|
-
|
53
64
|
end
|
54
65
|
|
55
|
-
module Wicked
|
56
|
-
Wizard = Wicked::WizardController
|
57
|
-
end
|
@@ -0,0 +1 @@
|
|
1
|
+
last_step
|
@@ -0,0 +1 @@
|
|
1
|
+
second
|
data/test/dummy/config/routes.rb
CHANGED
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class HelpersTest < ActiveSupport::IntegrationCase
|
4
|
+
|
5
|
+
test 'next_wizard_path' do
|
6
|
+
step = :first
|
7
|
+
visit(bar_path(step))
|
8
|
+
click_link 'skip'
|
9
|
+
assert has_content?(:third)
|
10
|
+
end
|
11
|
+
|
12
|
+
test 'wizard_path' do
|
13
|
+
step = :first
|
14
|
+
visit(bar_path(step))
|
15
|
+
click_link 'current'
|
16
|
+
assert has_content?(step)
|
17
|
+
end
|
18
|
+
|
19
|
+
test 'wizard_path with symbol arg' do
|
20
|
+
step = :first
|
21
|
+
visit(bar_path(step))
|
22
|
+
click_link 'last'
|
23
|
+
assert has_content?(:last_step)
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
|
-
class
|
3
|
+
class InheritNavigationTest < ActiveSupport::IntegrationCase
|
4
4
|
|
5
5
|
test 'show first' do
|
6
6
|
step = :first
|
@@ -34,3 +34,39 @@ class NavigationTest < ActiveSupport::IntegrationCase
|
|
34
34
|
end
|
35
35
|
|
36
36
|
end
|
37
|
+
|
38
|
+
|
39
|
+
class IncludeNavigationTest < ActiveSupport::IntegrationCase
|
40
|
+
|
41
|
+
test 'show first' do
|
42
|
+
step = :first
|
43
|
+
visit(bar_path(step))
|
44
|
+
assert has_content?(step)
|
45
|
+
end
|
46
|
+
|
47
|
+
test 'show second' do
|
48
|
+
step = :second
|
49
|
+
visit(bar_path(step))
|
50
|
+
assert has_content?(step)
|
51
|
+
end
|
52
|
+
|
53
|
+
test 'skip first' do
|
54
|
+
step = :first
|
55
|
+
visit(bar_path(step, :skip_step => 'true'))
|
56
|
+
assert has_content?(:second)
|
57
|
+
end
|
58
|
+
|
59
|
+
test 'invalid step' do
|
60
|
+
step = :notastep
|
61
|
+
assert_raise(ActionView::MissingTemplate) do
|
62
|
+
visit(bar_path(step))
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
test 'finish' do
|
67
|
+
step = :finish
|
68
|
+
visit(bar_path(step))
|
69
|
+
assert has_content?('home')
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
data/wicked.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "wicked"
|
8
|
-
s.version = "0.0
|
8
|
+
s.version = "0.1.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["schneems"]
|
12
|
-
s.date = "2012-
|
12
|
+
s.date = "2012-03-12"
|
13
13
|
s.description = "Wicked is a Rails engine for producing easy wizard controllers"
|
14
14
|
s.email = "richard.schneeman@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -17,6 +17,7 @@ Gem::Specification.new do |s|
|
|
17
17
|
]
|
18
18
|
s.files = [
|
19
19
|
".rvmrc",
|
20
|
+
"CHANGELOG.md",
|
20
21
|
"Gemfile",
|
21
22
|
"Gemfile.lock",
|
22
23
|
"MIT-LICENSE",
|
@@ -31,8 +32,12 @@ Gem::Specification.new do |s|
|
|
31
32
|
"lib/wicked/engine.rb",
|
32
33
|
"test/dummy/Rakefile",
|
33
34
|
"test/dummy/app/controllers/application_controller.rb",
|
35
|
+
"test/dummy/app/controllers/bar_controller.rb",
|
34
36
|
"test/dummy/app/controllers/foo_controller.rb",
|
35
37
|
"test/dummy/app/helpers/application_helper.rb",
|
38
|
+
"test/dummy/app/views/bar/first.html.erb",
|
39
|
+
"test/dummy/app/views/bar/last_step.html.erb",
|
40
|
+
"test/dummy/app/views/bar/second.html.erb",
|
36
41
|
"test/dummy/app/views/foo/first.html.erb",
|
37
42
|
"test/dummy/app/views/foo/last_step.html.erb",
|
38
43
|
"test/dummy/app/views/foo/second.html.erb",
|
@@ -65,6 +70,7 @@ Gem::Specification.new do |s|
|
|
65
70
|
"test/dummy/public/javascripts/rails.js",
|
66
71
|
"test/dummy/public/stylesheets/.gitkeep",
|
67
72
|
"test/dummy/script/rails",
|
73
|
+
"test/integration/helpers_test.rb",
|
68
74
|
"test/integration/navigation_test.rb",
|
69
75
|
"test/support/integration_case.rb",
|
70
76
|
"test/test_helper.rb",
|
@@ -88,6 +94,7 @@ Gem::Specification.new do |s|
|
|
88
94
|
s.add_development_dependency(%q<rcov>, [">= 0"])
|
89
95
|
s.add_development_dependency(%q<capybara>, [">= 0.4.0"])
|
90
96
|
s.add_development_dependency(%q<sqlite3>, [">= 0"])
|
97
|
+
s.add_development_dependency(%q<launchy>, [">= 0"])
|
91
98
|
else
|
92
99
|
s.add_dependency(%q<activesupport>, [">= 3.0.7"])
|
93
100
|
s.add_dependency(%q<rails>, [">= 3.0.7"])
|
@@ -96,6 +103,7 @@ Gem::Specification.new do |s|
|
|
96
103
|
s.add_dependency(%q<rcov>, [">= 0"])
|
97
104
|
s.add_dependency(%q<capybara>, [">= 0.4.0"])
|
98
105
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
106
|
+
s.add_dependency(%q<launchy>, [">= 0"])
|
99
107
|
end
|
100
108
|
else
|
101
109
|
s.add_dependency(%q<activesupport>, [">= 3.0.7"])
|
@@ -105,6 +113,7 @@ Gem::Specification.new do |s|
|
|
105
113
|
s.add_dependency(%q<rcov>, [">= 0"])
|
106
114
|
s.add_dependency(%q<capybara>, [">= 0.4.0"])
|
107
115
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
116
|
+
s.add_dependency(%q<launchy>, [">= 0"])
|
108
117
|
end
|
109
118
|
end
|
110
119
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wicked
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-03-12 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
16
|
-
requirement: &
|
16
|
+
requirement: &70095570564240 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.0.7
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70095570564240
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rails
|
27
|
-
requirement: &
|
27
|
+
requirement: &70095570563680 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 3.0.7
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70095570563680
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: jeweler
|
38
|
-
requirement: &
|
38
|
+
requirement: &70095570563180 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.6.4
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70095570563180
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
|
-
requirement: &
|
49
|
+
requirement: &70095570562640 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.0.0
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70095570562640
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rcov
|
60
|
-
requirement: &
|
60
|
+
requirement: &70095570562160 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70095570562160
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: capybara
|
71
|
-
requirement: &
|
71
|
+
requirement: &70095570561660 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 0.4.0
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70095570561660
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: sqlite3
|
82
|
-
requirement: &
|
82
|
+
requirement: &70095570561180 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,7 +87,18 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70095570561180
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: launchy
|
93
|
+
requirement: &70095570560700 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
type: :development
|
100
|
+
prerelease: false
|
101
|
+
version_requirements: *70095570560700
|
91
102
|
description: Wicked is a Rails engine for producing easy wizard controllers
|
92
103
|
email: richard.schneeman@gmail.com
|
93
104
|
executables: []
|
@@ -96,6 +107,7 @@ extra_rdoc_files:
|
|
96
107
|
- README.md
|
97
108
|
files:
|
98
109
|
- .rvmrc
|
110
|
+
- CHANGELOG.md
|
99
111
|
- Gemfile
|
100
112
|
- Gemfile.lock
|
101
113
|
- MIT-LICENSE
|
@@ -110,8 +122,12 @@ files:
|
|
110
122
|
- lib/wicked/engine.rb
|
111
123
|
- test/dummy/Rakefile
|
112
124
|
- test/dummy/app/controllers/application_controller.rb
|
125
|
+
- test/dummy/app/controllers/bar_controller.rb
|
113
126
|
- test/dummy/app/controllers/foo_controller.rb
|
114
127
|
- test/dummy/app/helpers/application_helper.rb
|
128
|
+
- test/dummy/app/views/bar/first.html.erb
|
129
|
+
- test/dummy/app/views/bar/last_step.html.erb
|
130
|
+
- test/dummy/app/views/bar/second.html.erb
|
115
131
|
- test/dummy/app/views/foo/first.html.erb
|
116
132
|
- test/dummy/app/views/foo/last_step.html.erb
|
117
133
|
- test/dummy/app/views/foo/second.html.erb
|
@@ -144,6 +160,7 @@ files:
|
|
144
160
|
- test/dummy/public/javascripts/rails.js
|
145
161
|
- test/dummy/public/stylesheets/.gitkeep
|
146
162
|
- test/dummy/script/rails
|
163
|
+
- test/integration/helpers_test.rb
|
147
164
|
- test/integration/navigation_test.rb
|
148
165
|
- test/support/integration_case.rb
|
149
166
|
- test/test_helper.rb
|
@@ -164,7 +181,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
164
181
|
version: '0'
|
165
182
|
segments:
|
166
183
|
- 0
|
167
|
-
hash:
|
184
|
+
hash: -426714060281947248
|
168
185
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
169
186
|
none: false
|
170
187
|
requirements:
|