ui_bibz 2.5.6 → 3.0.0.alpha8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +3 -2
- data/.rubocop.yml +78 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +92 -104
- data/README.md +9 -52
- data/Rakefile +3 -2
- data/bin/test +7 -0
- data/config/initializers/will_paginate.rb +2 -1
- data/lib/ui_bibz.rb +17 -3
- data/lib/ui_bibz/concerns/models/searchable.rb +3 -3
- data/lib/ui_bibz/helpers/ui/core/boxes_helper.rb +9 -1
- data/lib/ui_bibz/helpers/ui/core/forms_helper.rb +20 -1
- data/lib/ui_bibz/helpers/ui/core/layouts_helper.rb +10 -2
- data/lib/ui_bibz/helpers/ui/core/lists_helper.rb +1 -1
- data/lib/ui_bibz/helpers/ui/core/notifications_helper.rb +9 -5
- data/lib/ui_bibz/helpers/ui/ux_helper.rb +2 -6
- data/lib/ui_bibz/infos.rb +11 -5
- data/lib/ui_bibz/inputs/ui_bibz_form/ui_bibz_form_builder.rb +15 -2
- data/lib/ui_bibz/inputs/ui_bibz_inputs/base_input.rb +4 -7
- data/lib/ui_bibz/inputs/ui_bibz_inputs/collection_input.rb +6 -9
- data/lib/ui_bibz/inputs/ui_bibz_inputs/ui_checkbox_field_input.rb +5 -1
- data/lib/ui_bibz/inputs/ui_bibz_inputs/ui_choice_field_input.rb +23 -0
- data/lib/ui_bibz/inputs/ui_bibz_inputs/ui_multi_select_field_input.rb +3 -3
- data/lib/ui_bibz/inputs/ui_bibz_inputs/ui_slider_field_input.rb +12 -0
- data/lib/ui_bibz/rails/engine.rb +1 -16
- data/lib/ui_bibz/railtie.rb +6 -0
- data/lib/ui_bibz/ui/concerns/card_itemable_concern.rb +67 -0
- data/lib/ui_bibz/ui/concerns/html_concern.rb +16 -0
- data/lib/ui_bibz/ui/core/boxes/card.rb +5 -50
- data/lib/ui_bibz/ui/core/boxes/card_accordion.rb +2 -0
- data/lib/ui_bibz/ui/core/boxes/card_column.rb +3 -1
- data/lib/ui_bibz/ui/core/boxes/card_deck.rb +3 -1
- data/lib/ui_bibz/ui/core/boxes/card_grid.rb +60 -0
- data/lib/ui_bibz/ui/core/boxes/card_group.rb +3 -1
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_link.rb +0 -3
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_subtitle.rb +47 -0
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_text.rb +0 -3
- data/lib/ui_bibz/ui/core/boxes/components/body/card_body_title.rb +1 -4
- data/lib/ui_bibz/ui/core/boxes/components/card_body.rb +15 -0
- data/lib/ui_bibz/ui/core/boxes/components/card_col.rb +65 -0
- data/lib/ui_bibz/ui/core/boxes/components/card_footer.rb +0 -3
- data/lib/ui_bibz/ui/core/boxes/components/card_header.rb +2 -4
- data/lib/ui_bibz/ui/core/boxes/components/card_image.rb +1 -4
- data/lib/ui_bibz/ui/core/boxes/components/card_row.rb +65 -0
- data/lib/ui_bibz/ui/core/boxes/components/card_tab_group.rb +0 -4
- data/lib/ui_bibz/ui/core/boxes/jumbotron.rb +1 -4
- data/lib/ui_bibz/ui/core/component.rb +16 -9
- data/lib/ui_bibz/ui/core/forms/buttons/button.rb +2 -2
- data/lib/ui_bibz/ui/core/forms/buttons/button_group.rb +9 -11
- data/lib/ui_bibz/ui/core/forms/buttons/button_refresh.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/buttons/components/button_group_dropdown.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/buttons/components/button_group_split_dropdown.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/choices/box_switch_field.rb +7 -10
- data/lib/ui_bibz/ui/core/forms/choices/checkbox_field.rb +20 -10
- data/lib/ui_bibz/ui/core/forms/choices/choice_group.rb +22 -2
- data/lib/ui_bibz/ui/core/forms/choices/components/choice.rb +24 -12
- data/lib/ui_bibz/ui/core/forms/choices/radio_field.rb +17 -6
- data/lib/ui_bibz/ui/core/forms/choices/switch_field.rb +5 -5
- data/lib/ui_bibz/ui/core/forms/dates/date_picker_field.rb +12 -15
- data/lib/ui_bibz/ui/core/forms/dropdowns/components/dropdown_divider.rb +0 -1
- data/lib/ui_bibz/ui/core/forms/dropdowns/components/dropdown_header.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/dropdowns/dropdown.rb +19 -20
- data/lib/ui_bibz/ui/core/forms/dropdowns/split_dropdown.rb +7 -5
- data/lib/ui_bibz/ui/core/forms/files/file_field.rb +20 -10
- data/lib/ui_bibz/ui/core/forms/numbers/formula_field.rb +18 -8
- data/lib/ui_bibz/ui/core/forms/numbers/number_field.rb +20 -3
- data/lib/ui_bibz/ui/core/forms/numbers/range_field.rb +51 -5
- data/lib/ui_bibz/ui/core/forms/numbers/slider_field.rb +144 -0
- data/lib/ui_bibz/ui/core/forms/numbers/slider_header.rb +71 -0
- data/lib/ui_bibz/ui/core/forms/selects/abstract_select.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/selects/dropdown_select_field.rb +41 -62
- data/lib/ui_bibz/ui/core/forms/selects/multi_column_field.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/selects/select_field.rb +2 -5
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_addon.rb +1 -4
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button.rb +1 -6
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button_group.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button_link.rb +1 -6
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_button_refresh.rb +1 -12
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_checkbox_field.rb +9 -4
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_dropdown.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_radio_field.rb +9 -4
- data/lib/ui_bibz/ui/core/forms/surrounds/components/surround_switch_field.rb +0 -3
- data/lib/ui_bibz/ui/core/forms/surrounds/surround_field.rb +4 -12
- data/lib/ui_bibz/ui/core/forms/textareas/markdown_editor_field.rb +4 -7
- data/lib/ui_bibz/ui/core/forms/texts/auto_complete_field.rb +2 -5
- data/lib/ui_bibz/ui/core/forms/texts/text_field.rb +0 -3
- data/lib/ui_bibz/ui/core/icons/components/glyph_counter.rb +0 -3
- data/lib/ui_bibz/ui/core/icons/components/glyph_text.rb +1 -4
- data/lib/ui_bibz/ui/core/icons/glyph.rb +1 -4
- data/lib/ui_bibz/ui/core/icons/star.rb +0 -3
- data/lib/ui_bibz/ui/core/layouts/col.rb +5 -42
- data/lib/ui_bibz/ui/core/layouts/container.rb +9 -6
- data/lib/ui_bibz/ui/core/layouts/row.rb +32 -2
- data/lib/ui_bibz/ui/core/lists/components/list.rb +6 -8
- data/lib/ui_bibz/ui/core/lists/components/list/list_body.rb +0 -3
- data/lib/ui_bibz/ui/core/lists/components/list/list_header.rb +0 -3
- data/lib/ui_bibz/ui/core/lists/list_group.rb +9 -6
- data/lib/ui_bibz/ui/core/navigations/breadcrumb.rb +3 -2
- data/lib/ui_bibz/ui/core/navigations/components/breadcrumb_link.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb +2 -5
- data/lib/ui_bibz/ui/core/navigations/components/nav_link.rb +3 -1
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_link.rb +15 -6
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_list.rb +0 -4
- data/lib/ui_bibz/ui/core/navigations/components/nav_link_span.rb +1 -4
- data/lib/ui_bibz/ui/core/navigations/components/nav_text.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/components/navbar_brand.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/components/navbar_form.rb +4 -4
- data/lib/ui_bibz/ui/core/navigations/components/navbar_nav.rb +1 -4
- data/lib/ui_bibz/ui/core/navigations/components/navbar_text.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/components/pagination_link.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/components/toolbar_form.rb +3 -3
- data/lib/ui_bibz/ui/core/navigations/link.rb +0 -3
- data/lib/ui_bibz/ui/core/navigations/nav.rb +37 -10
- data/lib/ui_bibz/ui/core/navigations/navbar.rb +31 -8
- data/lib/ui_bibz/ui/core/navigations/pagination.rb +3 -1
- data/lib/ui_bibz/ui/core/navigations/tab_group.rb +10 -5
- data/lib/ui_bibz/ui/core/navigations/toolbar.rb +2 -0
- data/lib/ui_bibz/ui/core/notifications/alert.rb +2 -2
- data/lib/ui_bibz/ui/core/notifications/badge.rb +2 -5
- data/lib/ui_bibz/ui/core/notifications/components/alert_body.rb +0 -3
- data/lib/ui_bibz/ui/core/notifications/components/alert_header.rb +4 -10
- data/lib/ui_bibz/ui/core/notifications/components/bar.rb +0 -3
- data/lib/ui_bibz/ui/core/notifications/components/toast_body.rb +0 -3
- data/lib/ui_bibz/ui/core/notifications/components/toast_header.rb +1 -6
- data/lib/ui_bibz/ui/core/notifications/progress_bar.rb +7 -5
- data/lib/ui_bibz/ui/core/notifications/spinner.rb +0 -3
- data/lib/ui_bibz/ui/core/notifications/toast.rb +14 -3
- data/lib/ui_bibz/ui/core/windows/components/modal_body.rb +0 -3
- data/lib/ui_bibz/ui/core/windows/components/modal_footer.rb +0 -3
- data/lib/ui_bibz/ui/core/windows/components/modal_header.rb +1 -7
- data/lib/ui_bibz/ui/core/windows/modal.rb +65 -14
- data/lib/ui_bibz/ui/extensions/core/component/glyph_extension.rb +6 -2
- data/lib/ui_bibz/ui/extensions/core/component/popover_extension.rb +9 -9
- data/lib/ui_bibz/ui/extensions/core/forms/connect_extension.rb +2 -2
- data/lib/ui_bibz/ui/extensions/core/forms/surround_extension.rb +1 -1
- data/lib/ui_bibz/ui/ux/containers/components/panel_body.rb +0 -3
- data/lib/ui_bibz/ui/ux/containers/components/panel_column.rb +2 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_deck.rb +2 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_footer.rb +0 -3
- data/lib/ui_bibz/ui/ux/containers/components/panel_group.rb +2 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_header.rb +4 -6
- data/lib/ui_bibz/ui/ux/containers/components/panel_header_title.rb +47 -0
- data/lib/ui_bibz/ui/ux/containers/components/panel_tab_group.rb +0 -4
- data/lib/ui_bibz/ui/ux/containers/components/panel_toolbar.rb +0 -3
- data/lib/ui_bibz/ui/ux/containers/panel.rb +4 -2
- data/lib/ui_bibz/ui/ux/tables/components/thead.rb +0 -3
- data/lib/ui_bibz/ui/ux/tables/table.rb +2 -4
- data/lib/ui_bibz/ui/ux/tables/table_card.rb +4 -3
- data/lib/ui_bibz/ui/ux/tables/table_pagination_per_page.rb +3 -3
- data/lib/ui_bibz/ui/ux/tables/table_search_field.rb +8 -8
- data/lib/ui_bibz/utils/breakdown_class_name_generator.rb +82 -0
- data/lib/ui_bibz/utils/internationalization.rb +2 -2
- data/lib/ui_bibz/utils/screwdriver.rb +16 -10
- data/test/dummy/Rakefile +1 -1
- data/test/dummy/app/javascripts/packs/index.js +3 -0
- data/test/dummy/app/views/layouts/application.html.erb +4 -1
- data/{app/ui/.keep → test/dummy/app/views/users/index.html.erb} +0 -0
- data/test/dummy/bin/setup +17 -13
- data/test/dummy/config.ru +2 -1
- data/test/dummy/config/application.rb +1 -0
- data/test/dummy/config/cable.yml +10 -0
- data/test/dummy/config/database.yml +1 -1
- data/test/dummy/config/environment.rb +1 -1
- data/test/dummy/config/environments/development.rb +33 -12
- data/test/dummy/config/environments/production.rb +52 -19
- data/test/dummy/config/environments/test.rb +18 -12
- data/test/dummy/config/initializers/application_controller_renderer.rb +9 -0
- data/test/dummy/config/initializers/assets.rb +4 -3
- data/test/dummy/config/initializers/backtrace_silencers.rb +0 -1
- data/test/dummy/config/initializers/content_security_policy.rb +29 -0
- data/test/dummy/config/initializers/cookies_serializer.rb +2 -0
- data/test/dummy/config/initializers/inflections.rb +0 -1
- data/test/dummy/config/initializers/mime_types.rb +0 -1
- data/test/dummy/config/initializers/wrap_parameters.rb +2 -2
- data/test/dummy/config/puma.rb +40 -0
- data/test/dummy/config/routes.rb +3 -0
- data/test/dummy/config/spring.rb +8 -0
- data/test/dummy/config/storage.yml +34 -0
- data/test/dummy/db/migrate/20150123191805_create_users.rb +1 -1
- data/test/dummy/db/schema.rb +24 -24
- data/test/dummy/public/404.html +6 -6
- data/test/dummy/public/422.html +6 -6
- data/test/dummy/public/500.html +6 -6
- data/test/dummy/public/apple-touch-icon-precomposed.png +0 -0
- data/test/dummy/public/apple-touch-icon.png +0 -0
- data/test/dummy/storage/.keep +0 -0
- data/test/simple_form_test.rb +45 -44
- data/test/store_test.rb +5 -5
- data/test/test_helper.rb +18 -9
- data/test/ui/core/boxes/card_grid_test.rb +17 -0
- data/test/ui/core/boxes/card_test.rb +46 -12
- data/test/ui/core/boxes/jumbotron_test.rb +2 -2
- data/test/ui/core/component_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_group_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_link_test.rb +1 -1
- data/test/ui/core/forms/buttons/button_test.rb +2 -2
- data/test/ui/core/forms/choices/checkbox_field_test.rb +9 -2
- data/test/ui/core/forms/choices/choice_group_test.rb +11 -9
- data/test/ui/core/forms/choices/radio_field_test.rb +1 -1
- data/test/ui/core/forms/dates/date_picker_field_test.rb +1 -1
- data/test/ui/core/forms/dropdowns/dropdown_test.rb +2 -2
- data/test/ui/core/forms/files/file_field_test.rb +12 -0
- data/test/ui/core/forms/numbers/formula_field_test.rb +1 -1
- data/test/ui/core/forms/numbers/range_field_test.rb +37 -2
- data/test/ui/core/forms/numbers/slider_field_test.rb +26 -0
- data/test/ui/core/forms/selects/multi_column_field_test.rb +1 -1
- data/test/ui/core/forms/selects/multi_select_field_test.rb +7 -7
- data/test/ui/core/forms/selects/select_field_test.rb +3 -3
- data/test/ui/core/forms/surrounds/surround_field_test.rb +40 -4
- data/test/ui/core/forms/textareas/markdown_editor_field_test.rb +1 -1
- data/test/ui/core/forms/texts/auto_complete_field_test.rb +8 -8
- data/test/ui/core/forms/texts/text_field_test.rb +2 -2
- data/test/ui/core/layouts/col_test.rb +11 -2
- data/test/ui/core/layouts/container_test.rb +15 -1
- data/test/ui/core/layouts/row_test.rb +68 -3
- data/test/ui/core/lists/list_group_test.rb +1 -1
- data/test/ui/core/navigations/breadcrumb_test.rb +1 -1
- data/test/ui/core/navigations/link_test.rb +1 -1
- data/test/ui/core/navigations/nav_test.rb +17 -5
- data/test/ui/core/navigations/navbar_test.rb +7 -8
- data/test/ui/core/navigations/tab_group_test.rb +4 -4
- data/test/ui/core/notifications/alert_test.rb +2 -2
- data/test/ui/core/notifications/badge_test.rb +3 -3
- data/test/ui/core/notifications/progress_bar_test.rb +1 -1
- data/test/ui/core/notifications/toast_test.rb +10 -1
- data/test/ui/core/windows/modal_test.rb +15 -1
- data/test/ui/utils/breakdown_class_name_generator_test.rb +74 -0
- data/test/ui/ux/containers/panel_test.rb +5 -5
- data/test/ui/ux/tables/table_test.rb +6 -6
- data/test/ui_bibz_test.rb +1 -1
- data/ui_bibz.gemspec +16 -16
- metadata +100 -108
- data/app/assets/javascripts/fix_bootstrap.coffee +0 -7
- data/app/assets/javascripts/form.coffee +0 -83
- data/app/assets/javascripts/formula.coffee +0 -69
- data/app/assets/javascripts/input-connected.coffee +0 -101
- data/app/assets/javascripts/interface.coffee +0 -55
- data/app/assets/javascripts/jquery.multi-select-extend.coffee +0 -38
- data/app/assets/javascripts/table.coffee +0 -36
- data/app/assets/javascripts/ui_bibz.coffee.erb +0 -75
- data/app/assets/stylesheets/_custom_variables.sass +0 -20
- data/app/assets/stylesheets/_panel.scss +0 -315
- data/app/assets/stylesheets/bootstrap-switch.sass +0 -159
- data/app/assets/stylesheets/boxes.sass +0 -5
- data/app/assets/stylesheets/containers.sass +0 -2
- data/app/assets/stylesheets/fix-bootstrap-4.sass +0 -19
- data/app/assets/stylesheets/fix_addon.sass +0 -216
- data/app/assets/stylesheets/forms.sass +0 -91
- data/app/assets/stylesheets/navigations.sass +0 -17
- data/app/assets/stylesheets/notifications.sass +0 -42
- data/app/assets/stylesheets/tables.sass +0 -66
- data/app/assets/stylesheets/ui_bibz.sass.erb +0 -55
- data/lib/generators/ui_bibz/install_generator.rb +0 -17
- data/lib/generators/ui_bibz/templates/ui_bibz_initializer.rb +0 -5
- data/lib/ui_bibz/ui/core/forms/selects/multi_select_field.rb +0 -125
- data/lib/ui_bibz/ui/core/icons/glyph_group.rb +0 -101
- data/test/dummy/bin/bundle +0 -5
- data/test/ui/core/forms/files/text_field_test.rb +0 -12
- data/test/ui/core/forms/selects/dropdown_select_field_test.rb +0 -84
- data/test/ui/core/icons/glyph_group_test.rb +0 -37
data/test/store_test.rb
CHANGED
@@ -22,15 +22,15 @@ class StoreTest < ActionView::TestCase
|
|
22
22
|
end
|
23
23
|
|
24
24
|
test 'total pages' do
|
25
|
-
assert_equal @store.total_pages
|
25
|
+
assert_equal(3, @store.total_pages)
|
26
26
|
end
|
27
27
|
|
28
28
|
test 'current page' do
|
29
|
-
assert_equal @store.current_page
|
29
|
+
assert_equal(1, @store.current_page)
|
30
30
|
end
|
31
31
|
|
32
32
|
test 'limit value' do
|
33
|
-
assert_equal @store.limit_value
|
33
|
+
assert_equal(10, @store.limit_value)
|
34
34
|
end
|
35
35
|
|
36
36
|
test 'model' do
|
@@ -38,10 +38,10 @@ class StoreTest < ActionView::TestCase
|
|
38
38
|
end
|
39
39
|
|
40
40
|
test 'records' do
|
41
|
-
assert_equal @store.records.count
|
41
|
+
assert_equal(25, @store.records.count)
|
42
42
|
end
|
43
43
|
|
44
44
|
test 'controller' do
|
45
|
-
assert_equal @store.controller
|
45
|
+
assert_equal('users', @store.controller)
|
46
46
|
end
|
47
47
|
end
|
data/test/test_helper.rb
CHANGED
@@ -5,18 +5,27 @@ require 'simplecov'
|
|
5
5
|
SimpleCov.start 'rails'
|
6
6
|
|
7
7
|
# Configure Rails Environment
|
8
|
-
ENV[
|
8
|
+
ENV["RAILS_ENV"] = "test"
|
9
9
|
|
10
|
-
|
11
|
-
ActiveRecord::Migrator.migrations_paths = [File.expand_path(
|
12
|
-
require
|
10
|
+
require_relative "../test/dummy/config/environment"
|
11
|
+
ActiveRecord::Migrator.migrations_paths = [File.expand_path("../test/dummy/db/migrate", __dir__)]
|
12
|
+
require "rails/test_help"
|
13
|
+
require "factory_bot_rails"
|
13
14
|
|
14
|
-
# Filter out
|
15
|
-
# to be shown.
|
15
|
+
# Filter out the backtrace from minitest while preserving the one from other libraries.
|
16
16
|
Minitest.backtrace_filter = Minitest::BacktraceFilter.new
|
17
17
|
|
18
|
-
|
19
|
-
|
18
|
+
require "rails/test_unit/reporter"
|
19
|
+
Rails::TestUnitReporter.executable = 'bin/test'
|
20
20
|
|
21
21
|
# Load fixtures from the engine
|
22
|
-
|
22
|
+
if ActiveSupport::TestCase.respond_to?(:fixture_path=)
|
23
|
+
ActiveSupport::TestCase.fixture_path = File.expand_path("fixtures", __dir__)
|
24
|
+
ActionDispatch::IntegrationTest.fixture_path = ActiveSupport::TestCase.fixture_path
|
25
|
+
ActiveSupport::TestCase.file_fixture_path = "#{ActiveSupport::TestCase.fixture_path}/files"
|
26
|
+
ActiveSupport::TestCase.fixtures :all
|
27
|
+
end
|
28
|
+
|
29
|
+
class ActiveSupport::TestCase
|
30
|
+
include FactoryBot::Syntax::Methods
|
31
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
|
5
|
+
class CardGridTest < ActionView::TestCase
|
6
|
+
include UiBibz::Helpers::Ui::CoreHelper
|
7
|
+
|
8
|
+
test 'create card' do
|
9
|
+
actual = ui_card_grid do |cg|
|
10
|
+
cg.card "card 1"
|
11
|
+
cg.card "card 2"
|
12
|
+
end
|
13
|
+
expected = "<div class=\"row card-grid\"><div class=\"col\"><div class=\"card\"><div class=\"card-body\">card 1</div></div></div><div class=\"col\"><div class=\"card\"><div class=\"card-body\">card 2</div></div></div></div>"
|
14
|
+
|
15
|
+
assert_equal expected, actual
|
16
|
+
end
|
17
|
+
end
|
@@ -22,7 +22,7 @@ class CardTest < ActionView::TestCase
|
|
22
22
|
end
|
23
23
|
|
24
24
|
test 'card outline' do
|
25
|
-
actual = ui_card 'test', status: :success, outline: true
|
25
|
+
actual = ui_card 'test', status: :success, outline: true do |c|
|
26
26
|
c.header 'header'
|
27
27
|
c.body 'header'
|
28
28
|
c.footer 'header'
|
@@ -65,14 +65,15 @@ class CardTest < ActionView::TestCase
|
|
65
65
|
end
|
66
66
|
|
67
67
|
test 'position' do
|
68
|
-
actual = ui_card
|
69
|
-
p.body
|
68
|
+
actual = ui_card text: { position: :right, size: :md } do |p|
|
69
|
+
p.body do |b|
|
70
70
|
b.title 'Special title treatment'
|
71
|
+
b.subtitle 'The subtitle'
|
71
72
|
b.text 'With supporting text below as a natural lead-in to additional content.'
|
72
73
|
b.link 'Go somewhere', url: '#go-somewhere', class: 'btn btn-primary'
|
73
74
|
end
|
74
75
|
end
|
75
|
-
expected =
|
76
|
+
expected = "<div class=\"card text-md-right\"><div class=\"card-body\"><h5 class=\"card-title\">Special title treatment</h5><h6 class=\"card-subtitle mb-2 text-muted\">The subtitle</h6><p class=\"card-text\">With supporting text below as a natural lead-in to additional content.</p><a class=\"btn btn-primary card-link\" href=\"#go-somewhere\">Go somewhere</a></div></div>"
|
76
77
|
|
77
78
|
assert_equal expected, actual
|
78
79
|
end
|
@@ -110,7 +111,7 @@ class CardTest < ActionView::TestCase
|
|
110
111
|
end
|
111
112
|
|
112
113
|
test 'card list group' do
|
113
|
-
actual = ui_card
|
114
|
+
actual = ui_card do |c|
|
114
115
|
c.list_group do |lg|
|
115
116
|
lg.list 'list 1'
|
116
117
|
lg.list 'list 2'
|
@@ -123,28 +124,61 @@ class CardTest < ActionView::TestCase
|
|
123
124
|
end
|
124
125
|
|
125
126
|
test 'card body parameters' do
|
126
|
-
actual = ui_card
|
127
|
-
c.body
|
127
|
+
actual = ui_card do |c|
|
128
|
+
c.body do |b|
|
128
129
|
b.title 'title'
|
129
130
|
b.text 'text'
|
130
131
|
b.link 'link', url: '#'
|
131
132
|
end
|
132
133
|
end
|
133
|
-
expected = '<div class="card"><div class="card-body"><
|
134
|
+
expected = '<div class="card"><div class="card-body"><h5 class="card-title">title</h5><p class="card-text">text</p><a class="card-link" href="#">link</a></div></div>'
|
134
135
|
|
135
136
|
assert_equal expected, actual
|
136
137
|
end
|
137
138
|
|
138
139
|
test 'card header tab group' do
|
139
|
-
actual = ui_card
|
140
|
-
c.header
|
141
|
-
h.tab_group
|
140
|
+
actual = ui_card do |c|
|
141
|
+
c.header do |h|
|
142
|
+
h.tab_group do |cg|
|
142
143
|
cg.tab 'link1', url: '#link1'
|
143
144
|
cg.tab 'link2', url: '#link2'
|
144
145
|
end
|
145
146
|
end
|
146
147
|
end
|
147
|
-
expected =
|
148
|
+
expected = "<div class=\"card\"><div class=\"card-header\"><ul class=\"nav nav-tabs card-header-tabs\"><li class=\"nav-item\"><a href=\"#link1\" class=\"nav-link\" data-toggle=\"tab\" role=\"tab\">link1</a></li><li class=\"nav-item\"><a href=\"#link2\" class=\"nav-link\" data-toggle=\"tab\" role=\"tab\">link2</a></li></ul></div></div>"
|
149
|
+
|
150
|
+
assert_equal expected, actual
|
151
|
+
end
|
152
|
+
|
153
|
+
test 'card row' do
|
154
|
+
actual = ui_card do |c|
|
155
|
+
c.row class: "g-0" do |r|
|
156
|
+
r.col num: 4 do |col|
|
157
|
+
col.image "https://picsum.photos/700/200", position: :left
|
158
|
+
end
|
159
|
+
r.col num: 8 do |col|
|
160
|
+
col.body do |b|
|
161
|
+
b.title "card title"
|
162
|
+
b.subtitle "card subtitle"
|
163
|
+
b.text "some quick example text to build on the card title and make up the bulk of the card's content."
|
164
|
+
end
|
165
|
+
end
|
166
|
+
end
|
167
|
+
end
|
168
|
+
expected = "<div class=\"card\"><div class=\"g-0 row\"><div class=\"col-4\"><img class=\"card-img-left\" src=\"https://picsum.photos/700/200\" /></div><div class=\"col-8\"><div class=\"card-body\"><h5 class=\"card-title\">card title</h5><h6 class=\"card-subtitle mb-2 text-muted\">card subtitle</h6><p class=\"card-text\">some quick example text to build on the card title and make up the bulk of the card's content.</p></div></div></div></div>"
|
169
|
+
|
170
|
+
assert_equal expected, actual
|
171
|
+
end
|
172
|
+
|
173
|
+
test "card with html" do
|
174
|
+
actual = ui_card do |c|
|
175
|
+
c.html "content"
|
176
|
+
c.html do
|
177
|
+
" content 2"
|
178
|
+
end
|
179
|
+
end
|
180
|
+
|
181
|
+
expected = "<div class=\"card\">content content 2</div>"
|
148
182
|
|
149
183
|
assert_equal expected, actual
|
150
184
|
end
|
@@ -7,14 +7,14 @@ class JumbotronTest < ActionView::TestCase
|
|
7
7
|
|
8
8
|
test 'jumbotron with full_width' do
|
9
9
|
actual = ui_jumbotron 'state', full_width: true
|
10
|
-
expected = '<div class="jumbotron">state</div>'
|
10
|
+
expected = '<div class="jumbotron bg-light rounded p-4">state</div>'
|
11
11
|
|
12
12
|
assert_equal expected, actual
|
13
13
|
end
|
14
14
|
|
15
15
|
test 'jumbotron' do
|
16
16
|
actual = ui_jumbotron 'state'
|
17
|
-
expected = '<div class="jumbotron">state</div>'
|
17
|
+
expected = '<div class="jumbotron bg-light rounded p-4">state</div>'
|
18
18
|
|
19
19
|
assert_equal expected, actual
|
20
20
|
end
|
@@ -21,7 +21,7 @@ class ComponentTest < ActionView::TestCase
|
|
21
21
|
|
22
22
|
test 'create component without text and glyph' do
|
23
23
|
actual = UiBibz::Ui::Core::Component.new('My text', { glyph: 'diamond', text: false }).render
|
24
|
-
expected = '<i class="glyph fas fa-diamond"></i>'
|
24
|
+
expected = '<i class="glyph fas fa-diamond"></i><span class="empty-space"> </span>'
|
25
25
|
|
26
26
|
assert_equal expected, actual
|
27
27
|
end
|
@@ -43,7 +43,7 @@ class ButtonGroupTest < ActionView::TestCase
|
|
43
43
|
|
44
44
|
test 'button group with dropdown' do
|
45
45
|
actual = ui_button_group do |bg|
|
46
|
-
bg.dropdown('Dropdown', {
|
46
|
+
bg.dropdown('Dropdown', { position: :up, status: :success }, { id: 'dropdown-test' }) do |d|
|
47
47
|
d.link 'Link 1', url: '#link1', glyph: 'eye'
|
48
48
|
end
|
49
49
|
end
|
@@ -49,7 +49,7 @@ class ButtonLinkTest < ActionView::TestCase
|
|
49
49
|
|
50
50
|
test 'button_link badge' do
|
51
51
|
actual = ui_button_link('state', badge: 2)
|
52
|
-
expected = '<a class="btn-secondary btn" role="button" href="#">state<span class="
|
52
|
+
expected = '<a class="btn-secondary btn" role="button" href="#">state<span class="bg-secondary badge">2</span></a>'
|
53
53
|
|
54
54
|
assert_equal expected, actual
|
55
55
|
end
|
@@ -42,7 +42,7 @@ class ButtonTest < ActionView::TestCase
|
|
42
42
|
|
43
43
|
test 'button badge' do
|
44
44
|
actual = ui_button('state', badge: 2)
|
45
|
-
expected = '<button class="btn-secondary btn">state<span class="
|
45
|
+
expected = '<button class="btn-secondary btn">state<span class="bg-secondary badge">2</span></button>'
|
46
46
|
|
47
47
|
assert_equal expected, actual
|
48
48
|
end
|
@@ -77,7 +77,7 @@ class ButtonTest < ActionView::TestCase
|
|
77
77
|
|
78
78
|
test 'button glyph without text' do
|
79
79
|
actual = ui_button('state', glyph: 'diamond', text: false)
|
80
|
-
expected = '<button class="btn-secondary btn without-text"><i class="glyph fas fa-diamond"></i></button>'
|
80
|
+
expected = '<button class="btn-secondary btn without-text"><i class="glyph fas fa-diamond"></i><span class="empty-space"> </span></button>'
|
81
81
|
|
82
82
|
assert_equal expected, actual
|
83
83
|
end
|
@@ -4,8 +4,15 @@ require 'test_helper'
|
|
4
4
|
|
5
5
|
class CheckboxFieldTest < ActionView::TestCase
|
6
6
|
test 'checkbox_field' do
|
7
|
-
actual = UiBibz::Ui::Core::Forms::Choices::CheckboxField.new('John', { value: 1 }).render
|
8
|
-
expected =
|
7
|
+
actual = UiBibz::Ui::Core::Forms::Choices::CheckboxField.new('John', { value: 1, status: :primary }).render
|
8
|
+
expected = "<div class=\"form-check\"><input type=\"checkbox\" name=\"John\" id=\"John\" value=\"1\" class=\"form-check-input form-check-input-primary\" /><label class=\"form-check-label\" for=\"John\">John</label></div>"
|
9
|
+
|
10
|
+
assert_equal expected, actual
|
11
|
+
end
|
12
|
+
|
13
|
+
test 'checkbox_field which is a boolean' do
|
14
|
+
actual = UiBibz::Ui::Core::Forms::Choices::CheckboxField.new('John', { boolean: true, value: 1 }).render
|
15
|
+
expected = "<div class=\"form-check\"><input type=\"hidden\" name=\"John\" id=\"John-hidden\" value=\"0\" /><input type=\"checkbox\" name=\"John\" id=\"John\" value=\"1\" class=\"form-check-input\" /><label class=\"form-check-label\" for=\"John\">John</label></div>"
|
9
16
|
|
10
17
|
assert_equal expected, actual
|
11
18
|
end
|
@@ -6,32 +6,34 @@ class ChoiceGroupTest < ActionView::TestCase
|
|
6
6
|
include UiBibz::Helpers::Ui::CoreHelper
|
7
7
|
|
8
8
|
test 'Choice group checkbox' do
|
9
|
-
actual =
|
9
|
+
actual = UiBibz::Ui::Core::Forms::Choices::ChoiceGroup.new.tap do |bc|
|
10
10
|
bc.choice 'Checkbox 1'
|
11
11
|
bc.choice 'Checkbox 2', state: :active
|
12
12
|
end
|
13
|
-
expected = '<div data-toggle="buttons" class="btn-group button-choice btn-group-toggle"><label class="btn-secondary btn checkbox"><input type="checkbox" autocomplete="off" />Checkbox 1</label><label class="active btn-secondary btn checkbox" aria-pressed="true"><input type="checkbox" autocomplete="off" checked="checked" />Checkbox 2</label></div>'
|
14
13
|
|
15
|
-
|
14
|
+
expected = "<div data-toggle=\"buttons\" class=\"btn-group button-choice btn-group-toggle\"><input type=\"checkbox\" autocomplete=\"off\" class=\"btn-check\" id=\"#{actual.items.first.input_options[:id]}\" /><label class=\"btn-secondary btn checkbox\" for=\"#{actual.items.first.input_options[:id]}\">Checkbox 1</label><input type=\"checkbox\" autocomplete=\"off\" class=\"btn-check\" checked=\"checked\" id=\"#{actual.items.last.input_options[:id]}\" /><label class=\"active btn-secondary btn checkbox\" aria-pressed=\"true\" for=\"#{actual.items.last.input_options[:id]}\">Checkbox 2</label></div>"
|
15
|
+
|
16
|
+
assert_equal expected, actual.render
|
16
17
|
end
|
17
18
|
|
18
19
|
test 'Choice group radio' do
|
19
|
-
actual =
|
20
|
+
actual = UiBibz::Ui::Core::Forms::Choices::ChoiceGroup.new(type: :radio).tap do |bc|
|
20
21
|
bc.choice 'Radio 1'
|
21
22
|
bc.choice 'Radio 2', state: :active
|
22
23
|
end
|
23
|
-
expected = '<div data-toggle="buttons" class="btn-group button-choice btn-group-toggle"><label class="btn-secondary btn radio"><input type="radio" autocomplete="off" />Radio 1</label><label class="active btn-secondary btn radio" aria-pressed="true"><input type="radio" autocomplete="off" checked="checked" />Radio 2</label></div>'
|
24
24
|
|
25
|
-
|
25
|
+
expected = "<div data-toggle=\"buttons\" class=\"btn-group button-choice btn-group-toggle\"><input type=\"radio\" autocomplete=\"off\" class=\"btn-check\" name=\"#{actual.items.first.input_options[:name]}\" id=\"#{actual.items.first.input_options[:id]}\" /><label class=\"btn-secondary btn radio\" for=\"#{actual.items.first.input_options[:id]}\">Radio 1</label><input type=\"radio\" autocomplete=\"off\" class=\"btn-check\" checked=\"checked\" name=\"#{actual.items.last.input_options[:name]}\" id=\"#{actual.items.last.input_options[:id]}\" /><label class=\"active btn-secondary btn radio\" aria-pressed=\"true\" for=\"#{actual.items.last.input_options[:id]}\">Radio 2</label></div>"
|
26
|
+
|
27
|
+
assert_equal expected, actual.render
|
26
28
|
end
|
27
29
|
|
28
30
|
test 'Choice group options' do
|
29
|
-
actual =
|
31
|
+
actual = UiBibz::Ui::Core::Forms::Choices::ChoiceGroup.new(size: :lg, outline: true, type: :radio).tap do |bc|
|
30
32
|
bc.choice 'Radio 1', glyph: 'diamond', status: :primary
|
31
33
|
bc.choice 'Radio 2', state: :active
|
32
34
|
end
|
33
|
-
expected =
|
35
|
+
expected = "<div data-toggle=\"buttons\" class=\"btn-group btn-group-lg button-choice btn-group-toggle\"><input type=\"radio\" autocomplete=\"off\" class=\"btn-check\" name=\"#{actual.items.first.input_options[:name]}\" id=\"#{actual.items.first.input_options[:id]}\" /><label class=\"btn-outline-primary btn btn-lg radio\" for=\"#{actual.items.first.input_options[:id]}\"><i class=\"glyph fas fa-diamond\"></i> Radio 1</label><input type=\"radio\" autocomplete=\"off\" class=\"btn-check\" checked=\"checked\" name=\"#{actual.items.last.input_options[:name]}\" id=\"#{actual.items.last.input_options[:id]}\" /><label class=\"active btn-outline-secondary btn btn-lg radio\" aria-pressed=\"true\" for=\"#{actual.items.last.input_options[:id]}\">Radio 2</label></div>"
|
34
36
|
|
35
|
-
assert_equal expected, actual
|
37
|
+
assert_equal expected, actual.render
|
36
38
|
end
|
37
39
|
end
|
@@ -5,7 +5,7 @@ require 'test_helper'
|
|
5
5
|
class RadioFieldTest < ActionView::TestCase
|
6
6
|
test 'radio_field' do
|
7
7
|
actual = UiBibz::Ui::Core::Forms::Choices::RadioField.new('John', { value: 1, status: :primary, type: :square }).render
|
8
|
-
expected =
|
8
|
+
expected = "<div class=\"form-check\"><input type=\"radio\" name=\"John\" id=\"John_1\" value=\"1\" class=\"form-check-input form-check-input-primary\" /><label class=\"form-check-label\" for=\"John_1\">John</label></div>"
|
9
9
|
|
10
10
|
assert_equal expected, actual
|
11
11
|
end
|
@@ -5,7 +5,7 @@ require 'test_helper'
|
|
5
5
|
class DatePickerFieldTest < ActionView::TestCase
|
6
6
|
test 'Date Picker Field' do
|
7
7
|
actual = UiBibz::Ui::Core::Forms::Dates::DatePickerField.new(%w[date_1 date_2], { append: 'a', prepend: 'b', range: 'u' }, { class: 'datepicker-test' }).render
|
8
|
-
expected = '<div class="input-daterange input-group ui_surround_field"><span class="input-group-
|
8
|
+
expected = '<div class="input-daterange input-group ui_surround_field"><span class="input-group-text">a</span><input type="text" name="date_1" id="date_1" class="datepicker-test date_picker form-control" data-date-locale="en" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-today-btn="linked" data-date-toggle-active="true" /><span class="input-group-text">u</span><input type="text" name="date_2" id="date_2" class="datepicker-test date_picker form-control" data-date-locale="en" data-provide="datepicker" data-date-format="yyyy-mm-dd" data-date-today-btn="linked" data-date-toggle-active="true" /><span class="input-group-text">b</span></div>'
|
9
9
|
|
10
10
|
assert_equal expected, actual
|
11
11
|
end
|
@@ -32,14 +32,14 @@ class DropdownTest < ActionView::TestCase
|
|
32
32
|
end
|
33
33
|
|
34
34
|
test 'Dropdown options' do
|
35
|
-
actual = UiBibz::Ui::Core::Forms::Dropdowns::Dropdown.new('Dropdown',
|
35
|
+
actual = UiBibz::Ui::Core::Forms::Dropdowns::Dropdown.new('Dropdown', position: :up, alignment: :right, status: :success, glyph: 'diamond').tap do |d|
|
36
36
|
d.link 'Link 1', url: '#link1', glyph: 'eye'
|
37
37
|
d.header 'header'
|
38
38
|
d.link 'Link 2', url: '#link2'
|
39
39
|
d.divider
|
40
40
|
d.link 'Link3', url: '#link3'
|
41
41
|
end
|
42
|
-
expected = "<div class=\"dropup\"><button class=\"btn btn-success dropdown-toggle\" type=\"button\" data-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\" id=\"#{actual.id}\"><i class=\"glyph fas fa-diamond\"></i> Dropdown</button><div class=\"dropdown-menu\" arial-labelledby=\"#{actual.id}\"><a class=\"dropdown-item\" href=\"#link1\"><i class=\"glyph fas fa-eye\"></i> Link 1</a><h6 class=\"dropdown-header\" role=\"presentation\">header</h6><a class=\"dropdown-item\" href=\"#link2\">Link 2</a><div class=\"dropdown-divider\"></div><a class=\"dropdown-item\" href=\"#link3\">Link3</a></div></div>"
|
42
|
+
expected = "<div class=\"dropup btn-group\"><button class=\"btn btn-success dropdown-toggle\" type=\"button\" data-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\" id=\"#{actual.id}\"><i class=\"glyph fas fa-diamond\"></i> Dropdown</button><div class=\"dropdown-menu dropdown-menu-right\" arial-labelledby=\"#{actual.id}\"><a class=\"dropdown-item\" href=\"#link1\"><i class=\"glyph fas fa-eye\"></i> Link 1</a><h6 class=\"dropdown-header\" role=\"presentation\">header</h6><a class=\"dropdown-item\" href=\"#link2\">Link 2</a><div class=\"dropdown-divider\"></div><a class=\"dropdown-item\" href=\"#link3\">Link3</a></div></div>"
|
43
43
|
|
44
44
|
assert_equal expected, actual.render
|
45
45
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
|
5
|
+
class FileFieldTest < ActionView::TestCase
|
6
|
+
test 'file_field' do
|
7
|
+
actual = UiBibz::Ui::Core::Forms::Files::FileField.new('test').render
|
8
|
+
expected = "<div class=\"form-file\"><input type=\"file\" name=\"test\" id=\"test\" class=\"form-file-input\" /><label class=\"form-file-label\" for=\"test\"><span class=\"form-file-text\"></span><span class=\"form-file-button\">Browse</span></label></div>"
|
9
|
+
|
10
|
+
assert_equal expected, actual
|
11
|
+
end
|
12
|
+
end
|
@@ -5,7 +5,7 @@ require 'test_helper'
|
|
5
5
|
class FormulaFieldTest < ActionView::TestCase
|
6
6
|
test 'formula_field' do
|
7
7
|
actual = UiBibz::Ui::Core::Forms::Numbers::FormulaField.new('value').render
|
8
|
-
expected = '<div class="formula_field input-group ui_surround_field"><input type="text" name="value_formula" id="value_formula" class="formula-field form-control" /><span class="formula-field-sign input-group-
|
8
|
+
expected = '<div class="formula_field input-group ui_surround_field"><input type="text" name="value_formula" id="value_formula" class="formula-field form-control" /><span class="formula-field-sign input-group-text">=</span><input type="text" name="value" id="value" class="formula-field-result form-control" readonly="readonly" /><span data-toggle="tooltip" class="formula-field-alert input-group-text"><i class="glyph-danger glyph fas fa-exclamation-triangle"></i></span></div>'
|
9
9
|
|
10
10
|
assert_equal expected, actual
|
11
11
|
end
|
@@ -5,14 +5,49 @@ require 'test_helper'
|
|
5
5
|
class RangeFieldTest < ActionView::TestCase
|
6
6
|
test 'range_field' do
|
7
7
|
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange').render
|
8
|
-
expected = '<input type="range" name="myrange" id="myrange" class="
|
8
|
+
expected = '<input type="range" name="myrange" id="myrange" class="form-range" />'
|
9
9
|
|
10
10
|
assert_equal expected, actual
|
11
11
|
end
|
12
12
|
|
13
13
|
test 'range_field with options' do
|
14
14
|
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 5, min: -9, max: 6, step: 0.2).render
|
15
|
-
expected = '<input type="range" name="myrange" id="myrange" value="5" class="
|
15
|
+
expected = '<input type="range" name="myrange" id="myrange" value="5" class="form-range" min="-9" max="6" step="0.2" />'
|
16
|
+
|
17
|
+
assert_equal expected, actual
|
18
|
+
end
|
19
|
+
|
20
|
+
test 'range_field with in option' do
|
21
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 5, in: (0..10)).render
|
22
|
+
expected = "<input type=\"range\" name=\"myrange\" id=\"myrange\" value=\"5\" class=\"form-range\" min=\"0\" max=\"10\" />"
|
23
|
+
|
24
|
+
assert_equal expected, actual
|
25
|
+
end
|
26
|
+
|
27
|
+
test 'range_field with within option' do
|
28
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 2, within: (-2..4)).render
|
29
|
+
expected = "<input type=\"range\" name=\"myrange\" id=\"myrange\" value=\"2\" class=\"form-range\" min=\"-2\" max=\"4\" />"
|
30
|
+
|
31
|
+
assert_equal expected, actual
|
32
|
+
end
|
33
|
+
|
34
|
+
test 'range_field with tick' do
|
35
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 2, max: 3, tick: true)
|
36
|
+
expected = "<input type=\"range\" name=\"myrange\" id=\"myrange\" value=\"2\" class=\"form-range\" max=\"3\" list=\"#{actual.html_id}-list\" /><datalist id=\"#{actual.html_id}-list\"><option value=\"0\" label=\"0\">0</option><option value=\"1\"></option><option value=\"2\" label=\"2\">2</option><option value=\"3\" label=\"3\">3</option></datalist>"
|
37
|
+
|
38
|
+
assert_equal expected, actual.render
|
39
|
+
end
|
40
|
+
|
41
|
+
test "range status" do
|
42
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 2, max: 3, status: :sucesss).render
|
43
|
+
expected = "<input type=\"range\" name=\"myrange\" id=\"myrange\" value=\"2\" class=\"form-range-sucesss form-range\" max=\"3\" />"
|
44
|
+
|
45
|
+
assert_equal expected, actual
|
46
|
+
end
|
47
|
+
|
48
|
+
test "range thumb and track status" do
|
49
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::RangeField.new('myrange', value: 2, max: 3, thumb_status: :sucesss, track_status: :dark).render
|
50
|
+
expected = "<input type=\"range\" name=\"myrange\" id=\"myrange\" value=\"2\" class=\"form-range form-range-thumb-sucesss form-range-track-dark\" max=\"3\" />"
|
16
51
|
|
17
52
|
assert_equal expected, actual
|
18
53
|
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'test_helper'
|
4
|
+
|
5
|
+
class SliderFieldTest < ActionView::TestCase
|
6
|
+
test 'slider field' do
|
7
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::SliderField.new('myrange').render
|
8
|
+
expected = "<div class=\"slider\"><div><div class=\"slider-inverse-left\" style=\"width: 100%\"></div><div class=\"slider-inverse-right\" style=\"width: 100%\"></div><div class=\"slider-range\" style=\"left: 0%; right: 0%\"></div><div class=\"slider-thumb slider-thumb-left\" style=\"left: 0%\"></div><div class=\"slider-thumb slider-thumb-right\" style=\"left: 100%\"></div></div><input type=\"range\" name=\"myrange_min\" id=\"myrange_min\" value=\"0\" max=\"100\" min=\"0\" step=\"1\" /><input type=\"range\" name=\"myrange_max\" id=\"myrange_max\" value=\"100\" max=\"100\" min=\"0\" step=\"1\" /></div>"
|
9
|
+
|
10
|
+
assert_equal expected, actual
|
11
|
+
end
|
12
|
+
|
13
|
+
test 'slider field with options' do
|
14
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::SliderField.new('myrange', status: :secondary, track_status: :dark, thumb_max: 2, thumb_min: -7, min: -9, max: 6, step: 2, input_name_max: "price_max", input_name_min: "price_min").render
|
15
|
+
expected = "<div class=\"slider-secondary slider slider-track-dark\" min=\"-9\" max=\"6\" step=\"2\"><div><div class=\"slider-inverse-left\" style=\"width: 100%\"></div><div class=\"slider-inverse-right\" style=\"width: 100%\"></div><div class=\"slider-range\" style=\"left: 13%; right: 26%\"></div><div class=\"slider-thumb slider-thumb-left\" style=\"left: 13%\"></div><div class=\"slider-thumb slider-thumb-right\" style=\"left: 74%\"></div></div><input type=\"range\" name=\"price_min\" id=\"price_min\" value=\"-7\" max=\"6\" min=\"-9\" step=\"2\" /><input type=\"range\" name=\"price_max\" id=\"price_max\" value=\"2\" max=\"6\" min=\"-9\" step=\"2\" /></div>"
|
16
|
+
|
17
|
+
assert_equal expected, actual
|
18
|
+
end
|
19
|
+
|
20
|
+
test 'slider header' do
|
21
|
+
actual = UiBibz::Ui::Core::Forms::Numbers::SliderHeader.new(nil, target: "test", thumb_min: -7, thumb_max: 2, label_min: "min", label_max: "max").render
|
22
|
+
expected = "<div data-target=\"test\" class=\"slider-header\"><div class=\"slider-header-min\"><label>min</label><span>-7</span></div><div class=\"slider-header-max\"><label>max</label><span>2</span></div></div>"
|
23
|
+
|
24
|
+
assert_equal expected, actual
|
25
|
+
end
|
26
|
+
end
|