designmodo-startup_framework-rails 1.1.3.9 → 1.1.3.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 39862f3743d720167df1d773164d8717a9157cd3
4
- data.tar.gz: 966ac94725381ac60ff6061dd86335fce72930a4
3
+ metadata.gz: f95da7fdcd37a4d85a105b9a847120fcb3492081
4
+ data.tar.gz: ff82b6b5dc5b2d2e879652fa278709407ea60220
5
5
  SHA512:
6
- metadata.gz: 7870c15b01d57a8090cc2c66b0cc8bd3d02a3c5e9dc0b76cc7f79034b57801d44be790dc655b9aca3787eecceb22cf6714b5d55ed69fa44979a73de069209ac5
7
- data.tar.gz: 988e9398e4fb46c11123710fd706af5bf5394b305a237e4faed0fa4d415c028e072f8a5b4a3b9122f48e9fc68f062e66fafb34c2cffce9482d08e9d33469511a
6
+ metadata.gz: bbddd701d2277ddb48dd6c8f2eec9a85a77d1cb9ac0d51edf5533a087305c881cf5286fd840f7ab1923cda66a4323e84260d1e0aa3ed06c37a76aaa79241c408
7
+ data.tar.gz: 82f3975b42dfddff514cb644cf5c9fc53b91c193ea941d6ba753b492b33d53e741f2b3ac1e6ffa2b5adcb598370697121bb96c297f7f2d91a2bd480982226967
data/README.md CHANGED
@@ -6,6 +6,8 @@ You **must** purchase and download a licensed copy to use this gem (none of the
6
6
 
7
7
  The version major and minors should match the Startup Framework version. Anything after these are gem versions.
8
8
 
9
+ [![Gem Version](https://badge.fury.io/rb/designmodo-startup_framework-rails.png)](http://badge.fury.io/rb/designmodo-startup_framework-rails)
10
+
9
11
  ## Installation
10
12
  First install and configure dependencies:
11
13
 
@@ -19,7 +21,7 @@ These are optional and the whole thing works much better if you include these tw
19
21
 
20
22
  Add this line to your application's Gemfile:
21
23
 
22
- gem 'designmodo-startup_framework-rails', '~> 1.1.3.8'
24
+ gem 'designmodo-startup_framework-rails', '~> 1.1.3.9'
23
25
 
24
26
  And then execute:
25
27
 
data/Rakefile CHANGED
@@ -1 +1 @@
1
- require "bundler/gem_tasks"
1
+ require "bundler/gem_tasks"
@@ -1,7 +1,7 @@
1
1
  module Designmodo
2
2
  module StartupFramework
3
3
  module Rails
4
- VERSION = "1.1.3.9"
4
+ VERSION = "1.1.3.10"
5
5
  end
6
6
  end
7
7
  end
@@ -0,0 +1,64 @@
1
+ require 'rails/generators'
2
+ require 'pathname'
3
+
4
+ module StartupFramework
5
+ module Generators
6
+ class DemoGenerator < Rails::Generators::Base
7
+ desc "Setup Startup Framework Demo page."
8
+ source_root File.expand_path("../../../../../app/assets/demo", __FILE__)
9
+ argument :sampleno, :type => :string, :banner => "<Sample Number like 01>"
10
+
11
+ # Detect if Startup Framework Pro assets copied over to gem
12
+ def check_startup_framework_install
13
+ unless File.exist?(File.expand_path("../../../../../app/assets", __FILE__))
14
+ raise "Please run install generator first"
15
+ end
16
+ end
17
+
18
+ def check_sample_folder
19
+ unless File.exist?(File.expand_path("../../../../../app/assets/demo/sample-#{sampleno}/index.html", __FILE__))
20
+ raise "Please provide a correct sample number"
21
+ end
22
+ end
23
+
24
+
25
+ def generate_demo_controller
26
+ generate "controller startup_framework_demo index#{sampleno} --no-helper --no-test-framework --no-assets"
27
+ end
28
+
29
+ def add_demo_assets
30
+ # Overwrite generated index.html.erb with demo html
31
+ copy_file "sample-#{sampleno}/index.html.erb", "app/views/startup_framework_demo/index#{sampleno}.html.erb"
32
+
33
+ # Add demo LESS
34
+ copy_file "sample-#{sampleno}/less/style.less", "app/assets/stylesheets/sample#{sampleno}.less"
35
+
36
+ # Handle CSS Manifest
37
+ css_manifest = "app/assets/stylesheets/application.css"
38
+ if File.exist?(css_manifest)
39
+ content = File.read(css_manifest)
40
+ unless content.match(/require_tree\s+\./)
41
+ style_require_block = " *= require startup_framework_demo\n"
42
+ insert_into_file css_manifest, style_require_block, :after => "require_self\n"
43
+ end
44
+ end
45
+
46
+ #Add images
47
+ directory File.join("sample-#{sampleno}","img"), File.join("app", "assets", "images","img")
48
+
49
+
50
+ # Add demo javascript
51
+ copy_file "sample-#{sampleno}/js/script.js", "app/assets/javascripts/script#{sampleno}.js"
52
+
53
+ # Handle JS Manifest
54
+ js_manifest = "app/assets/javascripts/application.js"
55
+ if File.exist?(js_manifest)
56
+ content = File.read(js_manifest)
57
+ unless content.match(/require_tree\s+\./)
58
+ insert_into_file js_manifest, "//= require script#{sampleno}\n", :after => "startup_framework\n"
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,8 @@
1
+ Description:
2
+ Explain the generator
3
+
4
+ Example:
5
+ rails generate layout Thing
6
+
7
+ This will create:
8
+ what/will/it/create
@@ -6,17 +6,19 @@ module StartupFramework
6
6
  class InstallGenerator < Rails::Generators::Base
7
7
  desc "Copies licensed Startup Framework files to designmodo-startup_framework-rails gem."
8
8
  argument :startup_dir, :type => :string, :banner => "<Licensed Startup Framework directory>"
9
+ class_option :flatui, :type => :boolean, :default => true, :description => 'Include bundled Flat UI'
10
+ class_option :demo, :type => :boolean, :default => false, :description => 'Include bundled samples'
9
11
  source_root File.expand_path("../templates", __FILE__)
10
12
 
11
-
12
13
 
13
14
  def copy_assets
14
- gem_assets_dir = File.expand_path("../../../../../", __FILE__)
15
- pro_dir = startup_dir
15
+ @gem_assets_dir = File.expand_path("../../../../../", __FILE__)
16
+ @pro_dir = startup_dir
16
17
 
17
18
  @namespace = "startup-framework"
18
19
  @common_files = "common-files"
19
20
  @ui_kit = "ui-kit"
21
+ @flat_ui = "flat-ui"
20
22
 
21
23
  @fonts_dir = "fonts/#{@namespace}/#{@common_files}/fonts"
22
24
  @images_dir = "images/#{@namespace}/#{@common_files}"
@@ -27,47 +29,59 @@ module StartupFramework
27
29
  @js_dir = "javascripts/#{@namespace}/#{@common_files}/js"
28
30
  @target_ui_kit = "less/#{@namespace}/#{@ui_kit}"
29
31
 
30
- FileUtils.mkdir_p File.join(gem_assets_dir,"app","assets",@fonts_dir)
31
- FileUtils.mkdir_p File.join(gem_assets_dir,"app","assets",@images_dir)
32
- FileUtils.mkdir_p File.join(gem_assets_dir,"app","assets",@js_dir)
33
- FileUtils.mkdir_p File.join(gem_assets_dir,"app","assets",@css_dir)
34
- FileUtils.mkdir_p File.join(gem_assets_dir,"app","assets",@less_dir)
32
+ FileUtils.mkdir_p File.join(@gem_assets_dir,"app","assets",@fonts_dir)
33
+ FileUtils.mkdir_p File.join(@gem_assets_dir,"app","assets",@images_dir)
34
+ FileUtils.mkdir_p File.join(@gem_assets_dir,"app","assets",@js_dir)
35
+ FileUtils.mkdir_p File.join(@gem_assets_dir,"app","assets",@css_dir)
36
+ FileUtils.mkdir_p File.join(@gem_assets_dir,"app","assets",@less_dir)
35
37
 
36
- gem_assets_dir = File.join(gem_assets_dir,"app","assets")
38
+ @gem_assets_dir = File.join(@gem_assets_dir,"app","assets")
37
39
 
38
- if File.directory?(File.join(pro_dir, "Developer"))
39
- pro_dir = File.join(pro_dir, "Developer")
40
+ if File.directory?(File.join(@pro_dir, "Developer"))
41
+ @pro_dir = File.join(@pro_dir, "Developer")
40
42
  end
41
- unless File.directory?(pro_dir) && File.directory?(File.join(pro_dir, @ui_kit))
43
+ unless File.directory?(@pro_dir) && File.directory?(File.join(@pro_dir, @ui_kit))
42
44
  raise "Invalid Startup Framework directory"
43
45
  end
44
46
 
45
47
  #Copy the fonts folder to the fonts dir
46
- directory File.join(pro_dir, @common_files,"fonts"), File.join(gem_assets_dir, @fonts_dir)
48
+ directory File.join(@pro_dir, @common_files,"fonts"), File.join(@gem_assets_dir, @fonts_dir)
47
49
 
48
50
  #Copy the icons folder to the images dir
49
- directory File.join(pro_dir, @common_files,"icons"), File.join(gem_assets_dir, @icons_dir)
50
- directory File.join(pro_dir, @common_files,"img"), File.join(gem_assets_dir, @img_dir)
51
- FileUtils.cp File.join(pro_dir, @common_files,"css/images/bx_loader.gif"), File.join(gem_assets_dir, "images")
52
- FileUtils.cp File.join(pro_dir, @common_files,"css/images/controls.png"), File.join(gem_assets_dir, "images")
51
+ directory File.join(@pro_dir, @common_files,"icons"), File.join(@gem_assets_dir, @icons_dir)
52
+ directory File.join(@pro_dir, @common_files,"img"), File.join(@gem_assets_dir, @img_dir)
53
+ FileUtils.cp File.join(@pro_dir, @common_files,"css/images/bx_loader.gif"), File.join(@gem_assets_dir, "images")
54
+ FileUtils.cp File.join(@pro_dir, @common_files,"css/images/controls.png"), File.join(@gem_assets_dir, "images")
53
55
 
54
56
  #Copy the js folder to the js dir
55
- directory File.join(pro_dir, @common_files,"js"), File.join(gem_assets_dir, @js_dir)
57
+ directory File.join(@pro_dir, @common_files,"js"), File.join(@gem_assets_dir, @js_dir)
56
58
 
57
59
  #Copy the less folder to the less dir
58
- directory File.join(pro_dir, @common_files,"less"), File.join(gem_assets_dir, @less_dir)
60
+ directory File.join(@pro_dir, @common_files,"less"), File.join(@gem_assets_dir, @less_dir)
59
61
 
60
62
  #Copy the ui-kit folder to the gems asset dir
61
- directory File.join(pro_dir, @ui_kit), File.join(gem_assets_dir, @target_ui_kit)
63
+ directory File.join(@pro_dir, @ui_kit), File.join(@gem_assets_dir, @target_ui_kit)
64
+
65
+ #Copy demo assets
66
+ directory File.join(@pro_dir,"samples"), File.join(@gem_assets_dir, "demo")
67
+
68
+ #Copy the flat ui directory
69
+ if options[:flatui]
70
+ copy_flatui
71
+ end
62
72
 
63
73
  #Remove all non LESS files from ui-kit folder
64
74
 
65
- Dir.glob("#{gem_assets_dir}/#{@target_ui_kit}/**/*.*") do |file|
75
+ Dir.glob("#{@gem_assets_dir}/#{@target_ui_kit}/**/*.*") do |file|
66
76
  unless file =~ /\.less\Z/
67
77
  puts "Deleting file #{File.basename file}"
68
78
  FileUtils.rm file, force: true
69
79
  end
70
80
  end
81
+
82
+ if options[:demo]
83
+ copy_demo
84
+ end
71
85
 
72
86
 
73
87
  end
@@ -75,17 +89,67 @@ module StartupFramework
75
89
  def add_assets
76
90
  copy_file "startup_framework.js", "app/assets/javascripts/startup_framework.js"
77
91
  copy_file "startup_framework.less", "app/assets/stylesheets/startup_framework.less"
92
+ if options[:flatui]
93
+ copy_file "flatui.js", "app/assets/javascripts/flatui.js"
94
+ end
95
+
96
+ # Handle JS Manifest
97
+ js_manifest = "app/assets/javascripts/application.js"
98
+ if File.exist?(js_manifest)
99
+ content = File.read(js_manifest)
100
+ unless content.match(/require\s+startup_framework/)
101
+ insert_into_file js_manifest, "//= require startup_framework\n", :after => "twitter/bootstrap\n"
102
+ if options[:flatui]
103
+ insert_into_file js_manifest, "//= require flatui\n", :after => "twitter/bootstrap\n"
104
+ end
105
+ end
106
+ unless content.match(/require\s+jquery.ui.all/)
107
+ unless content.match(/require\s+jquery.ui.effect/)
108
+ insert_into_file js_manifest, "//= require jquery.ui.effect\n", :after => "jquery\n"
109
+ end
110
+ unless content.match(/require\s+jquery.ui.tooltip/)
111
+ insert_into_file js_manifest, "//= require jquery.ui.tooltip\n", :after => "jquery\n"
112
+ end
113
+ unless content.match(/require\s+jquery.ui.spinner/)
114
+ insert_into_file js_manifest, "//= require jquery.ui.spinner\n", :after => "jquery\n"
115
+ end
116
+ unless content.match(/require\s+jquery.ui.slider/)
117
+ insert_into_file js_manifest, "//= require jquery.ui.slider\n", :after => "jquery\n"
118
+ end
119
+ unless content.match(/require\s+jquery.ui.datepicker/)
120
+ insert_into_file js_manifest, "//= require jquery.ui.datepicker\n", :after => "jquery\n"
121
+ end
122
+ unless content.match(/require\s+jquery.ui.button/)
123
+ insert_into_file js_manifest, "//= require jquery.ui.button\n", :after => "jquery\n"
124
+ end
125
+ end
126
+ else
127
+ copy_file "application.js", js_manifest
128
+ end
129
+
130
+ # Handle CSS Manifest
131
+ css_manifest = "app/assets/stylesheets/application.css"
132
+ if File.exist?(css_manifest)
133
+ content = File.read(css_manifest)
134
+ unless content.match(/require_tree\s+\./)
135
+ style_require_block = " *= require startup_framework\n"
136
+ insert_into_file css_manifest, style_require_block, :after => "require_self\n"
137
+ end
138
+ else
139
+ copy_file "application.css", "app/assets/stylesheets/application.css"
140
+ end
141
+
78
142
  end
79
143
 
80
144
  def patch_assets
81
- gem_assets_dir = File.expand_path("../../../../../app/assets/", __FILE__)
145
+ @gem_assets_dir = File.expand_path("../../../../../app/assets/", __FILE__)
82
146
 
83
147
  #Replace fonts-path
84
- gsub_file File.join(gem_assets_dir, @less_dir, "helper.less"), /\.\.\/fonts\//, "@{startup-basePath}common-files/fonts/"
148
+ gsub_file File.join(@gem_assets_dir, @less_dir, "helper.less"), /\.\.\/fonts\//, "@{startup-basePath}common-files/fonts/"
85
149
 
86
150
 
87
151
  # replace all urls with asset urls with the exception of data urls
88
- Dir.glob("#{gem_assets_dir}/#{@less_dir}/*.less") do |less_file|
152
+ Dir.glob("#{@gem_assets_dir}/#{@less_dir}/*.less") do |less_file|
89
153
 
90
154
  if less_file =~ /icon-font\.less\Z/
91
155
  gsub_file less_file, /url\((.+?)\)/, 'font-url(\\1)'
@@ -94,18 +158,86 @@ module StartupFramework
94
158
  end
95
159
  end
96
160
 
97
- Dir.glob("#{gem_assets_dir}/#{@target_ui_kit}/**/*.less") do |ui_kit_less_file|
161
+ Dir.glob("#{@gem_assets_dir}/#{@target_ui_kit}/**/*.less") do |ui_kit_less_file|
98
162
  #replace all files with the exception of price-common.less
99
163
  unless ui_kit_less_file =~ /price-common\.less\Z/
100
164
  gsub_file ui_kit_less_file, /url\((.+?)\)/, 'image-url(\\1)'
101
165
  end
102
166
  end
167
+
168
+
169
+ Dir.glob("#{@gem_assets_dir}/demo/**/*.html") do |html_file|
170
+ # gsub_file html_file, /<img src="img\/.+?>/ do |s|
171
+ # match = /img\/(.+?)"/.match(s)
172
+ # '<%= image_tag "' + match[1] + '" %>'
173
+ # end
174
+
175
+ gsub_file html_file, /src=\"img\//, "src=\"/assets/img/"
176
+ gsub_file html_file, %r(src="../../), "src=\"/assets/startup-framework/"
177
+
178
+ # Remove everything before <body> tag and after 'Load JS', inclusive
179
+ new_file = File.open("#{html_file}.erb", "w")
180
+ puts "Creating ERB files"
181
+ include_line = false
182
+ IO.foreach(html_file) do |line|
183
+ include_line = false if line =~ /Placed at the end/
184
+
185
+ new_file.write line if include_line
186
+
187
+ include_line = true if line =~ /<body>/
188
+ end
189
+ new_file.close
190
+
191
+ end
192
+
193
+ Dir.glob("#{@gem_assets_dir}/demo/**/*.less") do |less_file|
194
+ gsub_file less_file, %r(../../../), "/startup-framework/"
195
+
196
+ insert_into_file less_file, "@import 'startup_framework';\n", :before => "/* header"
103
197
 
198
+ f = File.new(less_file, 'r+')
199
+ f.each_line do |line|
200
+ if line.include? 'common-files' or line.include? 'flat-ui'
201
+ # seek back to the beginning of the line.
202
+ f.seek(-line.length, IO::SEEK_CUR)
104
203
 
105
- # icon-font.less Do it for all less files in common-files/less and ui-kit folder
106
- #gsub_file File.join(gem_assets_dir, @less_dir, "icon-font.less"), /url\((.+?)\)/, 'asset-url(\\1)'
204
+ # overwrite line with spaces and add a newline char
205
+ f.write(' ' * (line.length - 1))
206
+ f.write("\n")
207
+ end
208
+ end
209
+ f.close
210
+
211
+ end
107
212
 
213
+
214
+ if options[:flatui]
215
+ # switch.less
216
+ # More involved patch because less-rails won't translate when inside ~""
217
+ # Create LESS variable and interpolate into .mask(~"")
218
+ switch_file = File.join(@gem_assets_dir, "less/modules", "switch.less")
219
+ mask_image_url = "@mask-image-url: image-url('switch/mask.png');\n"
220
+ insert_into_file switch_file, mask_image_url, :before => ".has-switch {\n"
221
+ gsub_file switch_file, /url\('\.\.\/images\/.+?\)/, "@{mask-image-url}"
222
+ end
223
+ # icon-font.less Do it for all less files in common-files/less and ui-kit folder
224
+ #gsub_file File.join(@gem_assets_dir, @less_dir, "icon-font.less"), /url\((.+?)\)/, 'asset-url(\\1)'
108
225
  end
226
+
227
+
228
+ private
229
+
230
+ def copy_flatui
231
+ puts "Copying flat ui files"
232
+ directory File.join(@pro_dir, @flat_ui,"fonts"), File.join(@gem_assets_dir, "fonts")
233
+ directory File.join(@pro_dir, @flat_ui,"images"), File.join(@gem_assets_dir, "images")
234
+ directory File.join(@pro_dir, @flat_ui,"js"), File.join(@gem_assets_dir, "javascripts")
235
+ directory File.join(@pro_dir, @flat_ui,"less"), File.join(@gem_assets_dir, "less")
236
+ end
237
+
238
+ def generate_demo
239
+
240
+ end
109
241
 
110
242
  end
111
243
  end
@@ -0,0 +1,13 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the top of the
9
+ * compiled file, but it's generally better to create a new file per style scope.
10
+ *
11
+ *= require_self
12
+ *= require_tree .
13
+ */
@@ -0,0 +1,23 @@
1
+ // This is a manifest file that'll be compiled into application.js, which will include all the files
2
+ // listed below.
3
+ //
4
+ // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5
+ // or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path.
6
+ //
7
+ // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8
+ // the compiled file.
9
+ //
10
+ // WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD
11
+ // GO AFTER THE REQUIRES BELOW.
12
+ //
13
+ //= require jquery
14
+ //= require jquery.ui.button
15
+ //= require jquery.ui.datepicker
16
+ //= require jquery.ui.slider.js
17
+ //= require jquery.ui.spinner.js
18
+ //= require jquery.ui.tooltip.js
19
+ //= require jquery.ui.effect.js
20
+ //= require jquery_ujs
21
+ //= require twitter/bootstrap
22
+ //= require flatuipro
23
+ //= require_tree .
@@ -0,0 +1,7 @@
1
+ //= require jquery.ui.touch-punch.min
2
+ //= require bootstrap-select
3
+ //= require bootstrap-switch
4
+ //= require flatui-checkbox
5
+ //= require flatui-radio
6
+ //= require jquery.tagsinput
7
+ //= require jquery.placeholder
@@ -1,4 +1,4 @@
1
- //= require flatuipro
1
+
2
2
  //= require startup-framework/common-files/js/modernizr.custom
3
3
  //= require startup-framework/common-files/js/page-transitions
4
4
  //= require startup-framework/common-files/js/jquery.scrollTo-1.4.3.1-min
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: designmodo-startup_framework-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3.9
4
+ version: 1.1.3.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vertmac
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-27 00:00:00.000000000 Z
11
+ date: 2014-06-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: less-rails-bootstrap
@@ -65,10 +65,14 @@ files:
65
65
  - Rakefile
66
66
  - lib/designmodo/startup_framework/rails.rb
67
67
  - lib/designmodo/startup_framework/rails/version.rb
68
+ - lib/generators/startup_framework/demo/demo_generator.rb
69
+ - lib/generators/startup_framework/install/USAGE
68
70
  - lib/generators/startup_framework/install/install_generator.rb
71
+ - lib/generators/startup_framework/install/templates/application.css
72
+ - lib/generators/startup_framework/install/templates/application.js
73
+ - lib/generators/startup_framework/install/templates/flatui.js
69
74
  - lib/generators/startup_framework/install/templates/startup_framework.js
70
75
  - lib/generators/startup_framework/install/templates/startup_framework.less
71
- - lib/tests/test.rb
72
76
  homepage: https://github.com/vertmac/designmodo-startup_framework-rails
73
77
  licenses:
74
78
  - LGPL
@@ -1,20 +0,0 @@
1
- require File.join(File.dirname(__FILE__), 'test_helper')
2
-
3
- require 'generators/cells/cell_generator'
4
-
5
- class CellGeneratorTest < Rails::Generators::TestCase
6
- destination File.expand_path("../tmp", File.dirname(__FILE__))
7
- setup :prepare_destination
8
- tests ::StartupFramework::Generators::InstallGenerator
9
-
10
- test "copy assets" do
11
- run_generator %w(/Users/roney/Workspace/artifacts/StartupFramework)
12
-
13
- assert_file "app/cells/blog_cell.rb", /class BlogCell < Cell::Rails/
14
- assert_file "app/cells/blog_cell.rb", /def post/
15
- assert_file "app/cells/blog_cell.rb", /def latest/
16
- assert_file "app/cells/blog/post.html.erb", %r(app/cells/blog/post.html.erb)
17
- assert_file "app/cells/blog/latest.html.erb", %r(app/cells/blog/latest.html.erb)
18
- assert_file "test/cells/blog_cell_test.rb"
19
- end
20
- end