card 1.16.6 → 1.16.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.yardoc/checksums +234 -49
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/VERSION +1 -1
- data/config/initializers/mime_types.rb +3 -3
- data/config/initializers/notification.rb +1 -1
- data/db/migrate/20121118115000_update_link_type.rb +8 -8
- data/db/migrate/20130411210957_update_codenames.rb +2 -2
- data/db/migrate/20140822073704_create_new_revision_tables.rb +12 -13
- data/db/migrate/20141001105348_move_revisions_to_actions.rb +16 -16
- data/db/migrate/20141121172918_rename_card_migration_table.rb +4 -4
- data/db/migrate_core_cards/20130419215612_import_help_text.rb +3 -3
- data/db/migrate_core_cards/20130823192433_add_style_cards.rb +45 -47
- data/db/migrate_core_cards/20130910183318_move_styles_to_content.rb +1 -1
- data/db/migrate_core_cards/20130920214038_jsonize_tinymce.rb +3 -3
- data/db/migrate_core_cards/20130920291703_update_stylesheets.rb +3 -3
- data/db/migrate_core_cards/20130927191728_account_events.rb +6 -6
- data/db/migrate_core_cards/20131016172445_common_css_patch.rb +1 -1
- data/db/migrate_core_cards/20140110193325_reset_account_request_type.rb +1 -1
- data/db/migrate_core_cards/20140307231621_user_data_to_cards.rb +19 -19
- data/db/migrate_core_cards/20140317035504_account_requests_to_signups.rb +11 -12
- data/db/migrate_core_cards/20140512155840_add_script_cards.rb +35 -36
- data/db/migrate_core_cards/20140629222005_add_email_cards.rb +55 -55
- data/db/migrate_core_cards/20140725180118_config_card_updates.rb +1 -1
- data/db/migrate_core_cards/20141111083921_delete_machine_output.rb +2 -2
- data/db/migrate_core_cards/20141115034214_config_descriptions_etc.rb +3 -3
- data/db/migrate_core_cards/20141120120605_fix_notification_html_message.rb +2 -2
- data/db/migrate_core_cards/20141204061304_watchers_to_following.rb +8 -8
- data/db/migrate_core_cards/20141208162106_add_ace_script.rb +2 -2
- data/db/migrate_core_cards/20141216155251_add_more_following_cards.rb +16 -16
- data/db/migrate_core_cards/20141230204340_uri_codename.rb +1 -1
- data/db/migrate_core_cards/20150202143810_import_bootstrap_layout.rb +19 -19
- data/db/migrate_core_cards/20150220134731_following_to_follow_rule.rb +3 -3
- data/db/migrate_core_cards/20150317162412_bootstrap_themes.rb +15 -15
- data/db/migrate_core_cards/20150326205655_bootswatch_themes.rb +11 -11
- data/db/migrate_core_cards/20150331135745_new_card_menu.rb +1 -1
- data/db/migrate_core_cards/20150429090551_search_card_context.rb +1 -1
- data/db/migrate_core_cards/20150508212032_menu_compatibility.rb +3 -3
- data/db/migrate_core_cards/20150510031118_fix_skin_images.rb +1 -1
- data/db/migrate_core_cards/20150528084659_add_session_cardtype.rb +4 -4
- data/db/migrate_core_cards/20150601133433_add_recent_setting_session_card.rb +5 -5
- data/db/migrate_core_cards/20150605115802_add_performance_log_card.rb +1 -1
- data/db/migrate_core_cards/20150610171702_add_debugger_session_card.rb +2 -2
- data/db/migrate_core_cards/20150611203506_rails_inflection_updates.rb +5 -5
- data/db/migrate_core_cards/20150627205133_fix_script_bootstrap_card_type.rb +1 -1
- data/db/migrate_core_cards/20150702130543_remove_edit_toolbar_pinned.rb +1 -1
- data/db/migrate_core_cards/20150724123438_update_file_and_image_cards.rb +5 -5
- data/db/migrate_core_cards/20150807205221_create_references_for_search_cards.rb +1 -1
- data/db/migrate_core_cards/20150824135418_update_file_history.rb +3 -3
- data/db/migrate_core_cards/20150903130006_attachment_upload_cards.rb +2 -2
- data/db/migrate_core_cards/20150910085603_remove_performance_log_card.rb +1 -1
- data/lib/card.rb +4 -4
- data/lib/card/active_record_ext.rb +8 -8
- data/lib/card/auth.rb +6 -6
- data/lib/card/cache.rb +1 -1
- data/lib/card/chunk.rb +1 -1
- data/lib/card/content.rb +1 -1
- data/lib/card/diff.rb +10 -10
- data/lib/card/env.rb +1 -1
- data/lib/card/format.rb +12 -12
- data/lib/card/loader.rb +1 -1
- data/lib/card/migration.rb +1 -1
- data/lib/card/name.rb +4 -4
- data/lib/card/query.rb +255 -61
- data/lib/card/query/attributes.rb +310 -0
- data/lib/card/query/clause.rb +12 -15
- data/lib/card/query/join.rb +73 -0
- data/lib/card/query/reference.rb +51 -0
- data/lib/card/query/sql_statement.rb +228 -0
- data/lib/card/query/value.rb +66 -0
- data/lib/card/reference.rb +6 -6
- data/lib/card/set.rb +12 -12
- data/lib/card/set_pattern.rb +9 -9
- data/lib/card/spec_helper.rb +5 -5
- data/lib/card/success.rb +1 -1
- data/lib/cardio.rb +7 -7
- data/lib/generators/card/format/format_generator.rb +3 -3
- data/lib/generators/card/migration/migration_generator.rb +5 -5
- data/lib/generators/card/set/set_generator.rb +4 -4
- data/mod/01_core/chunk/include.rb +4 -4
- data/mod/01_core/chunk/link.rb +5 -5
- data/mod/01_core/chunk/literal.rb +2 -2
- data/mod/01_core/chunk/query_reference.rb +8 -8
- data/mod/01_core/chunk/uri.rb +18 -18
- data/mod/01_core/format/html_format.rb +4 -4
- data/mod/01_core/set/all/active_card.rb +2 -2
- data/mod/01_core/set/all/collection.rb +21 -26
- data/mod/01_core/set/all/content.rb +2 -2
- data/mod/01_core/set/all/fetch.rb +6 -6
- data/mod/01_core/set/all/initialize.rb +4 -4
- data/mod/01_core/set/all/location_history.rb +2 -2
- data/mod/01_core/set/all/name.rb +14 -14
- data/mod/01_core/set/all/pattern.rb +1 -1
- data/mod/01_core/set/all/permissions.rb +12 -12
- data/mod/01_core/set/all/phases.rb +29 -12
- data/mod/01_core/set/all/references.rb +14 -14
- data/mod/01_core/set/all/rules.rb +8 -8
- data/mod/01_core/set/all/templating.rb +10 -9
- data/mod/01_core/set/all/tracked_attributes.rb +7 -7
- data/mod/01_core/set/all/trash.rb +6 -6
- data/mod/01_core/set/all/type.rb +7 -7
- data/mod/01_core/set/all/utils.rb +4 -4
- data/mod/01_core/set/all/view_cache.rb +1 -1
- data/mod/01_core/set_pattern/02_all_plus.rb +2 -2
- data/mod/01_core/set_pattern/03_type.rb +1 -1
- data/mod/01_core/set_pattern/04_star.rb +1 -1
- data/mod/01_core/set_pattern/05_rstar.rb +2 -2
- data/mod/01_core/set_pattern/06_right.rb +4 -4
- data/mod/01_core/set_pattern/07_type_plus_right.rb +4 -4
- data/mod/01_core/set_pattern/08_self.rb +1 -1
- data/mod/01_core/spec/chunk/uri_spec.rb +73 -73
- data/mod/01_core/spec/format/html_format_spec.rb +5 -5
- data/mod/01_core/spec/set/all/attribute_tracking_spec.rb +1 -1
- data/mod/01_core/spec/set/all/collection_spec.rb +22 -22
- data/mod/01_core/spec/set/all/content_spec.rb +1 -1
- data/mod/01_core/spec/set/all/fetch_spec.rb +24 -24
- data/mod/01_core/spec/set/all/initialize_spec.rb +9 -9
- data/mod/01_core/spec/set/all/name_spec.rb +8 -8
- data/mod/01_core/spec/set/all/pattern_spec.rb +10 -10
- data/mod/01_core/spec/set/all/permissions_spec.rb +45 -45
- data/mod/01_core/spec/set/all/references_spec.rb +1 -1
- data/mod/01_core/spec/set/all/rules2_spec.rb +15 -15
- data/mod/01_core/spec/set/all/rules_spec.rb +37 -37
- data/mod/01_core/spec/set/all/templating_spec.rb +21 -21
- data/mod/01_core/spec/set/all/tracked_attributes_spec.rb +55 -55
- data/mod/01_core/spec/set/all/trash_spec.rb +4 -4
- data/mod/01_core/spec/set/all/type_spec.rb +15 -15
- data/mod/01_history/lib/card/act.rb +2 -2
- data/mod/01_history/lib/card/action.rb +22 -22
- data/mod/01_history/lib/card/change.rb +1 -1
- data/mod/01_history/set/all/actions.rb +2 -2
- data/mod/01_history/set/all/content_history.rb +4 -4
- data/mod/01_history/set/all/history.rb +46 -46
- data/mod/02_basic_types/set/all/all_css.rb +10 -10
- data/mod/02_basic_types/set/all/all_csv.rb +7 -7
- data/mod/02_basic_types/set/all/base.rb +25 -25
- data/mod/02_basic_types/set/all/json.rb +16 -16
- data/mod/02_basic_types/set/all/rss.rb +7 -7
- data/mod/02_basic_types/set/type/html.rb +2 -2
- data/mod/02_basic_types/set/type/plain_text.rb +1 -1
- data/mod/02_basic_types/set/type/pointer.rb +39 -31
- data/mod/02_basic_types/spec/set/all/all_css_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/all/all_csv_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/all/base_spec.rb +18 -18
- data/mod/02_basic_types/spec/set/all/json_spec.rb +4 -4
- data/mod/02_basic_types/spec/set/all/rss_spec.rb +8 -2
- data/mod/02_basic_types/spec/set/type/plain_text_spec.rb +1 -1
- data/mod/02_basic_types/spec/set/type/pointer_spec.rb +54 -44
- data/mod/03_machines/lib/card/machine.rb +46 -29
- data/mod/03_machines/lib/card/machine_input.rb +34 -10
- data/mod/03_machines/set/type/coffee_script.rb +3 -3
- data/mod/03_machines/set/type/css.rb +8 -8
- data/mod/03_machines/set/type/java_script.rb +4 -4
- data/mod/03_machines/set/type/scss.rb +2 -2
- data/mod/03_machines/set/type/skin.rb +1 -1
- data/mod/03_machines/spec/lib/shared_machine_examples.rb +27 -27
- data/mod/03_machines/spec/lib/shared_machine_input_examples.rb +8 -8
- data/mod/03_machines/spec/set/type/coffeescript_spec.rb +6 -6
- data/mod/03_machines/spec/set/type/css_spec.rb +9 -9
- data/mod/03_machines/spec/set/type/javascript_spec.rb +6 -6
- data/mod/03_machines/spec/set/type/scss_spec.rb +5 -5
- data/mod/03_machines/spec/set/type/skin_spec.rb +25 -25
- data/mod/04_settings/lib/card/setting.rb +11 -11
- data/mod/04_settings/set/abstract/permission.rb +9 -9
- data/mod/04_settings/set/right/script.rb +1 -1
- data/mod/04_settings/set/right/structure.rb +0 -5
- data/mod/04_settings/set/right/style.rb +2 -2
- data/mod/04_settings/set/self/accountable.rb +1 -1
- data/mod/04_settings/set/self/add_help.rb +1 -1
- data/mod/04_settings/set/self/autoname.rb +1 -1
- data/mod/04_settings/set/self/captcha.rb +1 -1
- data/mod/04_settings/set/self/create.rb +1 -1
- data/mod/04_settings/set/self/default.rb +1 -1
- data/mod/04_settings/set/self/delete.rb +1 -1
- data/mod/04_settings/set/self/help.rb +1 -1
- data/mod/04_settings/set/self/input.rb +1 -1
- data/mod/04_settings/set/self/layout.rb +1 -1
- data/mod/04_settings/set/self/on_create.rb +1 -1
- data/mod/04_settings/set/self/on_delete.rb +1 -1
- data/mod/04_settings/set/self/on_update.rb +1 -1
- data/mod/04_settings/set/self/options.rb +1 -1
- data/mod/04_settings/set/self/options_label.rb +1 -1
- data/mod/04_settings/set/self/read.rb +1 -1
- data/mod/04_settings/set/self/script.rb +1 -1
- data/mod/04_settings/set/self/structure.rb +1 -1
- data/mod/04_settings/set/self/style.rb +1 -1
- data/mod/04_settings/set/self/table_of_contents.rb +1 -1
- data/mod/04_settings/set/self/thanks.rb +1 -1
- data/mod/04_settings/set/self/update.rb +1 -1
- data/mod/04_settings/set/type/setting.rb +14 -14
- data/mod/04_settings/spec/set/right/comment_spec.rb +5 -5
- data/mod/04_settings/spec/set/right/create_spec.rb +1 -1
- data/mod/04_settings/spec/set/right/script_spec.rb +5 -5
- data/mod/04_settings/spec/set/right/structure_spec.rb +4 -2
- data/mod/04_settings/spec/set/right/style_spec.rb +7 -7
- data/mod/04_settings/spec/set/type/setting_spec.rb +2 -2
- data/mod/05_email/lib/card/follow_option.rb +24 -24
- data/mod/05_email/set/all/follow.rb +24 -16
- data/mod/05_email/set/all/notify.rb +25 -23
- data/mod/05_email/set/all/observer.rb +5 -5
- data/mod/05_email/set/right/bcc.rb +8 -8
- data/mod/05_email/set/right/follow.rb +44 -17
- data/mod/05_email/set/right/follow_fields.rb +1 -1
- data/mod/05_email/set/right/following.rb +49 -40
- data/mod/05_email/set/self/always.rb +2 -2
- data/mod/05_email/set/self/created.rb +1 -1
- data/mod/05_email/set/self/edited.rb +4 -4
- data/mod/05_email/set/self/follow.rb +1 -1
- data/mod/05_email/set/self/follow_defaults.rb +9 -9
- data/mod/05_email/set/self/never.rb +1 -1
- data/mod/05_email/set/type/email_template.rb +9 -9
- data/mod/05_email/set/type_plus_right/user/follow.rb +16 -16
- data/mod/05_email/spec/set/all/follow_spec.rb +10 -10
- data/mod/05_email/spec/set/all/notify_spec.rb +82 -82
- data/mod/05_email/spec/set/all/observer_spec.rb +16 -16
- data/mod/05_email/spec/set/right/followers_spec.rb +6 -6
- data/mod/05_email/spec/set/self/follow_defaults_spec.rb +2 -2
- data/mod/05_standard/lib/carrier_wave/cardmount.rb +5 -5
- data/mod/05_standard/lib/image_uploader.rb +8 -8
- data/mod/05_standard/set/abstract/attachment.rb +18 -18
- data/mod/05_standard/set/all/account.rb +5 -5
- data/mod/05_standard/set/all/comment.rb +7 -7
- data/mod/05_standard/set/all/error.rb +25 -25
- data/mod/05_standard/set/all/event_viz.rb +1 -1
- data/mod/05_standard/set/all/links.rb +9 -9
- data/mod/05_standard/set/all/rich_html/content.rb +34 -34
- data/mod/05_standard/set/all/rich_html/editing.rb +35 -35
- data/mod/05_standard/set/all/rich_html/form.rb +20 -20
- data/mod/05_standard/set/all/rich_html/header.rb +8 -8
- data/mod/05_standard/set/all/rich_html/menu.rb +33 -33
- data/mod/05_standard/set/all/rich_html/modal.rb +16 -16
- data/mod/05_standard/set/all/rich_html/toolbar.rb +63 -63
- data/mod/05_standard/set/all/rich_html/wrapper.rb +8 -8
- data/mod/05_standard/set/right/account.rb +27 -27
- data/mod/05_standard/set/right/email.rb +5 -5
- data/mod/05_standard/set/right/password.rb +5 -5
- data/mod/05_standard/set/rstar/rules.rb +52 -52
- data/mod/05_standard/set/self/account_links.rb +27 -27
- data/mod/05_standard/set/self/all.rb +1 -1
- data/mod/05_standard/set/self/head.rb +5 -5
- data/mod/05_standard/set/self/navbox.rb +11 -11
- data/mod/05_standard/set/self/recent.rb +2 -2
- data/mod/05_standard/set/self/search.rb +13 -13
- data/mod/05_standard/set/self/signin.rb +19 -19
- data/mod/05_standard/set/self/stats.rb +2 -2
- data/mod/05_standard/set/type/basic.rb +1 -1
- data/mod/05_standard/set/type/cardtype.rb +5 -5
- data/mod/05_standard/set/type/date.rb +1 -1
- data/mod/05_standard/set/type/file.rb +7 -7
- data/mod/05_standard/set/type/image.rb +8 -8
- data/mod/05_standard/set/type/number.rb +2 -2
- data/mod/05_standard/set/type/phrase.rb +1 -1
- data/mod/05_standard/set/type/search_type.rb +27 -21
- data/mod/05_standard/set/type/session.rb +2 -2
- data/mod/05_standard/set/type/set.rb +37 -37
- data/mod/05_standard/set/type/signup.rb +25 -25
- data/mod/05_standard/set/type/uri.rb +1 -1
- data/mod/05_standard/set/type/user.rb +21 -21
- data/mod/05_standard/spec/chunk/include_spec.rb +16 -16
- data/mod/05_standard/spec/chunk/link_spec.rb +18 -18
- data/mod/05_standard/spec/chunk/query_reference_spec.rb +1 -1
- data/mod/05_standard/spec/set/all/account_spec.rb +7 -7
- data/mod/05_standard/spec/set/all/email_html_spec.rb +3 -3
- data/mod/05_standard/spec/set/all/history_spec.rb +14 -14
- data/mod/05_standard/spec/set/all/rich_html/editing_spec.rb +1 -1
- data/mod/05_standard/spec/set/all/rich_html/form_spec.rb +2 -2
- data/mod/05_standard/spec/set/right/account_spec.rb +9 -9
- data/mod/05_standard/spec/set/right/email_spec.rb +8 -8
- data/mod/05_standard/spec/set/right/password_spec.rb +9 -9
- data/mod/05_standard/spec/set/right/stats_spec.rb +1 -1
- data/mod/05_standard/spec/set/right/when_created_spec.rb +1 -1
- data/mod/05_standard/spec/set/right/when_last_edited_spec.rb +1 -1
- data/mod/05_standard/spec/set/rstar/rules_spec.rb +2 -2
- data/mod/05_standard/spec/set/self/account_links_spec.rb +2 -2
- data/mod/05_standard/spec/set/self/all_spec.rb +8 -11
- data/mod/05_standard/spec/set/self/head_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/navbox_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/now_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/stats_spec.rb +1 -1
- data/mod/05_standard/spec/set/self/version_spec.rb +1 -1
- data/mod/05_standard/spec/set/type/email_template_spec.rb +25 -25
- data/mod/05_standard/spec/set/type/file_spec.rb +4 -4
- data/mod/05_standard/spec/set/type/html_spec.rb +3 -3
- data/mod/05_standard/spec/set/type/image_spec.rb +6 -6
- data/mod/05_standard/spec/set/type/layout_type_spec.rb +1 -1
- data/mod/05_standard/spec/set/type/search_type_spec.rb +10 -10
- data/mod/05_standard/spec/set/type/signup_spec.rb +11 -11
- data/mod/05_standard/spec/set/type/toggle_spec.rb +2 -2
- data/mod/05_standard/spec/set/type/uri_spec.rb +9 -9
- data/mod/06_bootstrap/set/all/bootstrap/helper.rb +10 -10
- data/mod/06_bootstrap/set/all/bootstrap/wrapper.rb +4 -4
- data/mod/06_bootstrap/set/all/rich_bootstrap.rb +1 -1
- data/spec/lib/card/action_spec.rb +2 -2
- data/spec/lib/card/cache_spec.rb +7 -7
- data/spec/lib/card/content_spec.rb +31 -37
- data/spec/lib/card/diff_spec.rb +56 -56
- data/spec/lib/card/format_spec.rb +11 -11
- data/spec/lib/card/query_spec.rb +382 -265
- data/spec/lib/card/reference_spec.rb +133 -140
- data/spec/lib/card/set_pattern_spec.rb +10 -9
- data/spec/lib/card/set_spec.rb +11 -11
- data/spec/lib/card/success_spec.rb +16 -8
- data/spec/mailers/mailer_spec.rb +5 -5
- data/spec/models/card/cardtype_spec.rb +20 -20
- data/spec/models/card/create_spec.rb +6 -6
- data/spec/models/card/trash_spec.rb +20 -20
- data/spec/models/card/type_transition_spec.rb +3 -3
- data/spec/models/card/validation_spec.rb +5 -5
- data/spec/models/card_spec.rb +24 -24
- data/spec/spec_helper.rb +5 -5
- data/tmpsets/set/mod001-01_core/all/active_card.rb +2 -2
- data/tmpsets/set/mod001-01_core/all/collection.rb +23 -26
- data/tmpsets/set/mod001-01_core/all/content.rb +2 -2
- data/tmpsets/set/mod001-01_core/all/fetch.rb +6 -6
- data/tmpsets/set/mod001-01_core/all/initialize.rb +8 -4
- data/tmpsets/set/mod001-01_core/all/name.rb +14 -14
- data/tmpsets/set/mod001-01_core/all/pattern.rb +1 -1
- data/tmpsets/set/mod001-01_core/all/permissions.rb +12 -12
- data/tmpsets/set/mod001-01_core/all/phases.rb +31 -13
- data/tmpsets/set/mod001-01_core/all/references.rb +14 -14
- data/tmpsets/set/mod001-01_core/all/rules.rb +8 -10
- data/tmpsets/set/mod001-01_core/all/templating.rb +10 -9
- data/tmpsets/set/mod001-01_core/all/tracked_attributes.rb +7 -7
- data/tmpsets/set/mod001-01_core/all/trash.rb +9 -8
- data/tmpsets/set/mod001-01_core/all/type.rb +7 -7
- data/tmpsets/set/mod001-01_core/all/utils.rb +16 -4
- data/tmpsets/set/mod001-01_core/all/view_cache.rb +1 -1
- data/tmpsets/set/mod002-01_history/all/actions.rb +2 -2
- data/tmpsets/set/mod002-01_history/all/content_history.rb +11 -7
- data/tmpsets/set/mod002-01_history/all/history.rb +46 -46
- data/tmpsets/set/mod003-02_basic_types/all/all_css.rb +10 -10
- data/tmpsets/set/mod003-02_basic_types/all/all_csv.rb +7 -7
- data/tmpsets/set/mod003-02_basic_types/all/base.rb +25 -25
- data/tmpsets/set/mod003-02_basic_types/all/json.rb +16 -16
- data/tmpsets/set/mod003-02_basic_types/all/rss.rb +7 -7
- data/tmpsets/set/mod003-02_basic_types/type/html.rb +2 -2
- data/tmpsets/set/mod003-02_basic_types/type/plain_text.rb +1 -1
- data/tmpsets/set/mod003-02_basic_types/type/pointer.rb +38 -31
- data/tmpsets/set/mod004-03_machines/right/machine_output.rb +4 -0
- data/tmpsets/set/mod004-03_machines/type/coffee_script.rb +3 -3
- data/tmpsets/set/mod004-03_machines/type/css.rb +8 -8
- data/tmpsets/set/mod004-03_machines/type/java_script.rb +4 -4
- data/tmpsets/set/mod004-03_machines/type/scss.rb +2 -2
- data/tmpsets/set/mod004-03_machines/type/skin.rb +1 -1
- data/tmpsets/set/mod005-04_settings/abstract/permission.rb +9 -9
- data/tmpsets/set/mod005-04_settings/right/script.rb +1 -1
- data/tmpsets/set/mod005-04_settings/right/structure.rb +0 -5
- data/tmpsets/set/mod005-04_settings/right/style.rb +2 -2
- data/tmpsets/set/mod005-04_settings/self/accountable.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/add_help.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/autoname.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/captcha.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/create.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/default.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/delete.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/help.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/input.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/layout.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_create.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_delete.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/on_update.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/options.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/options_label.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/read.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/script.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/structure.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/style.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/table_of_contents.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/thanks.rb +1 -1
- data/tmpsets/set/mod005-04_settings/self/update.rb +1 -1
- data/tmpsets/set/mod005-04_settings/type/setting.rb +14 -14
- data/tmpsets/set/mod006-05_email/all/follow.rb +24 -16
- data/tmpsets/set/mod006-05_email/all/notify.rb +25 -23
- data/tmpsets/set/mod006-05_email/all/observer.rb +8 -8
- data/tmpsets/set/mod006-05_email/right/bcc.rb +8 -8
- data/tmpsets/set/mod006-05_email/right/follow.rb +44 -17
- data/tmpsets/set/mod006-05_email/right/follow_fields.rb +1 -1
- data/tmpsets/set/mod006-05_email/right/following.rb +49 -40
- data/tmpsets/set/mod006-05_email/self/always.rb +2 -2
- data/tmpsets/set/mod006-05_email/self/created.rb +1 -1
- data/tmpsets/set/mod006-05_email/self/edited.rb +4 -4
- data/tmpsets/set/mod006-05_email/self/follow.rb +1 -1
- data/tmpsets/set/mod006-05_email/self/follow_defaults.rb +9 -9
- data/tmpsets/set/mod006-05_email/self/never.rb +1 -1
- data/tmpsets/set/mod006-05_email/type/email_template.rb +9 -9
- data/tmpsets/set/mod006-05_email/type_plus_right/user/follow.rb +17 -17
- data/tmpsets/set/mod007-05_standard/abstract/attachment.rb +98 -46
- data/tmpsets/set/mod007-05_standard/all/account.rb +5 -5
- data/tmpsets/set/mod007-05_standard/all/comment.rb +7 -7
- data/tmpsets/set/mod007-05_standard/all/error.rb +26 -26
- data/tmpsets/set/mod007-05_standard/all/event_viz.rb +1 -1
- data/tmpsets/set/mod007-05_standard/all/links.rb +10 -9
- data/tmpsets/set/mod007-05_standard/all/rich_html/content.rb +34 -34
- data/tmpsets/set/mod007-05_standard/all/rich_html/editing.rb +35 -35
- data/tmpsets/set/mod007-05_standard/all/rich_html/form.rb +20 -20
- data/tmpsets/set/mod007-05_standard/all/rich_html/header.rb +8 -8
- data/tmpsets/set/mod007-05_standard/all/rich_html/menu.rb +33 -33
- data/tmpsets/set/mod007-05_standard/all/rich_html/modal.rb +16 -16
- data/tmpsets/set/mod007-05_standard/all/rich_html/toolbar.rb +63 -63
- data/tmpsets/set/mod007-05_standard/all/rich_html/wrapper.rb +8 -8
- data/tmpsets/set/mod007-05_standard/right/account.rb +27 -27
- data/tmpsets/set/mod007-05_standard/right/email.rb +5 -5
- data/tmpsets/set/mod007-05_standard/right/password.rb +5 -5
- data/tmpsets/set/mod007-05_standard/rstar/rules.rb +52 -52
- data/tmpsets/set/mod007-05_standard/self/account_links.rb +27 -27
- data/tmpsets/set/mod007-05_standard/self/all.rb +1 -1
- data/tmpsets/set/mod007-05_standard/self/head.rb +5 -5
- data/tmpsets/set/mod007-05_standard/self/navbox.rb +11 -11
- data/tmpsets/set/mod007-05_standard/self/recent.rb +2 -2
- data/tmpsets/set/mod007-05_standard/self/search.rb +13 -13
- data/tmpsets/set/mod007-05_standard/self/signin.rb +19 -19
- data/tmpsets/set/mod007-05_standard/self/stats.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/basic.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/cardtype.rb +5 -5
- data/tmpsets/set/mod007-05_standard/type/date.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/file.rb +23 -8
- data/tmpsets/set/mod007-05_standard/type/image.rb +10 -8
- data/tmpsets/set/mod007-05_standard/type/number.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/phrase.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/search_type.rb +21 -19
- data/tmpsets/set/mod007-05_standard/type/session.rb +2 -2
- data/tmpsets/set/mod007-05_standard/type/set.rb +37 -37
- data/tmpsets/set/mod007-05_standard/type/signup.rb +25 -25
- data/tmpsets/set/mod007-05_standard/type/uri.rb +1 -1
- data/tmpsets/set/mod007-05_standard/type/user.rb +21 -21
- data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/helper.rb +10 -10
- data/tmpsets/set/mod008-06_bootstrap/all/bootstrap/wrapper.rb +4 -4
- data/tmpsets/set/mod008-06_bootstrap/all/rich_bootstrap.rb +1 -1
- data/tmpsets/set_pattern/101-all_plus.rb +2 -2
- data/tmpsets/set_pattern/102-type.rb +1 -1
- data/tmpsets/set_pattern/103-star.rb +1 -1
- data/tmpsets/set_pattern/104-rstar.rb +2 -2
- data/tmpsets/set_pattern/105-right.rb +4 -4
- data/tmpsets/set_pattern/106-type_plus_right.rb +4 -4
- data/tmpsets/set_pattern/107-self.rb +1 -1
- metadata +7 -5
- data/lib/card/query/card_clause.rb +0 -528
- data/lib/card/query/ref_clause.rb +0 -47
- data/lib/card/query/value_clause.rb +0 -65
@@ -7,7 +7,7 @@ describe Card::Set::Right::Account do
|
|
7
7
|
#note - much of this is tested in account_request_spec
|
8
8
|
before do
|
9
9
|
Card::Auth.as_bot do
|
10
|
-
@user_card = Card.create! :
|
10
|
+
@user_card = Card.create! name: 'TmpUser', type_id: Card::UserID, '+*account'=>{
|
11
11
|
'+*email'=>'tmpuser@wagn.org', '+*password'=>'tmp_pass'
|
12
12
|
}
|
13
13
|
end
|
@@ -20,12 +20,12 @@ describe Card::Set::Right::Account do
|
|
20
20
|
end
|
21
21
|
|
22
22
|
it "should check accountability of 'accounted' card" do
|
23
|
-
@unaccountable = Card.create :
|
23
|
+
@unaccountable = Card.create name: 'BasicUnaccountable', '+*account'=>{ '+*email'=>'tmpuser@wagn.org', '+*password'=>'tmp_pass' }
|
24
24
|
expect(@unaccountable.errors['+*account'].first).to eq('not allowed on this card')
|
25
25
|
end
|
26
26
|
|
27
27
|
it "should require email" do
|
28
|
-
@no_email = Card.create :
|
28
|
+
@no_email = Card.create name: 'TmpUser', type_id: Card::UserID, '+*account'=>{ '+*password'=>'tmp_pass' }
|
29
29
|
expect(@no_email.errors['+*account'].first).to match(/email required/)
|
30
30
|
end
|
31
31
|
end
|
@@ -87,12 +87,12 @@ describe Card::Set::Right::Account do
|
|
87
87
|
end
|
88
88
|
|
89
89
|
it 'should reset password' do
|
90
|
-
@user_card.account.password_card.update_attributes!(:
|
90
|
+
@user_card.account.password_card.update_attributes!(content: 'new password')
|
91
91
|
assert_equal @user_card.id, Card::Auth.authenticate('joe@user.com', 'new password')
|
92
92
|
end
|
93
93
|
|
94
94
|
it 'should not rehash password when updating email' do
|
95
|
-
@user_card.account.email_card.update_attributes!(:
|
95
|
+
@user_card.account.email_card.update_attributes!(content: 'joe2@user.com')
|
96
96
|
assert_equal @user_card.id, Card::Auth.authenticate('joe2@user.com', 'joe_pass')
|
97
97
|
end
|
98
98
|
end
|
@@ -113,7 +113,7 @@ describe Card::Set::Right::Account do
|
|
113
113
|
expect(@account.save).to eq(true)
|
114
114
|
expect(Card::Auth.current_id).to eq(@account.left_id)
|
115
115
|
@account = @account.refresh force=true
|
116
|
-
expect(@account.fetch(:
|
116
|
+
expect(@account.fetch(trait: :token)).to be_nil
|
117
117
|
expect(@account.save).to be_falsey
|
118
118
|
end
|
119
119
|
|
@@ -145,11 +145,11 @@ describe Card::Set::Right::Account do
|
|
145
145
|
context 'denied access' do
|
146
146
|
it 'excludes protected subcards' do
|
147
147
|
skip
|
148
|
-
Card.create(:
|
149
|
-
u2 = Card.fetch 'u2+*following', :
|
148
|
+
Card.create(name: "A+B+*self+*read", type: 'Pointer', content: "[[u1]]")
|
149
|
+
u2 = Card.fetch 'u2+*following', new: {type: 'Pointer'}
|
150
150
|
u2.add_item "A"
|
151
151
|
a = Card.fetch "A"
|
152
|
-
a.update_attributes( :
|
152
|
+
a.update_attributes( content: "new content", subcards: {'+B'=>{content: 'hidden content'}})
|
153
153
|
end
|
154
154
|
|
155
155
|
it 'sends no email if changes not visible' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- encoding : utf-8 -*-
|
2
2
|
|
3
3
|
describe Card::Set::Right::Email do
|
4
|
-
|
4
|
+
|
5
5
|
context '<User>+*email' do
|
6
6
|
before do
|
7
7
|
@card = Card.fetch 'u1+*email'
|
@@ -25,30 +25,30 @@ describe Card::Set::Right::Email do
|
|
25
25
|
expect(@format.render_raw).to match(/denied/)
|
26
26
|
end
|
27
27
|
end
|
28
|
-
|
28
|
+
|
29
29
|
context "+*account+*email" do
|
30
30
|
context 'update' do
|
31
31
|
before :each do
|
32
32
|
@email_card = email_card = Card['u1'].account.email_card
|
33
33
|
end
|
34
|
-
|
34
|
+
|
35
35
|
it 'should downcase email' do
|
36
36
|
Card::Auth.as_bot do
|
37
|
-
@email_card.update_attributes! :
|
37
|
+
@email_card.update_attributes! content: 'QuIrE@example.com'
|
38
38
|
expect(@email_card.content).to eq('quire@example.com')
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
42
|
it 'should require valid email' do
|
43
|
-
@email_card.update_attributes :
|
43
|
+
@email_card.update_attributes content: 'boop'
|
44
44
|
expect(@email_card.errors[:content].first).to match(/must be valid address/)
|
45
45
|
end
|
46
|
-
|
46
|
+
|
47
47
|
it 'should require unique email' do
|
48
|
-
@email_card.update_attributes :
|
48
|
+
@email_card.update_attributes content: 'joe@user.com'
|
49
49
|
expect(@email_card.errors[:content].first).to match(/must be unique/)
|
50
50
|
end
|
51
|
-
|
51
|
+
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
@@ -5,22 +5,22 @@ describe Card::Set::Right::Password do
|
|
5
5
|
before :each do
|
6
6
|
@user_card = Card::Auth[ 'joe@user.com' ]
|
7
7
|
end
|
8
|
-
|
8
|
+
|
9
9
|
describe '#update_attributes' do
|
10
10
|
|
11
11
|
it 'should encrypt password' do
|
12
|
-
@user_card.account.password_card.update_attributes! :
|
12
|
+
@user_card.account.password_card.update_attributes! content: 'new password'
|
13
13
|
expect(@user_card.account.password).not_to eq('new password')
|
14
14
|
assert_equal @user_card.id, Card::Auth.authenticate('joe@user.com', 'new password')
|
15
15
|
end
|
16
16
|
|
17
17
|
it 'should validate password' do
|
18
18
|
password_card = @user_card.account.password_card
|
19
|
-
password_card.update_attributes :
|
19
|
+
password_card.update_attributes content: '2b'
|
20
20
|
expect(password_card.errors[:password]).not_to be_empty
|
21
|
-
|
21
|
+
|
22
22
|
end
|
23
|
-
|
23
|
+
|
24
24
|
context 'blank password' do
|
25
25
|
it "shouldn't change the password" do
|
26
26
|
acct = @user_card.account
|
@@ -31,15 +31,15 @@ describe Card::Set::Right::Password do
|
|
31
31
|
pw_card.save
|
32
32
|
expect(original_pw).to eq(pw_card.refresh(force=true).content)
|
33
33
|
end
|
34
|
-
|
34
|
+
|
35
35
|
it "shouldn't break email editing" do
|
36
|
-
@user_card.account.update_attributes! :
|
36
|
+
@user_card.account.update_attributes! subcards: {'+*password'=>'', '+*email'=>'joe2@user.com'}
|
37
37
|
expect(@user_card.account.email).to eq('joe2@user.com')
|
38
38
|
expect(@user_card.account.password).not_to be_empty
|
39
39
|
end
|
40
40
|
end
|
41
41
|
end
|
42
|
-
|
43
|
-
|
42
|
+
|
43
|
+
|
44
44
|
|
45
45
|
end
|
@@ -7,13 +7,13 @@ describe Card::Set::Rstar::Rules do
|
|
7
7
|
expect(r).not_to match('No Card!')
|
8
8
|
#warn "r = #{r}"
|
9
9
|
assert_view_select r, 'table[class="set-rules table"]' do
|
10
|
-
assert_select 'a[href~="/*read+*right+*read?view=open_rule"]', :
|
10
|
+
assert_select 'a[href~="/*read+*right+*read?view=open_rule"]', text: 'read'
|
11
11
|
end
|
12
12
|
end
|
13
13
|
|
14
14
|
it "should render setting view for a *input rule" do
|
15
15
|
Card::Auth.as_bot do
|
16
|
-
r = Card.fetch('*read+*right+*input'
|
16
|
+
r = Card.fetch('*read+*right+*input',new: {}).format.render_open_rule
|
17
17
|
expect(r).not_to match(/error/i)
|
18
18
|
expect(r).not_to match('No Card!')
|
19
19
|
#warn "r = #{r}"
|
@@ -2,8 +2,8 @@
|
|
2
2
|
|
3
3
|
describe Card::Set::Self::AccountLinks do
|
4
4
|
it "has a 'my card' link" do
|
5
|
-
assert_view_select render_card(:core, :
|
6
|
-
assert_select 'a[id="my-card-link"]', :
|
5
|
+
assert_view_select render_card(:core, name: '*account links'), 'span[id="logging"]' do # 'ul[class="nav navbar-nav navbar-right"]'
|
6
|
+
assert_select 'a[id="my-card-link"]', text: 'Joe User'
|
7
7
|
end
|
8
8
|
end
|
9
9
|
end
|
@@ -2,35 +2,33 @@
|
|
2
2
|
|
3
3
|
describe Card::Set::Self::All do
|
4
4
|
before do
|
5
|
-
|
6
5
|
@all = Card[:all]
|
7
|
-
|
8
6
|
end
|
9
|
-
|
7
|
+
|
10
8
|
context '#update' do
|
11
9
|
it 'should trigger empty trash (with right params)' do
|
12
10
|
Card::Auth.as_bot do
|
13
11
|
Card['A'].delete!
|
14
|
-
expect(Card.where(
|
12
|
+
expect(Card.where(trash: true)).not_to be_empty
|
15
13
|
Card::Env.params[:task] = :empty_trash
|
16
14
|
@all.update_attributes({})
|
17
|
-
expect(Card.where(
|
15
|
+
expect(Card.where(trash: true)).to be_empty
|
18
16
|
end
|
19
17
|
end
|
20
18
|
|
21
19
|
it 'should trigger deleting old revisions (with right params)' do
|
22
20
|
Card::Auth.as_bot do
|
23
21
|
a = Card['A']
|
24
|
-
a.update_attributes! :
|
25
|
-
a.update_attributes! :
|
22
|
+
a.update_attributes! content: 'a new day'
|
23
|
+
a.update_attributes! content: 'another day'
|
26
24
|
expect(a.actions.count).to eq(3)
|
27
25
|
Card::Env.params[:task] = :delete_old_revisions
|
28
26
|
@all.update_attributes({})
|
29
|
-
expect(a.actions.count).to eq(1)
|
27
|
+
expect(a.actions.count).to eq(1)
|
30
28
|
end
|
31
29
|
end
|
32
30
|
|
33
|
-
=begin
|
31
|
+
=begin
|
34
32
|
it 'should be trigger reference repair' do
|
35
33
|
Card::Auth.as_bot do
|
36
34
|
a = Card['A']
|
@@ -39,10 +37,9 @@ describe Card::Set::Self::All do
|
|
39
37
|
puts a.references_to.count
|
40
38
|
@all.update_attributes({})
|
41
39
|
puts a.references_to.count
|
42
|
-
|
40
|
+
|
43
41
|
end
|
44
42
|
end
|
45
43
|
=end
|
46
|
-
|
47
44
|
end
|
48
45
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
describe Card::Set::Self::Head do
|
4
4
|
it "should have a javascript tag" do
|
5
|
-
assert_view_select render_card(:raw, :
|
5
|
+
assert_view_select render_card(:raw, name: '*head'), 'script[type="text/javascript"]'
|
6
6
|
end
|
7
7
|
|
8
8
|
context 'tinyMCE config' do
|
@@ -14,13 +14,13 @@ describe Card::Set::Type::EmailTemplate do
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def create_field name, args={}
|
17
|
-
Card.create! args.merge(:
|
17
|
+
Card.create! args.merge(name: "#{email_name}+#{name}")
|
18
18
|
end
|
19
19
|
|
20
20
|
before do
|
21
21
|
Card::Auth.current_id = Card::WagnBotID
|
22
22
|
chunk_test = "Url(wagn.org) Link([[http://wagn.org|Wagn]]) Inclusion({{B|name}}) Card link([[A]])"
|
23
|
-
Card.create! :
|
23
|
+
Card.create! name: email_name, type: :email_template, subcards: {
|
24
24
|
"+*to" => "joe@user.com",
|
25
25
|
"+*from" => "from@user.com",
|
26
26
|
"+*subject" => "*subject #{chunk_test}",
|
@@ -31,7 +31,7 @@ describe Card::Set::Type::EmailTemplate do
|
|
31
31
|
|
32
32
|
describe "mail view" do
|
33
33
|
let(:content_type) do
|
34
|
-
card = Card.create!(:
|
34
|
+
card = Card.create!(name: 'content type test', type: :email_template, subcards: @fields)
|
35
35
|
email = card.format.render_mail
|
36
36
|
email[:content_type].value
|
37
37
|
end
|
@@ -66,34 +66,34 @@ describe Card::Set::Type::EmailTemplate do
|
|
66
66
|
end
|
67
67
|
|
68
68
|
it 'handles pointer values' do
|
69
|
-
create_field '*cc', :
|
69
|
+
create_field '*cc', content: "[[joe@user.com]]", type: 'Pointer'
|
70
70
|
expect( mailconfig[:cc] ).to eq 'joe@user.com'
|
71
71
|
end
|
72
72
|
|
73
73
|
|
74
74
|
#it 'handles email syntax in pointer values' do
|
75
|
-
# create_field '*cc', :
|
75
|
+
# create_field '*cc', content: "[[Joe User <joe@user.com>]]", type: 'Pointer'
|
76
76
|
# expect( mailconfig[:cc] ).to eq 'Joe User <joe@user.com>'
|
77
77
|
#end
|
78
78
|
|
79
79
|
it 'handles link to email card' do
|
80
|
-
create_field '*cc', :
|
80
|
+
create_field '*cc', content: "[[Joe User+*email]]", type: 'Pointer'
|
81
81
|
expect( mailconfig[:cc] ).to eq 'joe@user.com'
|
82
82
|
end
|
83
83
|
|
84
84
|
# it 'handles link with valid email address' do
|
85
|
-
# create_field '*cc', :
|
85
|
+
# create_field '*cc', content: "[[joe@admin.com|Joe]]", type: 'Phrase'
|
86
86
|
# expect( mailconfig[:cc] ).to eq 'Joe<joe@user.com>'
|
87
87
|
# end
|
88
88
|
|
89
89
|
it 'handles search card' do
|
90
|
-
create_field '*bcc', :
|
90
|
+
create_field '*bcc', content: '{"name":"Joe Admin","append":"*email"}', type: 'Search'
|
91
91
|
expect( mailconfig[:bcc] ).to eq 'joe@admin.com'
|
92
92
|
end
|
93
93
|
|
94
94
|
# it 'handles invalid email address' do #TODO not obvious how to deal with that.
|
95
95
|
# we can't decided whether a email address like [[_left]] is valid; depends on the context
|
96
|
-
# Card.fetch("a mail template+*to").update_attributes(:
|
96
|
+
# Card.fetch("a mail template+*to").update_attributes(content: "invalid mail address")
|
97
97
|
# end
|
98
98
|
end
|
99
99
|
|
@@ -159,46 +159,46 @@ describe Card::Set::Type::EmailTemplate do
|
|
159
159
|
context 'with context card' do
|
160
160
|
let(:context_card) do
|
161
161
|
Card.create(
|
162
|
-
:
|
163
|
-
:
|
164
|
-
:
|
165
|
-
'+email' => {:
|
166
|
-
'+subject' => {:
|
167
|
-
'+attachment' => {:
|
162
|
+
name: "Banana",
|
163
|
+
content: "data content [[A]]",
|
164
|
+
subcards: {
|
165
|
+
'+email' => {content: 'gary@gary.com'},
|
166
|
+
'+subject' => {type: 'Pointer', content: '[[default subject]]'},
|
167
|
+
'+attachment' => {type: 'File', content: "notreally.txt" }
|
168
168
|
}
|
169
169
|
)
|
170
170
|
end
|
171
171
|
subject { mailconfig( context: context_card ) }
|
172
172
|
|
173
173
|
it 'handles contextual name in address search' do
|
174
|
-
update_field '*from', :
|
175
|
-
update_field '*from', :
|
174
|
+
update_field '*from', content: '{"left":"_self", "right":"email"}', type: 'Search'
|
175
|
+
update_field '*from', content: '{"left":"_self", "right":"email"}' #FIXME: have to do this twice to get the right content.
|
176
176
|
# After the first update the content is empty
|
177
177
|
expect(subject[:from]).to eq "gary@gary.com"
|
178
178
|
end
|
179
179
|
|
180
180
|
it 'handles contextual names and structure rules in subject' do
|
181
|
-
Card.create! :
|
182
|
-
Card.create! :
|
183
|
-
update_field '*subject', :
|
181
|
+
Card.create! name: 'default subject', content: 'a very nutty thang', type: 'Phrase'
|
182
|
+
Card.create! name: "subject search+*right+*structure", content: %{{"referred_to_by":"_left+subject"}}, type: 'Search'
|
183
|
+
update_field '*subject', content: "{{+subject search|core;item:core}}"
|
184
184
|
expect(subject[:subject]).to eq("a very nutty thang")
|
185
185
|
end
|
186
186
|
|
187
187
|
it 'handles _self in html message' do
|
188
|
-
update_field '*html message', :
|
188
|
+
update_field '*html message', content: "Triggered by {{_self|name}}"
|
189
189
|
expect(subject[:html_message]).to include("Triggered by Banana")
|
190
190
|
end
|
191
191
|
|
192
192
|
it 'handles _left in html message' do
|
193
|
-
update_field '*html_message', :
|
194
|
-
Card.create :
|
195
|
-
c = Card.create :
|
193
|
+
update_field '*html_message', content: "Nobody expects {{_left+surprise|core}}"
|
194
|
+
Card.create name: 'Banana+surprise', content: "the Spanish Inquisition"
|
195
|
+
c = Card.create name: "Banana+emailtest", content: "data content"
|
196
196
|
expect( mailconfig( context: c )[:html_message] ).to include 'Nobody expects the Spanish Inquisition'
|
197
197
|
|
198
198
|
end
|
199
199
|
|
200
200
|
it 'handles contextual name for attachments' do
|
201
|
-
create_field '*attach', :
|
201
|
+
create_field '*attach', type: "Pointer", content: "[[_self+attachment]]"
|
202
202
|
expect(subject[:attach]).to eq ['Banana+attachment'.to_name]
|
203
203
|
end
|
204
204
|
end
|
@@ -5,7 +5,7 @@ describe Card::Set::Type::File do
|
|
5
5
|
context "new file card" do
|
6
6
|
before do
|
7
7
|
Card::Auth.as_bot do
|
8
|
-
Card.create :
|
8
|
+
Card.create name: "file card", type_code: 'file', file: File.new( File.join FIXTURES_PATH, 'file1.txt' )
|
9
9
|
end
|
10
10
|
end
|
11
11
|
subject { Card['file card'] }
|
@@ -43,7 +43,7 @@ describe Card::Set::Type::File do
|
|
43
43
|
|
44
44
|
context "updated file card" do
|
45
45
|
before do
|
46
|
-
subject.update_attributes! :
|
46
|
+
subject.update_attributes! file: File.new( File.join FIXTURES_PATH, 'file2.txt' )
|
47
47
|
end
|
48
48
|
it "updates file" do
|
49
49
|
expect(subject.file.read.strip).to eq "file2"
|
@@ -60,7 +60,7 @@ describe Card::Set::Type::File do
|
|
60
60
|
|
61
61
|
context 'subcards' do
|
62
62
|
it 'handles file subcards' do
|
63
|
-
Card.create! :
|
63
|
+
Card.create! name: 'new card with file', subcards: {'+my file'=>{content: 'ignore content', type_id: Card::FileID, file: File.open(File.join(FIXTURES_PATH, 'file1.txt'))}}
|
64
64
|
expect(Card['new card with file+my file'].file.file.read.strip).to eq 'file1'
|
65
65
|
end
|
66
66
|
|
@@ -69,7 +69,7 @@ describe Card::Set::Type::File do
|
|
69
69
|
|
70
70
|
it 'handles urls' do
|
71
71
|
url = 'http://wagn.org/files/bruce_logo-large-122798.png'
|
72
|
-
Card.create! :
|
72
|
+
Card.create! name: 'url test', type_id: Card::FileID, remote_file_url: url
|
73
73
|
expect(Card['url test'].file.size).to be > 0
|
74
74
|
expect(Card['url test'].file.url).to match /\.png$/
|
75
75
|
end
|