cucumber_scaffold 0.1.3 → 0.1.4
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/README.rdoc +6 -1
- data/Rakefile +1 -1
- data/cucumber_scaffold.gemspec +1 -1
- data/lib/generators/cucumber_scaffold/feature/feature_generator.rb +20 -12
- metadata +3 -3
data/README.rdoc
CHANGED
@@ -20,7 +20,12 @@ Then run the cucumber_scaffold generator with the same parameters:
|
|
20
20
|
|
21
21
|
* By default the generated features are targeted at the Rails scaffold generator
|
22
22
|
* Only tested with Rails 3 and Capybara (not webrat)
|
23
|
-
* Only supports string, text, integer and boolean fields at present
|
23
|
+
* Only supports string, text, integer, decimal and boolean fields at present
|
24
|
+
* References (belongs_to) are partly supported
|
25
|
+
|
26
|
+
== Contributors
|
27
|
+
|
28
|
+
zuf[https://github.com/zuf]
|
24
29
|
|
25
30
|
== Sample Output
|
26
31
|
|
data/Rakefile
CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
|
|
2
2
|
require 'rake'
|
3
3
|
require 'echoe'
|
4
4
|
|
5
|
-
Echoe.new('cucumber_scaffold', '0.1.
|
5
|
+
Echoe.new('cucumber_scaffold', '0.1.4') do |p|
|
6
6
|
p.description = "Generate scaffolding for Cucumber features and steps definitions"
|
7
7
|
p.url = "http://github.com/andyw8/cucumber_scaffold"
|
8
8
|
p.author = "Andy Waite"
|
data/cucumber_scaffold.gemspec
CHANGED
@@ -26,7 +26,7 @@ module CucumberScaffold
|
|
26
26
|
|
27
27
|
template('feature.feature', "features/manage_#{plural}.feature")
|
28
28
|
template('steps.rb', "features/step_definitions/#{singular}_steps.rb")
|
29
|
-
|
29
|
+
|
30
30
|
extra_paths = <<EOF
|
31
31
|
when /edit page for that #{singular.humanize.downcase}/
|
32
32
|
edit_#{singular}_path(@#{singular})
|
@@ -46,7 +46,7 @@ EOF
|
|
46
46
|
gsub_file 'features/support/paths.rb', /'\/'/mi do |match|
|
47
47
|
"#{match}\n" + extra_paths
|
48
48
|
end
|
49
|
-
|
49
|
+
|
50
50
|
end
|
51
51
|
|
52
52
|
private
|
@@ -154,24 +154,31 @@ EOF
|
|
154
154
|
html_single_resource(:updated => true)
|
155
155
|
end
|
156
156
|
|
157
|
-
def default_value(options={})
|
158
|
-
# TODO use an options hash instead of all these arguments
|
159
|
-
|
157
|
+
def default_value(options={})
|
160
158
|
options[:index] ||= 10
|
161
159
|
|
160
|
+
updated = options[:updated]
|
161
|
+
|
162
162
|
if ['string', 'text'].include?(options[:attribute_type])
|
163
163
|
result = "#{options[:attribute_name].humanize.downcase} #{options[:index]}"
|
164
|
-
result += ' updated' if
|
164
|
+
result += ' updated' if updated
|
165
165
|
elsif options[:attribute_type] == 'integer'
|
166
166
|
result = 10 + options[:index]
|
167
|
-
result = -result if
|
167
|
+
result = -result if updated
|
168
|
+
elsif options[:attribute_type] == 'decimal'
|
169
|
+
result = 10.2 + options[:index]
|
170
|
+
result = -result if updated
|
171
|
+
elsif options[:attribute_type] == 'references'
|
172
|
+
model = options[:attribute_name].camelize.constantize
|
173
|
+
result = model.first
|
174
|
+
result = model.last if updated
|
168
175
|
elsif options[:attribute_type] == 'boolean'
|
169
176
|
if options[:form]
|
170
177
|
result = '[x]'
|
171
|
-
result = '[ ]' if
|
178
|
+
result = '[ ]' if updated
|
172
179
|
else
|
173
180
|
result = true
|
174
|
-
result = false if
|
181
|
+
result = false if updated
|
175
182
|
end
|
176
183
|
else
|
177
184
|
raise "Cannot create default value for attribute type '#{options[:attribute_type]}'"
|
@@ -196,10 +203,11 @@ EOF
|
|
196
203
|
def tags(tags)
|
197
204
|
tags
|
198
205
|
end
|
199
|
-
|
206
|
+
|
200
207
|
def make_row(data)
|
201
208
|
"| #{data.join(' | ')} |"
|
202
209
|
end
|
203
|
-
|
210
|
+
|
204
211
|
end
|
205
|
-
end
|
212
|
+
end
|
213
|
+
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cucumber_scaffold
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 4
|
10
|
+
version: 0.1.4
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Andy Waite
|