test/generators/resource_generator_test.rb in adminpanel-2.2.2 vs test/generators/resource_generator_test.rb in adminpanel-2.2.3
- old
+ new
@@ -4,22 +4,33 @@
class ResourceGeneratorTest < Rails::Generators::TestCase
tests Adminpanel::ResourceGenerator
destination Rails.root.join('tmp/generators')
setup :prepare_destination
- def test_not_generation_of_gallery
+ def test_default_not_generation_of_gallery
run_generator %w(
post
name
description:wysiwyg
number:float
- --no-gallery
)
assert_no_file 'app/models/adminpanel/postfile.rb'
- assert_no_migration('db/migrate/create_adminpanel_productfiles.rb')
+ assert_no_migration 'db/migrate/create_adminpanel_postfiles.rb'
end
+ def test_generation_of_gallery
+ run_generator %w(
+ post
+ name
+ description:wysiwyg
+ number:float
+ --no-skip-gallery
+ )
+ assert_file 'app/models/adminpanel/postfile.rb'
+ assert_migration 'db/migrate/create_adminpanel_postfiles.rb'
+ end
+
# def test_initializer_update
# run_generator %w(
# post
# name
# description:wysiwyg
@@ -30,43 +41,20 @@
# 'config/adminpanel_setup.rb',
# /:posts,/
# )
# end
- def test_correct_migration_attributes
- generator = Adminpanel::ResourceGenerator.new %w(
- post
- name
- description:wysiwyg
- number:float
- flag:boolean
- quantity:integer
- date:datepicker
- )
-
- # puts generator.generate_migration
-
- # assert_migration(
- # 'db/migrate/create_adminpanel_posts.rb',
- # /t.string :name/,
- # /t.float :number/,
- # /t.boolean :flag/,
- # /t.integer :quantity/,
- # /t.string :date/,
- # /t.text :description/
- # )
- end
-
def test_controller_generation
run_generator %w(
post
name
description:wysiwyg
number:float
flag:boolean
quantity:integer
date:datepicker
+ --no-skip-gallery
)
assert_file(
'app/controllers/adminpanel/posts_controller.rb',
/params.require\(:post\).permit/,
/:name/,
@@ -79,23 +67,25 @@
)
end
def test_model_generation
run_generator %w(
- post
+ admin_post
name
description:wysiwyg
number:float
flag:boolean
quantity:integer
date:datepicker
categories:has_many
+ --no-skip-gallery
)
assert_file(
- 'app/models/adminpanel/post.rb',
+ 'app/models/adminpanel/admin_post.rb',
+ /class AdminPost </,
/include Adminpanel::Base/,
- /mount_images :postfiles/,
+ /mount_images :admin_postfiles/,
# form_fields generated correctly
/'description' => {/,
/'type' => 'wysiwyg_field',/,
/'name' => {/,
/'type' => 'text_field',/,
@@ -105,10 +95,10 @@
/'type' => 'boolean',/,
/'quantity' => {/,
/'type' => 'number_field',/,
/'date' => {/,
/'type' => 'datepicker',/,
- /'postfiles' => {/,
+ /'admin_postfiles' => {/,
/'type' => 'adminpanel_file_field',/,
/'category_ids' => {/,
/'type' => 'has_many'/,
/'model' => 'Adminpanel::/
)