comfortable_mexican_sofa 2.0.9 → 2.0.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/comfy/vendor/bootstrap.min.js +3 -3
- data/app/assets/stylesheets/comfy/admin/cms/application.sass +1 -2
- data/app/assets/stylesheets/comfy/admin/cms/base.sass +12 -13
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_alert.scss +3 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_button-group.scss +31 -72
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_buttons.scss +26 -19
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_card.scss +23 -12
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_carousel.scss +2 -2
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_close.scss +6 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_code.scss +4 -12
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_custom-forms.scss +124 -84
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_dropdown.scss +30 -2
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_forms.scss +46 -71
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_functions.scss +4 -4
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_images.scss +0 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_input-group.scss +99 -126
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_list-group.scss +2 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_modal.scss +24 -9
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_nav.scss +2 -2
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_navbar.scss +8 -3
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_pagination.scss +32 -19
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_popover.scss +106 -117
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_print.scss +17 -3
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_progress.scss +4 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_reboot.scss +3 -25
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_tables.scss +1 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_tooltip.scss +65 -57
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_type.scss +2 -2
- data/app/assets/stylesheets/comfy/vendor/bootstrap/_variables.scss +174 -108
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-grid.scss +32 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap-reboot.scss +12 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/bootstrap.scss +42 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_background-variant.scss +2 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_breakpoints.scss +11 -7
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_buttons.scss +37 -22
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_caret.scss +30 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_forms.scss +48 -19
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_grid-framework.scss +5 -7
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_hover.scss +24 -46
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_list-group.scss +10 -13
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_screen-reader.scss +1 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/mixins/_text-hide.scss +1 -0
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_borders.scss +6 -1
- data/app/assets/stylesheets/comfy/vendor/bootstrap/utilities/_display.scss +10 -28
- data/app/controllers/comfy/admin/cms/files_controller.rb +6 -7
- data/app/helpers/comfy/admin/cms_helper.rb +5 -4
- data/app/models/concerns/comfy/cms/with_categories.rb +20 -9
- data/app/views/comfy/admin/cms/categories/_edit.html.haml +3 -3
- data/app/views/comfy/admin/cms/categories/_form.html.haml +3 -9
- data/app/views/comfy/admin/cms/categories/_index.html.haml +2 -2
- data/app/views/comfy/admin/cms/categories/_show.html.haml +4 -3
- data/app/views/comfy/admin/cms/categories/create.js.erb +1 -1
- data/app/views/comfy/admin/cms/files/_form.html.haml +11 -12
- data/app/views/comfy/admin/cms/files/edit.html.haml +2 -2
- data/app/views/comfy/admin/cms/files/new.html.haml +2 -2
- data/app/views/comfy/admin/cms/fragments/_form_fragment_attachments.html.haml +7 -5
- data/app/views/comfy/admin/cms/fragments/_form_fragments.html.haml +1 -1
- data/app/views/comfy/admin/cms/layouts/_form.html.haml +3 -2
- data/app/views/comfy/admin/cms/layouts/edit.html.haml +1 -1
- data/app/views/comfy/admin/cms/layouts/new.html.haml +2 -2
- data/app/views/comfy/admin/cms/pages/_form.html.haml +3 -5
- data/app/views/comfy/admin/cms/pages/edit.html.haml +1 -1
- data/app/views/comfy/admin/cms/pages/new.html.haml +1 -1
- data/app/views/comfy/admin/cms/revisions/show.html.haml +2 -2
- data/app/views/comfy/admin/cms/sites/_form.html.haml +4 -4
- data/app/views/comfy/admin/cms/sites/edit.html.haml +1 -1
- data/app/views/comfy/admin/cms/sites/new.html.haml +2 -2
- data/app/views/comfy/admin/cms/snippets/_form.html.haml +2 -2
- data/app/views/comfy/admin/cms/snippets/edit.html.haml +1 -1
- data/app/views/comfy/admin/cms/snippets/new.html.haml +2 -2
- data/app/views/comfy/admin/cms/translations/_form.html.haml +5 -7
- data/app/views/comfy/admin/cms/translations/edit.html.haml +1 -1
- data/app/views/comfy/admin/cms/translations/new.html.haml +2 -2
- data/comfortable_mexican_sofa.gemspec +6 -3
- data/config/locales/fr.yml +33 -33
- data/lib/comfortable_mexican_sofa/content/tags/file.rb +1 -1
- data/lib/comfortable_mexican_sofa/content/tags/files.rb +1 -1
- data/lib/comfortable_mexican_sofa/form_builder.rb +10 -15
- data/lib/comfortable_mexican_sofa/seeds.rb +2 -5
- data/lib/comfortable_mexican_sofa/version.rb +1 -1
- metadata +9 -116
- data/app/assets/stylesheets/comfy/vendor/_bootstrap.scss +0 -42
- data/doc/preview.jpg +0 -0
- data/test/controllers/comfy/admin/cms/base_controller_test.rb +0 -18
- data/test/controllers/comfy/admin/cms/categories_controller_test.rb +0 -74
- data/test/controllers/comfy/admin/cms/files_controller_test.rb +0 -242
- data/test/controllers/comfy/admin/cms/layouts_controller_test.rb +0 -137
- data/test/controllers/comfy/admin/cms/pages_controller_test.rb +0 -580
- data/test/controllers/comfy/admin/cms/revisions/layout_controller_test.rb +0 -62
- data/test/controllers/comfy/admin/cms/revisions/page_controller_test.rb +0 -87
- data/test/controllers/comfy/admin/cms/revisions/snippet_controller_test.rb +0 -60
- data/test/controllers/comfy/admin/cms/revisions/translation_controller_test.rb +0 -68
- data/test/controllers/comfy/admin/cms/sites_controller_test.rb +0 -106
- data/test/controllers/comfy/admin/cms/snippets_controller_test.rb +0 -156
- data/test/controllers/comfy/admin/cms/translations_controller_test.rb +0 -182
- data/test/controllers/comfy/cms/assets_controller_test.rb +0 -61
- data/test/controllers/comfy/cms/content_controller_test.rb +0 -249
- data/test/fixtures/active_storage/attachments.yml +0 -9
- data/test/fixtures/active_storage/blobs.yml +0 -13
- data/test/fixtures/comfy/cms/categories.yml +0 -4
- data/test/fixtures/comfy/cms/categorizations.yml +0 -3
- data/test/fixtures/comfy/cms/files.yml +0 -5
- data/test/fixtures/comfy/cms/fragments.yml +0 -25
- data/test/fixtures/comfy/cms/layouts.yml +0 -34
- data/test/fixtures/comfy/cms/pages.yml +0 -24
- data/test/fixtures/comfy/cms/revisions.yml +0 -29
- data/test/fixtures/comfy/cms/sites.yml +0 -5
- data/test/fixtures/comfy/cms/snippets.yml +0 -6
- data/test/fixtures/comfy/cms/translations.yml +0 -7
- data/test/fixtures/files/data.zip +0 -0
- data/test/fixtures/files/document.pdf +0 -0
- data/test/fixtures/files/image.gif +0 -0
- data/test/fixtures/files/image.jpg +0 -0
- data/test/fixtures/generators/cms/application.rb +0 -7
- data/test/fixtures/generators/cms/routes.rb +0 -5
- data/test/fixtures/generators/scaffold/controller.rb +0 -62
- data/test/fixtures/generators/scaffold/migration.rb +0 -9
- data/test/fixtures/generators/scaffold/model.rb +0 -21
- data/test/fixtures/generators/scaffold/routes.rb +0 -6
- data/test/fixtures/generators/scaffold/tests/controller.rb +0 -111
- data/test/fixtures/generators/scaffold/tests/fixture +0 -2
- data/test/fixtures/generators/scaffold/tests/model.rb +0 -24
- data/test/fixtures/generators/scaffold/views/_form.haml +0 -5
- data/test/fixtures/generators/scaffold/views/edit.haml +0 -5
- data/test/fixtures/generators/scaffold/views/index.haml +0 -21
- data/test/fixtures/generators/scaffold/views/new.haml +0 -5
- data/test/fixtures/generators/scaffold/views/show.haml +0 -4
- data/test/fixtures/views/_nav_hook.html.erb +0 -1
- data/test/fixtures/views/_nav_hook_2.html.erb +0 -1
- data/test/fixtures/views/render_test/_test.html.erb +0 -1
- data/test/fixtures/views/render_test/new.html.erb +0 -1
- data/test/fixtures/views/render_test/render_layout.html.erb +0 -1
- data/test/gemfiles/5.2.gemfile +0 -19
- data/test/generators/cms_assets_generator_test.rb +0 -14
- data/test/generators/cms_controllers_generator_test.rb +0 -14
- data/test/generators/cms_generator_test.rb +0 -26
- data/test/generators/cms_models_generator_test.rb +0 -14
- data/test/generators/cms_views_generator_test.rb +0 -14
- data/test/generators/scaffold_generator_test.rb +0 -32
- data/test/helpers/cms_helper_test.rb +0 -106
- data/test/integration/access_control_test.rb +0 -179
- data/test/integration/i18n_test.rb +0 -38
- data/test/integration/meta_variables_test.rb +0 -27
- data/test/integration/render_cms_test.rb +0 -255
- data/test/integration/routing_test.rb +0 -19
- data/test/integration/seeds_test.rb +0 -75
- data/test/integration/sites_test.rb +0 -107
- data/test/integration/view_hooks_test.rb +0 -47
- data/test/lib/configuration_test.rb +0 -38
- data/test/lib/content/block_test.rb +0 -26
- data/test/lib/content/params_parser_test.rb +0 -126
- data/test/lib/content/renderer_test.rb +0 -276
- data/test/lib/content/tag_test.rb +0 -58
- data/test/lib/content/tags/asset_test.rb +0 -104
- data/test/lib/content/tags/checkbox_test.rb +0 -21
- data/test/lib/content/tags/date_test.rb +0 -21
- data/test/lib/content/tags/datetime_test.rb +0 -21
- data/test/lib/content/tags/file_link_test.rb +0 -91
- data/test/lib/content/tags/file_test.rb +0 -69
- data/test/lib/content/tags/files_test.rb +0 -52
- data/test/lib/content/tags/fragment_test.rb +0 -68
- data/test/lib/content/tags/helper_test.rb +0 -62
- data/test/lib/content/tags/markdown_test.rb +0 -37
- data/test/lib/content/tags/number_test.rb +0 -14
- data/test/lib/content/tags/partial_test.rb +0 -65
- data/test/lib/content/tags/snippet_test.rb +0 -37
- data/test/lib/content/tags/template_test.rb +0 -51
- data/test/lib/content/tags/text_test.rb +0 -14
- data/test/lib/content/tags/textarea_test.rb +0 -14
- data/test/lib/content/tags/wysiwyg_test.rb +0 -14
- data/test/lib/revisions_test.rb +0 -222
- data/test/lib/seeds/files_test.rb +0 -97
- data/test/lib/seeds/layouts_test.rb +0 -156
- data/test/lib/seeds/pages_test.rb +0 -230
- data/test/lib/seeds/snippets_test.rb +0 -99
- data/test/lib/seeds_test.rb +0 -51
- data/test/models/categorization_test.rb +0 -76
- data/test/models/category_test.rb +0 -39
- data/test/models/file_test.rb +0 -43
- data/test/models/fragment_test.rb +0 -132
- data/test/models/layout_test.rb +0 -194
- data/test/models/page_test.rb +0 -575
- data/test/models/site_test.rb +0 -190
- data/test/models/snippet_test.rb +0 -56
- data/test/models/translation_test.rb +0 -67
- data/test/system/layouts_frontend_test.rb +0 -15
- data/test/system/pages_frontend_test.rb +0 -15
- data/test/system/sites_frontend_test.rb +0 -11
- data/test/system/snippets_frontend_test.rb +0 -15
- data/test/tasks/cms_seeds_test.rb +0 -34
- data/test/test_helper.rb +0 -201
@@ -1,21 +0,0 @@
|
|
1
|
-
.page-header
|
2
|
-
= link_to 'New Foo', new_admin_foo_path, class: 'btn btn-secondary float-right'
|
3
|
-
%h2= 'Foos'
|
4
|
-
|
5
|
-
= paginate @foos, theme: 'comfy'
|
6
|
-
|
7
|
-
%ul.list
|
8
|
-
- @foos.each do |foo|
|
9
|
-
%li
|
10
|
-
.row
|
11
|
-
.col-md-8.item
|
12
|
-
.item-content
|
13
|
-
.item-title
|
14
|
-
= foo.bar
|
15
|
-
|
16
|
-
.col-md-4.d-flex.align-items-center.justify-content-md-end
|
17
|
-
.btn-group.btn-group-sm
|
18
|
-
= link_to 'Edit', edit_admin_foo_path(foo), class: 'btn btn-outline-secondary'
|
19
|
-
= link_to 'Delete', admin_foo_path(foo), method: :delete, data: {confirm: 'Are you sure?'}, class: 'btn btn-danger'
|
20
|
-
|
21
|
-
= paginate @foos, theme: 'comfy'
|
@@ -1 +0,0 @@
|
|
1
|
-
hook_content
|
@@ -1 +0,0 @@
|
|
1
|
-
<hook_content_2>
|
@@ -1 +0,0 @@
|
|
1
|
-
TestPartial <%= @test_value %>
|
@@ -1 +0,0 @@
|
|
1
|
-
Can render CMS layout and specify action
|
@@ -1 +0,0 @@
|
|
1
|
-
TestTemplate <%= @test_value %>
|
data/test/gemfiles/5.2.gemfile
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
source 'http://rubygems.org'
|
2
|
-
|
3
|
-
gemspec path: "../../"
|
4
|
-
|
5
|
-
group :development, :test do
|
6
|
-
gem "byebug", platforms: %i[mri mingw x64_mingw]
|
7
|
-
gem "capybara"
|
8
|
-
gem "kaminari"
|
9
|
-
gem "puma"
|
10
|
-
gem "rubocop", require: false
|
11
|
-
gem "selenium-webdriver"
|
12
|
-
gem "sqlite3"
|
13
|
-
end
|
14
|
-
|
15
|
-
group :test do
|
16
|
-
gem "coveralls", require: false
|
17
|
-
gem "mocha", require: false
|
18
|
-
gem "rails-controller-testing"
|
19
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/cms/assets_generator"
|
3
|
-
|
4
|
-
class CmsAssetsGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::Cms::AssetsGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator
|
10
|
-
assert_directory "app/assets/javascripts/comfy/admin/cms"
|
11
|
-
assert_directory "app/assets/stylesheets/comfy/admin/cms"
|
12
|
-
end
|
13
|
-
|
14
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/cms/controllers_generator"
|
3
|
-
|
4
|
-
class CmsControllersGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::Cms::ControllersGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator
|
10
|
-
assert_directory "app/controllers/comfy"
|
11
|
-
assert_file "app/controllers/comfy/admin/cms/base_controller.rb"
|
12
|
-
end
|
13
|
-
|
14
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/cms/cms_generator"
|
3
|
-
|
4
|
-
class CmsGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::CmsGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator
|
10
|
-
|
11
|
-
assert_migration "db/migrate/create_cms.rb"
|
12
|
-
|
13
|
-
assert_file "config/initializers/comfortable_mexican_sofa.rb"
|
14
|
-
|
15
|
-
assert_file "config/routes.rb", read_file("cms/routes.rb")
|
16
|
-
|
17
|
-
assert_file "config/application.rb", read_file("cms/application.rb")
|
18
|
-
|
19
|
-
assert_directory "db/cms_seeds"
|
20
|
-
|
21
|
-
assert_file "app/assets/javascripts/comfy/admin/cms/custom.js.coffee"
|
22
|
-
|
23
|
-
assert_file "app/assets/stylesheets/comfy/admin/cms/custom.sass"
|
24
|
-
end
|
25
|
-
|
26
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/cms/models_generator"
|
3
|
-
|
4
|
-
class CmsModelsGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::Cms::ModelsGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator
|
10
|
-
assert_directory "app/models/comfy"
|
11
|
-
assert_file "app/models/comfy/cms/page.rb"
|
12
|
-
end
|
13
|
-
|
14
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/cms/views_generator"
|
3
|
-
|
4
|
-
class CmsViewsGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::Cms::ViewsGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator
|
10
|
-
assert_directory "app/views/comfy"
|
11
|
-
assert_file "app/views/comfy/admin/cms/pages/index.html.haml"
|
12
|
-
end
|
13
|
-
|
14
|
-
end
|
@@ -1,32 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
require_relative "../../lib/generators/comfy/scaffold/scaffold_generator"
|
3
|
-
|
4
|
-
class ScaffoldGeneratorTest < Rails::Generators::TestCase
|
5
|
-
|
6
|
-
tests Comfy::Generators::ScaffoldGenerator
|
7
|
-
|
8
|
-
def test_generator
|
9
|
-
run_generator %w[Foo bar:string]
|
10
|
-
|
11
|
-
assert_migration "db/migrate/create_foos.rb", read_file("scaffold/migration.rb")
|
12
|
-
assert_file "app/models/foo.rb", read_file("scaffold/model.rb")
|
13
|
-
assert_file "test/models/foo_test.rb", read_file("scaffold/tests/model.rb")
|
14
|
-
assert_file "test/fixtures/foos.yml", read_file("scaffold/tests/fixture")
|
15
|
-
|
16
|
-
assert_file "app/controllers/admin/foos_controller.rb", read_file("scaffold/controller.rb")
|
17
|
-
assert_file "test/controllers/admin/foos_controller_test.rb", read_file("scaffold/tests/controller.rb")
|
18
|
-
|
19
|
-
assert_file "app/views/admin/foos/index.html.haml", read_file("scaffold/views/index.haml")
|
20
|
-
assert_file "app/views/admin/foos/show.html.haml", read_file("scaffold/views/show.haml")
|
21
|
-
assert_file "app/views/admin/foos/new.html.haml", read_file("scaffold/views/new.haml")
|
22
|
-
assert_file "app/views/admin/foos/edit.html.haml", read_file("scaffold/views/edit.haml")
|
23
|
-
assert_file "app/views/admin/foos/_form.html.haml", read_file("scaffold/views/_form.haml")
|
24
|
-
|
25
|
-
assert_file "config/routes.rb", read_file("scaffold/routes.rb")
|
26
|
-
|
27
|
-
assert_file "app/views/comfy/admin/cms/partials/_navigation_inner.html.haml" do |file|
|
28
|
-
assert_match "%li.nav-item\n = active_link_to 'Foos', admin_foos_path, class: 'nav-link'", file
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
end
|
@@ -1,106 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
|
3
|
-
class ViewMethodsTest < ActionView::TestCase
|
4
|
-
|
5
|
-
include Comfy::CmsHelper
|
6
|
-
|
7
|
-
module TestViewHelpers
|
8
|
-
|
9
|
-
def hello
|
10
|
-
"hello"
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
14
|
-
ActionView::Base.send :include, TestViewHelpers
|
15
|
-
|
16
|
-
setup do
|
17
|
-
# we're simulating instance variables that are present on the view/controller
|
18
|
-
@cms_site = comfy_cms_sites(:default)
|
19
|
-
@cms_page = comfy_cms_pages(:default)
|
20
|
-
end
|
21
|
-
|
22
|
-
def test_cms_fragment_content
|
23
|
-
assert_equal "content", cms_fragment_content(:content)
|
24
|
-
assert_equal "content", cms_fragment_content(:content, @cms_page)
|
25
|
-
assert_equal "", cms_fragment_content(:invalid)
|
26
|
-
end
|
27
|
-
|
28
|
-
def test_cms_fragment_content_with_datetime
|
29
|
-
frag = comfy_cms_fragments(:datetime)
|
30
|
-
assert_equal "datetime", frag.tag
|
31
|
-
assert_equal "1981-10-04 12:34:56 UTC", cms_fragment_content(frag.identifier).to_s
|
32
|
-
end
|
33
|
-
|
34
|
-
def test_cms_fragment_content_with_date
|
35
|
-
frag = comfy_cms_fragments(:datetime)
|
36
|
-
frag.update_columns(tag: "date", datetime: "2017-01-01")
|
37
|
-
assert_equal "2017-01-01 00:00:00 UTC", cms_fragment_content(frag.identifier).to_s
|
38
|
-
end
|
39
|
-
|
40
|
-
def test_cms_fragment_content_with_boolean
|
41
|
-
frag = comfy_cms_fragments(:boolean)
|
42
|
-
assert_equal true, cms_fragment_content(frag.identifier)
|
43
|
-
end
|
44
|
-
|
45
|
-
def test_cms_fragment_content_with_files
|
46
|
-
frag = comfy_cms_fragments(:file)
|
47
|
-
assert_equal frag.attachments.to_a, cms_fragment_content(frag.identifier).to_a
|
48
|
-
end
|
49
|
-
|
50
|
-
def test_cms_fragment_render
|
51
|
-
assert_equal "content", cms_fragment_render(:content)
|
52
|
-
assert_equal "", cms_fragment_render(:invalid)
|
53
|
-
end
|
54
|
-
|
55
|
-
def test_cms_fragment_render_with_tags
|
56
|
-
comfy_cms_fragments(:default).update_column(:content, "a {{cms:helper hello }} b")
|
57
|
-
assert_equal "a hello b", cms_fragment_render(:content)
|
58
|
-
end
|
59
|
-
|
60
|
-
def test_cms_fragment_render_with_erb
|
61
|
-
comfy_cms_fragments(:default).update_column(:content, "<%= 1 + 1 %>")
|
62
|
-
assert_equal "<%= 1 + 1 %>", cms_fragment_render(:content)
|
63
|
-
end
|
64
|
-
|
65
|
-
def test_cms_fragment_render_with_datetime
|
66
|
-
comfy_cms_layouts(:default).update_column(:content, "{{cms:datetime datetime}}")
|
67
|
-
assert_equal "1981-10-04 12:34:56 UTC", cms_fragment_render(:datetime)
|
68
|
-
end
|
69
|
-
|
70
|
-
def test_cms_fragment_render_with_boolean
|
71
|
-
comfy_cms_layouts(:default).update_column(:content, "{{cms:checkbox boolean}}")
|
72
|
-
assert_equal "true", cms_fragment_render(:boolean)
|
73
|
-
end
|
74
|
-
|
75
|
-
def test_cms_fragment_render_with_files
|
76
|
-
frag = comfy_cms_fragments(:file)
|
77
|
-
comfy_cms_layouts(:default).update_column(:content, "{{cms:file file}}")
|
78
|
-
assert_equal url_for(frag.attachments.first), cms_fragment_render(:file)
|
79
|
-
end
|
80
|
-
|
81
|
-
def test_cms_snippet_content
|
82
|
-
assert_equal "snippet content", cms_snippet_content(:default)
|
83
|
-
assert_equal "snippet content", cms_snippet_content(:default, @cms_site)
|
84
|
-
assert_equal "", cms_snippet_content(:invalid)
|
85
|
-
end
|
86
|
-
|
87
|
-
def test_cms_snippet_content_with_site_loading
|
88
|
-
@cms_site = nil
|
89
|
-
assert_equal "snippet content", cms_snippet_content(:default)
|
90
|
-
end
|
91
|
-
|
92
|
-
def test_cms_snippet_render
|
93
|
-
assert_equal "snippet content", cms_snippet_render(:default)
|
94
|
-
end
|
95
|
-
|
96
|
-
def test_cms_snippet_with_erb
|
97
|
-
comfy_cms_snippets(:default).update_column(:content, "<%= 1 + 1 %>")
|
98
|
-
assert_equal "<%= 1 + 1 %>", cms_snippet_render(:default)
|
99
|
-
end
|
100
|
-
|
101
|
-
def test_cms_snippet_render_with_tags
|
102
|
-
comfy_cms_snippets(:default).update_column(:content, "a {{cms:helper hello}} b")
|
103
|
-
assert_equal "a hello b", cms_snippet_render(:default)
|
104
|
-
end
|
105
|
-
|
106
|
-
end
|
@@ -1,179 +0,0 @@
|
|
1
|
-
require_relative "../test_helper"
|
2
|
-
|
3
|
-
class AccessControlTest < ActionDispatch::IntegrationTest
|
4
|
-
|
5
|
-
module TestAuthentication
|
6
|
-
|
7
|
-
module Authenticate
|
8
|
-
|
9
|
-
def authenticate
|
10
|
-
render plain: "Test Login Denied", status: :unauthorized
|
11
|
-
end
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
# faking ComfortableMexicanSofa.config.admin_auth = 'AccessControlTest::TestAuthentication'
|
16
|
-
# faking ComfortableMexicanSofa.config.public_auth = 'AccessControlTest::TestAuthentication'
|
17
|
-
class SitesController < Comfy::Admin::Cms::SitesController; include Authenticate; end
|
18
|
-
class ContentController < Comfy::Cms::ContentController; include Authenticate; end
|
19
|
-
|
20
|
-
end
|
21
|
-
|
22
|
-
module TestAuthorization
|
23
|
-
|
24
|
-
module Authorize
|
25
|
-
|
26
|
-
def authorize
|
27
|
-
@authorization_vars = instance_variables
|
28
|
-
render plain: "Test Access Denied", status: :forbidden
|
29
|
-
end
|
30
|
-
|
31
|
-
end
|
32
|
-
|
33
|
-
# faking ComfortableMexicanSofa.config.admin_authorization = 'AccessControlTest::TestAuthorization'
|
34
|
-
# faking ComfortableMexicanSofa.config.public_authorization = 'AccessControlTest::TestAuthorization'
|
35
|
-
class SitesController < Comfy::Admin::Cms::SitesController; include Authorize; end
|
36
|
-
class LayoutsController < Comfy::Admin::Cms::LayoutsController; include Authorize; end
|
37
|
-
class PagesController < Comfy::Admin::Cms::PagesController; include Authorize; end
|
38
|
-
class SnippetsController < Comfy::Admin::Cms::SnippetsController; include Authorize; end
|
39
|
-
class FilesController < Comfy::Admin::Cms::FilesController; include Authorize; end
|
40
|
-
class CategoriesController < Comfy::Admin::Cms::CategoriesController; include Authorize; end
|
41
|
-
class RevisionsController < Comfy::Admin::Cms::Revisions::LayoutController; include Authorize; end
|
42
|
-
class TranslationsController < Comfy::Admin::Cms::TranslationsController; include Authorize; end
|
43
|
-
class ContentController < Comfy::Cms::ContentController; include Authorize; end
|
44
|
-
|
45
|
-
end
|
46
|
-
|
47
|
-
# -- Tests -------------------------------------------------------------------
|
48
|
-
def test_admin_authentication_default
|
49
|
-
assert_equal "ComfortableMexicanSofa::AccessControl::AdminAuthentication",
|
50
|
-
ComfortableMexicanSofa.config.admin_auth
|
51
|
-
|
52
|
-
get comfy_admin_cms_sites_path
|
53
|
-
assert_response :unauthorized
|
54
|
-
|
55
|
-
r :get, comfy_admin_cms_sites_path
|
56
|
-
assert_response :success
|
57
|
-
end
|
58
|
-
|
59
|
-
def test_admin_authentication_custom
|
60
|
-
with_routing do |routes|
|
61
|
-
routes.draw do
|
62
|
-
get "/admin/sites" => "access_control_test/test_authentication/sites#index"
|
63
|
-
end
|
64
|
-
|
65
|
-
get "/admin/sites"
|
66
|
-
assert_response :unauthorized
|
67
|
-
assert_equal "Test Login Denied", response.body
|
68
|
-
end
|
69
|
-
end
|
70
|
-
|
71
|
-
def test_admin_authorization_default
|
72
|
-
assert_equal "ComfortableMexicanSofa::AccessControl::AdminAuthorization",
|
73
|
-
ComfortableMexicanSofa.config.admin_authorization
|
74
|
-
|
75
|
-
Comfy::Admin::Cms::BaseController.send(:include, ComfortableMexicanSofa::AccessControl::AdminAuthorization)
|
76
|
-
r :get, "/admin/sites/#{comfy_cms_sites(:default).to_param}/edit"
|
77
|
-
assert_response :success, response.body
|
78
|
-
end
|
79
|
-
|
80
|
-
def test_admin_authorization_custom
|
81
|
-
site = comfy_cms_sites(:default)
|
82
|
-
with_routing do |routes|
|
83
|
-
routes.draw do
|
84
|
-
s = "/admin/sites"
|
85
|
-
ns = "access_control_test/test_authorization"
|
86
|
-
get "#{s}/:id/edit" => "#{ns}/sites#edit"
|
87
|
-
get "#{s}/:site_id/layouts/:id/edit" => "#{ns}/layouts#edit"
|
88
|
-
get "#{s}/:site_id/layouts/:layout_id/revisions/:id" => "#{ns}/revisions#show"
|
89
|
-
get "#{s}/:site_id/pages/:id/edit" => "#{ns}/pages#edit"
|
90
|
-
get "#{s}/:site_id/pages/:page_id/translations/:id/edit" => "#{ns}/pages#edit"
|
91
|
-
get "#{s}/:site_id/snippets/:id/edit" => "#{ns}/snippets#edit"
|
92
|
-
get "#{s}/:site_id/files/:id/edit" => "#{ns}/files#edit"
|
93
|
-
get "#{s}/:site_id/categories/:id/edit" => "#{ns}/categories#edit"
|
94
|
-
end
|
95
|
-
|
96
|
-
r :get, "/admin/sites/#{site.id}/edit"
|
97
|
-
assert_response :forbidden
|
98
|
-
assert_equal "Test Access Denied", response.body
|
99
|
-
assert assigns(:authorization_vars)
|
100
|
-
assert assigns(:authorization_vars).member?(:@site)
|
101
|
-
|
102
|
-
layout = comfy_cms_layouts(:default)
|
103
|
-
r :get, "/admin/sites/#{site.id}/layouts/#{layout.id}/edit"
|
104
|
-
assert assigns(:authorization_vars).member?(:@site)
|
105
|
-
assert assigns(:authorization_vars).member?(:@layout)
|
106
|
-
|
107
|
-
revision = comfy_cms_revisions(:layout)
|
108
|
-
r :get, "/admin/sites/#{site.id}/layouts/#{layout.id}/revisions/#{revision.id}"
|
109
|
-
assert assigns(:authorization_vars).member?(:@site)
|
110
|
-
assert assigns(:authorization_vars).member?(:@record)
|
111
|
-
|
112
|
-
page = comfy_cms_pages(:default)
|
113
|
-
r :get, "/admin/sites/#{site.id}/pages/#{page.id}/edit"
|
114
|
-
assert assigns(:authorization_vars).member?(:@site)
|
115
|
-
assert assigns(:authorization_vars).member?(:@page)
|
116
|
-
|
117
|
-
translation = comfy_cms_translations(:default)
|
118
|
-
r :get, "/admin/sites/#{site.id}/pages/#{page.id}/translations/#{translation.id}/edit"
|
119
|
-
assert assigns(:authorization_vars).member?(:@site)
|
120
|
-
assert assigns(:authorization_vars).member?(:@page)
|
121
|
-
|
122
|
-
snippet = comfy_cms_snippets(:default)
|
123
|
-
r :get, "/admin/sites/#{site.id}/snippets/#{snippet.id}/edit"
|
124
|
-
assert assigns(:authorization_vars).member?(:@site)
|
125
|
-
assert assigns(:authorization_vars).member?(:@snippet)
|
126
|
-
|
127
|
-
file = comfy_cms_files(:default)
|
128
|
-
r :get, "/admin/sites/#{site.id}/files/#{file.id}/edit"
|
129
|
-
assert assigns(:authorization_vars).member?(:@site)
|
130
|
-
assert assigns(:authorization_vars).member?(:@file)
|
131
|
-
|
132
|
-
category = comfy_cms_categories(:default)
|
133
|
-
r :get, "/admin/sites/#{site.id}/categories/#{category.id}/edit"
|
134
|
-
assert assigns(:authorization_vars).member?(:@site)
|
135
|
-
assert assigns(:authorization_vars).member?(:@category)
|
136
|
-
end
|
137
|
-
end
|
138
|
-
|
139
|
-
def test_public_authentication_default
|
140
|
-
assert_equal "ComfortableMexicanSofa::AccessControl::PublicAuthentication",
|
141
|
-
ComfortableMexicanSofa.config.public_auth
|
142
|
-
|
143
|
-
get "/"
|
144
|
-
assert_response :success, response.body
|
145
|
-
end
|
146
|
-
|
147
|
-
def test_public_authorization_default
|
148
|
-
assert_equal "ComfortableMexicanSofa::AccessControl::PublicAuthorization",
|
149
|
-
ComfortableMexicanSofa.config.public_authorization
|
150
|
-
|
151
|
-
get "/"
|
152
|
-
assert_response :success, response.body
|
153
|
-
end
|
154
|
-
|
155
|
-
def test_public_authentication_custom
|
156
|
-
with_routing do |routes|
|
157
|
-
routes.draw do
|
158
|
-
get "(*cms_path)" => "access_control_test/test_authentication/content#show"
|
159
|
-
end
|
160
|
-
|
161
|
-
get "/"
|
162
|
-
assert_response :unauthorized
|
163
|
-
assert_equal "Test Login Denied", response.body
|
164
|
-
end
|
165
|
-
end
|
166
|
-
|
167
|
-
def test_public_authorization_custom
|
168
|
-
with_routing do |routes|
|
169
|
-
routes.draw do
|
170
|
-
get "(*cms_path)" => "access_control_test/test_authorization/content#show"
|
171
|
-
end
|
172
|
-
|
173
|
-
get "/"
|
174
|
-
assert_response :forbidden
|
175
|
-
assert_equal "Test Access Denied", response.body
|
176
|
-
end
|
177
|
-
end
|
178
|
-
|
179
|
-
end
|