RubyApp 0.2.7 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +3 -3
- data/Gemfile.lock +4 -50
- data/lib/ruby_app/application.rb +3 -0
- data/lib/ruby_app/configuration.yml +23 -14
- data/lib/ruby_app/element.rb +125 -36
- data/lib/ruby_app/elements.rb +28 -49
- data/lib/ruby_app/elements/mobile/button.rb +23 -0
- data/lib/ruby_app/elements/mobile/click.js.haml +9 -0
- data/lib/ruby_app/elements/mobile/click.rb +48 -0
- data/lib/ruby_app/elements/mobile/default/.cache/default_document.css +33 -0
- data/lib/ruby_app/elements/mobile/default/.cache/default_document.js +191 -0
- data/lib/ruby_app/elements/mobile/default/default_document.css.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/default_document.js.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/default_document.rb +30 -0
- data/lib/ruby_app/elements/mobile/default/default_page.css.haml +6 -0
- data/lib/ruby_app/elements/mobile/default/default_page.html.haml +12 -0
- data/lib/ruby_app/elements/mobile/default/default_page.js.haml +5 -0
- data/lib/ruby_app/elements/mobile/default/default_page.rb +39 -0
- data/lib/ruby_app/elements/mobile/default/features/authentications/default_page.css.haml +3 -0
- data/lib/ruby_app/elements/mobile/default/features/authentications/default_page.html.haml +20 -0
- data/lib/ruby_app/elements/mobile/default/features/authentications/default_page.js.haml +3 -0
- data/lib/ruby_app/elements/mobile/default/features/authentications/default_page.rb +61 -0
- data/lib/ruby_app/elements/mobile/default/features/buttons_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/default/features/buttons_page.html.haml +11 -0
- data/lib/ruby_app/elements/mobile/default/features/buttons_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/default/features/buttons_page.rb +41 -0
- data/lib/ruby_app/elements/mobile/default/features/default_page.css.haml +9 -0
- data/lib/ruby_app/elements/mobile/default/features/default_page.html.haml +21 -0
- data/lib/ruby_app/elements/mobile/default/features/default_page.js.haml +9 -0
- data/lib/ruby_app/elements/mobile/default/features/default_page.rb +59 -0
- data/lib/ruby_app/elements/mobile/default/features/dialogs_page.css.haml +6 -0
- data/lib/ruby_app/elements/mobile/default/features/dialogs_page.html.haml +15 -0
- data/lib/ruby_app/elements/mobile/default/features/dialogs_page.js.haml +6 -0
- data/lib/ruby_app/elements/mobile/default/features/dialogs_page.rb +59 -0
- data/lib/ruby_app/elements/mobile/default/features/inputs_page.css.haml +8 -0
- data/lib/ruby_app/elements/mobile/default/features/inputs_page.html.haml +23 -0
- data/lib/ruby_app/elements/mobile/default/features/inputs_page.js.haml +8 -0
- data/lib/ruby_app/elements/mobile/default/features/inputs_page.rb +65 -0
- data/lib/ruby_app/elements/mobile/default/features/lists_page.css.haml +5 -0
- data/lib/ruby_app/elements/mobile/default/features/lists_page.html.haml +10 -0
- data/lib/ruby_app/elements/mobile/default/features/lists_page.js.haml +5 -0
- data/lib/ruby_app/elements/mobile/default/features/lists_page.rb +59 -0
- data/lib/ruby_app/elements/mobile/default/features/navigated_page.css.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/features/navigated_page.html.haml +9 -0
- data/lib/ruby_app/elements/mobile/default/features/navigated_page.js.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/features/navigated_page.rb +34 -0
- data/lib/ruby_app/elements/mobile/default/features/trigger_page.css.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/features/trigger_page.html.haml +9 -0
- data/lib/ruby_app/elements/mobile/default/features/trigger_page.js.haml +2 -0
- data/lib/ruby_app/elements/mobile/default/features/trigger_page.rb +45 -0
- data/lib/ruby_app/elements/mobile/dialog.css.haml +5 -0
- data/lib/ruby_app/elements/mobile/dialog.html.haml +2 -0
- data/lib/ruby_app/elements/mobile/dialog.js.haml +11 -0
- data/lib/ruby_app/elements/mobile/dialog.rb +34 -0
- data/lib/ruby_app/elements/mobile/dialogs/acknowledgement_dialog.html.haml +12 -0
- data/lib/ruby_app/elements/mobile/dialogs/acknowledgement_dialog.rb +38 -0
- data/lib/ruby_app/elements/mobile/dialogs/confirmation_dialog.html.haml +14 -0
- data/lib/ruby_app/elements/mobile/dialogs/confirmation_dialog.rb +42 -0
- data/lib/ruby_app/elements/mobile/dialogs/exception_dialog.html.haml +12 -0
- data/lib/ruby_app/elements/mobile/dialogs/exception_dialog.rb +43 -0
- data/lib/ruby_app/elements/mobile/dialogs/response_dialog.css.haml +12 -0
- data/lib/ruby_app/elements/mobile/dialogs/response_dialog.rb +42 -0
- data/lib/ruby_app/elements/mobile/document.html.haml +22 -0
- data/lib/ruby_app/elements/mobile/document.js.haml +131 -0
- data/lib/ruby_app/elements/mobile/document.rb +55 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/google_authentication_document.css +0 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/google_authentication_document.js +129 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/my_open_id_authentication_document.css +0 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/my_open_id_authentication_document.js +129 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/yahoo_authentication_document.css +0 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/.cache/yahoo_authentication_document.js +129 -0
- data/lib/ruby_app/elements/{pages/authentication/open_id/base/base_authentication_page.rb → mobile/documents/authentication/open_id/authentication_document.rb} +17 -13
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/ax_authentication_document.rb +55 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/email_authentication_document.rb +39 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/google_authentication_document.rb +34 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/my_open_id_authentication_document.rb +34 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/sreg_authentication_document.rb +55 -0
- data/lib/ruby_app/elements/mobile/documents/authentication/open_id/yahoo_authentication_document.rb +34 -0
- data/lib/ruby_app/elements/mobile/documents/mail_document.html.haml +9 -0
- data/lib/ruby_app/elements/mobile/documents/mail_document.rb +26 -0
- data/lib/ruby_app/elements/mobile/documents/quit_document.html.haml +4 -0
- data/lib/ruby_app/elements/mobile/documents/quit_document.rb +28 -0
- data/lib/ruby_app/elements/mobile/input.html.haml +3 -0
- data/lib/ruby_app/elements/mobile/input.js.haml +9 -0
- data/lib/ruby_app/elements/mobile/input.rb +63 -0
- data/lib/ruby_app/elements/mobile/inputs/duration_input.rb +47 -0
- data/lib/ruby_app/elements/mobile/inputs/email_input.rb +27 -0
- data/lib/ruby_app/elements/{inputs → mobile/inputs}/multiline_input.html.haml +0 -0
- data/lib/ruby_app/elements/mobile/inputs/multiline_input.js.haml +9 -0
- data/lib/ruby_app/elements/mobile/inputs/multiline_input.rb +28 -0
- data/lib/ruby_app/elements/mobile/inputs/toggle_input.html.haml +7 -0
- data/lib/ruby_app/elements/mobile/inputs/toggle_input.js.haml +9 -0
- data/lib/ruby_app/elements/mobile/inputs/toggle_input.rb +42 -0
- data/lib/ruby_app/elements/{link.html.haml → mobile/link.html.haml} +2 -2
- data/lib/ruby_app/elements/{dialogs/yes_no_dialog.rb → mobile/link.rb} +4 -3
- data/lib/ruby_app/elements/mobile/list.html.haml +7 -0
- data/lib/ruby_app/elements/mobile/list.js.haml +9 -0
- data/lib/ruby_app/elements/{navigation/page_link.rb → mobile/list.rb} +21 -16
- data/lib/ruby_app/elements/mobile/lists/select.html.haml +7 -0
- data/lib/ruby_app/elements/mobile/lists/select.rb +43 -0
- data/lib/ruby_app/elements/mobile/navigation/back_button.html.haml +1 -0
- data/lib/ruby_app/elements/mobile/navigation/back_button.rb +26 -0
- data/lib/ruby_app/elements/mobile/navigation/hide_button.rb +33 -0
- data/lib/ruby_app/elements/mobile/navigation/navigation_button.rb +30 -0
- data/lib/ruby_app/elements/mobile/navigation/navigation_link.rb +33 -0
- data/lib/ruby_app/elements/mobile/navigation/navigation_list.rb +30 -0
- data/lib/ruby_app/elements/mobile/navigation/page_button.rb +36 -0
- data/lib/ruby_app/elements/mobile/page.css.haml +8 -0
- data/lib/ruby_app/elements/mobile/page.html.haml +2 -0
- data/lib/ruby_app/elements/mobile/page.js.haml +14 -0
- data/lib/ruby_app/elements/mobile/page.rb +88 -0
- data/lib/ruby_app/elements/mobile/pages/information/document_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/document_page.html.haml +29 -0
- data/lib/ruby_app/elements/mobile/pages/information/document_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/document_page.rb +43 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_list.html.haml +6 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_list.rb +31 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_page.html.haml +10 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/documents_page.rb +43 -0
- data/lib/ruby_app/elements/mobile/pages/information/information_list.css.haml +10 -0
- data/lib/ruby_app/elements/mobile/pages/information/information_list.rb +30 -0
- data/lib/ruby_app/elements/mobile/pages/information/page_page.css.haml +2 -0
- data/lib/ruby_app/elements/mobile/pages/information/page_page.html.haml +22 -0
- data/lib/ruby_app/elements/mobile/pages/information/page_page.js.haml +2 -0
- data/lib/ruby_app/elements/mobile/pages/information/page_page.rb +36 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_list.html.haml +6 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_list.rb +31 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_page.html.haml +10 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/pages_page.rb +43 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_list.html.haml +6 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_list.rb +31 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_page.css.haml +3 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_page.html.haml +10 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_page.js.haml +3 -0
- data/lib/ruby_app/elements/mobile/pages/information/scripts_page.rb +40 -0
- data/lib/ruby_app/elements/mobile/pages/information/session_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/session_page.html.haml +44 -0
- data/lib/ruby_app/elements/mobile/pages/information/session_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/session_page.rb +43 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_list.html.haml +6 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_list.rb +31 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_page.css.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_page.html.haml +10 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_page.js.haml +4 -0
- data/lib/ruby_app/elements/mobile/pages/information/sessions_page.rb +41 -0
- data/lib/ruby_app/elements/mobile/pages/information_page.css.haml +5 -0
- data/lib/ruby_app/elements/mobile/pages/information_page.html.haml +55 -0
- data/lib/ruby_app/elements/mobile/pages/information_page.js.haml +5 -0
- data/lib/ruby_app/elements/mobile/pages/information_page.rb +45 -0
- data/lib/ruby_app/elements/mobile/platforms/ios/document.html.haml +32 -0
- data/lib/ruby_app/elements/mobile/platforms/ios/document.rb +33 -0
- data/lib/ruby_app/exception.rb +13 -0
- data/lib/ruby_app/exceptions.rb +3 -1
- data/lib/ruby_app/exceptions/assert_failed_exception.rb +16 -0
- data/lib/ruby_app/exceptions/element_invalid_exception.rb +16 -0
- data/lib/ruby_app/exceptions/session_invalid_exception.rb +3 -6
- data/lib/ruby_app/log.rb +13 -14
- data/lib/ruby_app/mixins.rb +4 -0
- data/lib/ruby_app/mixins/array_extension.rb +19 -0
- data/lib/ruby_app/mixins/class_extension.rb +19 -0
- data/lib/ruby_app/mixins/render_mixin.rb +16 -10
- data/lib/ruby_app/mixins/string_extension.rb +19 -0
- data/lib/ruby_app/mixins/template_mixin.haml +1 -0
- data/lib/ruby_app/mixins/template_mixin.rb +6 -2
- data/lib/ruby_app/rack/application.rb +1 -1
- data/lib/ruby_app/rack/duration.rb +1 -1
- data/lib/ruby_app/rack/memory.rb +1 -1
- data/lib/ruby_app/rack/request.rb +5 -2
- data/lib/ruby_app/rack/route.rb +40 -16
- data/lib/ruby_app/rack/session.rb +1 -1
- data/lib/ruby_app/request.rb +0 -4
- data/lib/ruby_app/resources/{themes/mobile/base/base_page/icon.png → elements/mobile/platforms/ios/apple-touch-icon.png} +0 -0
- data/lib/ruby_app/resources/{themes/mobile/base/base_page/icon.psd → elements/mobile/platforms/ios/apple-touch-icon.psd} +0 -0
- data/lib/ruby_app/resources/{themes/mobile/base/base_page/start.png → elements/mobile/platforms/ios/apple-touch-startup-image.png} +0 -0
- data/lib/ruby_app/resources/{themes/mobile/base/base_page/start.psd → elements/mobile/platforms/ios/apple-touch-startup-image.psd} +0 -0
- data/lib/ruby_app/resources/{themes/mobile/base/base_page → elements/mobile/platforms/ios}/manifest +0 -0
- data/lib/ruby_app/response.rb +11 -6
- data/lib/ruby_app/scripts/all_continuous.rb +2 -0
- data/lib/ruby_app/scripts/all_once.rb +6 -0
- data/lib/ruby_app/scripts/common/features.rb +2 -0
- data/lib/ruby_app/scripts/common/reset.rb +4 -0
- data/lib/ruby_app/scripts/default.rb +3 -0
- data/lib/ruby_app/scripts/elements/buttons.rb +14 -0
- data/lib/ruby_app/scripts/elements/dialogs.rb +77 -0
- data/lib/ruby_app/scripts/elements/inputs.rb +89 -0
- data/lib/ruby_app/scripts/elements/lists.rb +41 -0
- data/lib/ruby_app/scripts/elements/trigger.rb +18 -0
- data/lib/ruby_app/session.rb +101 -42
- data/lib/ruby_app/templates/application/configuration.yml +23 -0
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/documents/default_document.css.haml +2 -0
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/documents/default_document.js.haml +2 -0
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/documents/default_document.rb +30 -0
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/pages/default_page.css.haml +2 -8
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/pages/default_page.html.haml +7 -2
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/pages/default_page.js.haml +3 -0
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/elements/pages/default_page.rb +9 -1
- data/lib/ruby_app/templates/application/lib/_APPLICATION_DOWNCODE_/session.rb +2 -2
- data/lib/ruby_app/templates/application/scripts/default.rb +1 -0
- data/lib/ruby_app/templates/application/translations/en.yml +1 -0
- data/lib/ruby_app/translations/en.yml +22 -208
- data/lib/ruby_app/version.rb +1 -1
- data/rakefile +11 -26
- data/ruby_app.gemspec +3 -8
- metadata +187 -306
- data/features/default.feature +0 -6
- data/features/elements/button.feature +0 -9
- data/features/elements/dialog.feature +0 -63
- data/features/elements/input.feature +0 -60
- data/features/elements/link.feature +0 -9
- data/features/elements/list.feature +0 -19
- data/features/elements/markdown.feature +0 -9
- data/features/elements/page.feature +0 -23
- data/features/step_definitions/default_macros.rb +0 -13
- data/features/step_definitions/default_steps.rb +0 -54
- data/features/support/env.rb +0 -18
- data/lib/ruby_app/elements/base/base_dialog.css.haml +0 -9
- data/lib/ruby_app/elements/base/base_dialog.html.haml +0 -4
- data/lib/ruby_app/elements/base/base_dialog.rb +0 -64
- data/lib/ruby_app/elements/base/base_mail.html.haml +0 -15
- data/lib/ruby_app/elements/base/base_mail.rb +0 -36
- data/lib/ruby_app/elements/base/base_page.css.haml +0 -31
- data/lib/ruby_app/elements/base/base_page.html.haml +0 -44
- data/lib/ruby_app/elements/base/base_page.js.haml +0 -188
- data/lib/ruby_app/elements/base/base_page.rb +0 -84
- data/lib/ruby_app/elements/button.html.haml +0 -4
- data/lib/ruby_app/elements/button.rb +0 -18
- data/lib/ruby_app/elements/calendars/base/base_month.css.haml +0 -8
- data/lib/ruby_app/elements/calendars/base/base_month.html.haml +0 -42
- data/lib/ruby_app/elements/calendars/base/base_month.js.haml +0 -18
- data/lib/ruby_app/elements/calendars/base/base_month.rb +0 -102
- data/lib/ruby_app/elements/calendars/month.rb +0 -27
- data/lib/ruby_app/elements/click.js.haml +0 -10
- data/lib/ruby_app/elements/click.rb +0 -44
- data/lib/ruby_app/elements/dialog.rb +0 -23
- data/lib/ruby_app/elements/dialogs/acknowledgement_dialog.html.haml +0 -8
- data/lib/ruby_app/elements/dialogs/acknowledgement_dialog.rb +0 -26
- data/lib/ruby_app/elements/dialogs/base/base_close_dialog.css.haml +0 -11
- data/lib/ruby_app/elements/dialogs/base/base_close_dialog.html.haml +0 -6
- data/lib/ruby_app/elements/dialogs/base/base_close_dialog.js.haml +0 -2
- data/lib/ruby_app/elements/dialogs/base/base_close_dialog.rb +0 -33
- data/lib/ruby_app/elements/dialogs/base/base_ok_dialog.css.haml +0 -11
- data/lib/ruby_app/elements/dialogs/base/base_ok_dialog.html.haml +0 -6
- data/lib/ruby_app/elements/dialogs/base/base_ok_dialog.js.haml +0 -2
- data/lib/ruby_app/elements/dialogs/base/base_ok_dialog.rb +0 -33
- data/lib/ruby_app/elements/dialogs/base/base_yes_no_dialog.css.haml +0 -15
- data/lib/ruby_app/elements/dialogs/base/base_yes_no_dialog.html.haml +0 -8
- data/lib/ruby_app/elements/dialogs/base/base_yes_no_dialog.js.haml +0 -2
- data/lib/ruby_app/elements/dialogs/base/base_yes_no_dialog.rb +0 -40
- data/lib/ruby_app/elements/dialogs/blank_dialog.html.haml +0 -9
- data/lib/ruby_app/elements/dialogs/blank_dialog.rb +0 -22
- data/lib/ruby_app/elements/dialogs/calendars/month_dialog.css.haml +0 -19
- data/lib/ruby_app/elements/dialogs/calendars/month_dialog.html.haml +0 -18
- data/lib/ruby_app/elements/dialogs/calendars/month_dialog.js.haml +0 -3
- data/lib/ruby_app/elements/dialogs/calendars/month_dialog.rb +0 -50
- data/lib/ruby_app/elements/dialogs/close_dialog.rb +0 -22
- data/lib/ruby_app/elements/dialogs/confirmation_dialog.html.haml +0 -8
- data/lib/ruby_app/elements/dialogs/confirmation_dialog.rb +0 -26
- data/lib/ruby_app/elements/dialogs/exception_dialog.html.haml +0 -8
- data/lib/ruby_app/elements/dialogs/exception_dialog.rb +0 -33
- data/lib/ruby_app/elements/dialogs/message_dialog.html.haml +0 -8
- data/lib/ruby_app/elements/dialogs/message_dialog.rb +0 -26
- data/lib/ruby_app/elements/dialogs/ok_dialog.rb +0 -22
- data/lib/ruby_app/elements/exception_element.html.haml +0 -7
- data/lib/ruby_app/elements/exception_element.rb +0 -19
- data/lib/ruby_app/elements/input.html.haml +0 -3
- data/lib/ruby_app/elements/input.js.haml +0 -10
- data/lib/ruby_app/elements/input.rb +0 -56
- data/lib/ruby_app/elements/inputs/duration_input.rb +0 -43
- data/lib/ruby_app/elements/inputs/email_input.html.haml +0 -3
- data/lib/ruby_app/elements/inputs/email_input.js.haml +0 -10
- data/lib/ruby_app/elements/inputs/email_input.rb +0 -24
- data/lib/ruby_app/elements/inputs/multiline_input.js.haml +0 -10
- data/lib/ruby_app/elements/inputs/multiline_input.rb +0 -24
- data/lib/ruby_app/elements/inputs/toggle_input.html.haml +0 -3
- data/lib/ruby_app/elements/inputs/toggle_input.js.haml +0 -10
- data/lib/ruby_app/elements/inputs/toggle_input.rb +0 -31
- data/lib/ruby_app/elements/link.rb +0 -19
- data/lib/ruby_app/elements/list.html.haml +0 -9
- data/lib/ruby_app/elements/list.js.haml +0 -10
- data/lib/ruby_app/elements/list.rb +0 -55
- data/lib/ruby_app/elements/lists/select.html.haml +0 -14
- data/lib/ruby_app/elements/lists/select.js.haml +0 -10
- data/lib/ruby_app/elements/lists/select.rb +0 -38
- data/lib/ruby_app/elements/mail.rb +0 -18
- data/lib/ruby_app/elements/markdown.html.haml +0 -5
- data/lib/ruby_app/elements/markdown.js.haml +0 -10
- data/lib/ruby_app/elements/markdown.rb +0 -51
- data/lib/ruby_app/elements/navigation/back_button.html.haml +0 -2
- data/lib/ruby_app/elements/navigation/back_button.rb +0 -29
- data/lib/ruby_app/elements/navigation/base/base_breadcrumbs.html.haml +0 -17
- data/lib/ruby_app/elements/navigation/base/base_breadcrumbs.js.haml +0 -10
- data/lib/ruby_app/elements/navigation/base/base_breadcrumbs.rb +0 -59
- data/lib/ruby_app/elements/navigation/breadcrumbs.rb +0 -22
- data/lib/ruby_app/elements/navigation/page_link.html.haml +0 -9
- data/lib/ruby_app/elements/navigation/page_link.js.haml +0 -10
- data/lib/ruby_app/elements/page.rb +0 -18
- data/lib/ruby_app/elements/pages/.cache/default_page.css +0 -37
- data/lib/ruby_app/elements/pages/.cache/default_page.js +0 -205
- data/lib/ruby_app/elements/pages/authentication/open_id/authentication_page.rb +0 -30
- data/lib/ruby_app/elements/pages/authentication/open_id/ax_authentication_page.rb +0 -51
- data/lib/ruby_app/elements/pages/authentication/open_id/base/base_authentication_page.html.haml +0 -3
- data/lib/ruby_app/elements/pages/authentication/open_id/email_authentication_page.rb +0 -35
- data/lib/ruby_app/elements/pages/authentication/open_id/google_authentication_page.rb +0 -30
- data/lib/ruby_app/elements/pages/authentication/open_id/my_open_id_authentication_page.rb +0 -30
- data/lib/ruby_app/elements/pages/authentication/open_id/sreg_authentication_page.rb +0 -51
- data/lib/ruby_app/elements/pages/authentication/open_id/yahoo_authentication_page.rb +0 -30
- data/lib/ruby_app/elements/pages/base/base_blank_page.css.haml +0 -18
- data/lib/ruby_app/elements/pages/base/base_blank_page.html.haml +0 -11
- data/lib/ruby_app/elements/pages/base/base_blank_page.js.haml +0 -3
- data/lib/ruby_app/elements/pages/base/base_blank_page.rb +0 -35
- data/lib/ruby_app/elements/pages/blank_page.rb +0 -22
- data/lib/ruby_app/elements/pages/default_page.css.haml +0 -2
- data/lib/ruby_app/elements/pages/default_page.html.haml +0 -6
- data/lib/ruby_app/elements/pages/default_page.js.haml +0 -2
- data/lib/ruby_app/elements/pages/default_page.rb +0 -39
- data/lib/ruby_app/elements/pages/quit_page.html.haml +0 -7
- data/lib/ruby_app/elements/pages/quit_page.rb +0 -23
- data/lib/ruby_app/elements/pages/settings_page.css.haml +0 -2
- data/lib/ruby_app/elements/pages/settings_page.html.haml +0 -5
- data/lib/ruby_app/elements/pages/settings_page.js.haml +0 -2
- data/lib/ruby_app/elements/pages/settings_page.rb +0 -38
- data/lib/ruby_app/elements/pages/test_pages.rb +0 -9
- data/lib/ruby_app/elements/pages/test_pages/.cache/button_test_page.css +0 -37
- data/lib/ruby_app/elements/pages/test_pages/.cache/button_test_page.js +0 -212
- data/lib/ruby_app/elements/pages/test_pages/.cache/default_test_page.css +0 -47
- data/lib/ruby_app/elements/pages/test_pages/.cache/default_test_page.js +0 -212
- data/lib/ruby_app/elements/pages/test_pages/.cache/dialog_test_page.css +0 -75
- data/lib/ruby_app/elements/pages/test_pages/.cache/dialog_test_page.js +0 -230
- data/lib/ruby_app/elements/pages/test_pages/.cache/input_test_page.css +0 -47
- data/lib/ruby_app/elements/pages/test_pages/.cache/input_test_page.js +0 -241
- data/lib/ruby_app/elements/pages/test_pages/.cache/link_test_page.css +0 -37
- data/lib/ruby_app/elements/pages/test_pages/.cache/link_test_page.js +0 -212
- data/lib/ruby_app/elements/pages/test_pages/.cache/linked_test_page.css +0 -37
- data/lib/ruby_app/elements/pages/test_pages/.cache/linked_test_page.js +0 -205
- data/lib/ruby_app/elements/pages/test_pages/.cache/list_test_page.css +0 -47
- data/lib/ruby_app/elements/pages/test_pages/.cache/list_test_page.js +0 -226
- data/lib/ruby_app/elements/pages/test_pages/.cache/markdown_test_page.css +0 -37
- data/lib/ruby_app/elements/pages/test_pages/.cache/markdown_test_page.js +0 -205
- data/lib/ruby_app/elements/pages/test_pages/.cache/test_page.css +0 -47
- data/lib/ruby_app/elements/pages/test_pages/.cache/test_page.js +0 -220
- data/lib/ruby_app/elements/pages/test_pages/button_test_page.css.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/button_test_page.html.haml +0 -7
- data/lib/ruby_app/elements/pages/test_pages/button_test_page.js.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/button_test_page.rb +0 -37
- data/lib/ruby_app/elements/pages/test_pages/default_test_page.css.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/default_test_page.html.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/default_test_page.js.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/default_test_page.rb +0 -41
- data/lib/ruby_app/elements/pages/test_pages/dialog_test_page.css.haml +0 -7
- data/lib/ruby_app/elements/pages/test_pages/dialog_test_page.html.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/dialog_test_page.js.haml +0 -7
- data/lib/ruby_app/elements/pages/test_pages/dialog_test_page.rb +0 -62
- data/lib/ruby_app/elements/pages/test_pages/input_test_page.css.haml +0 -8
- data/lib/ruby_app/elements/pages/test_pages/input_test_page.html.haml +0 -24
- data/lib/ruby_app/elements/pages/test_pages/input_test_page.js.haml +0 -8
- data/lib/ruby_app/elements/pages/test_pages/input_test_page.rb +0 -60
- data/lib/ruby_app/elements/pages/test_pages/link_test_page.css.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/link_test_page.html.haml +0 -7
- data/lib/ruby_app/elements/pages/test_pages/link_test_page.js.haml +0 -3
- data/lib/ruby_app/elements/pages/test_pages/link_test_page.rb +0 -37
- data/lib/ruby_app/elements/pages/test_pages/linked_test_page.css.haml +0 -2
- data/lib/ruby_app/elements/pages/test_pages/linked_test_page.html.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/linked_test_page.js.haml +0 -2
- data/lib/ruby_app/elements/pages/test_pages/linked_test_page.rb +0 -29
- data/lib/ruby_app/elements/pages/test_pages/list_test_page.css.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/list_test_page.html.haml +0 -7
- data/lib/ruby_app/elements/pages/test_pages/list_test_page.js.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/list_test_page.rb +0 -52
- data/lib/ruby_app/elements/pages/test_pages/markdown_test_page.css.haml +0 -2
- data/lib/ruby_app/elements/pages/test_pages/markdown_test_page.html.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/markdown_test_page.js.haml +0 -2
- data/lib/ruby_app/elements/pages/test_pages/markdown_test_page.rb +0 -37
- data/lib/ruby_app/elements/pages/test_pages/test_page.css.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/test_page.html.haml +0 -17
- data/lib/ruby_app/elements/pages/test_pages/test_page.js.haml +0 -5
- data/lib/ruby_app/elements/pages/test_pages/test_page.rb +0 -46
- data/lib/ruby_app/exceptions/base/base_exception.rb +0 -21
- data/lib/ruby_app/resources/elements/base/base_page.gif +0 -0
- data/lib/ruby_app/resources/scripts/jquery-1.7.1.min.js +0 -4
- data/lib/ruby_app/resources/themes/mobile/inputs/toggle.png +0 -0
- data/lib/ruby_app/resources/themes/mobile/lists/select.png +0 -0
- data/lib/ruby_app/resources/themes/mobile/lists/select.psd +0 -0
- data/lib/ruby_app/resources/themes/mobile/page.gif +0 -0
- data/lib/ruby_app/templates/application/spec/application_spec.rb +0 -17
- data/lib/ruby_app/templates/application/spec/request_spec.rb +0 -18
- data/lib/ruby_app/templates/application/spec/spec_helper.rb +0 -1
- data/lib/ruby_app/templates/application/spec/support/shared.rb +0 -43
- data/lib/ruby_app/themes/mobile.rb +0 -27
- data/lib/ruby_app/themes/mobile/base/base_page.html.haml +0 -52
- data/lib/ruby_app/themes/mobile/calendars/month.css.haml +0 -21
- data/lib/ruby_app/themes/mobile/colors.sass +0 -31
- data/lib/ruby_app/themes/mobile/dialog.css.haml +0 -17
- data/lib/ruby_app/themes/mobile/dialogs/blank_dialog.css.haml +0 -12
- data/lib/ruby_app/themes/mobile/dialogs/close_dialog.css.haml +0 -12
- data/lib/ruby_app/themes/mobile/dialogs/yes_no_dialog.css.haml +0 -14
- data/lib/ruby_app/themes/mobile/input.css.haml +0 -10
- data/lib/ruby_app/themes/mobile/inputs/toggle_input.css.haml +0 -16
- data/lib/ruby_app/themes/mobile/list.css.haml +0 -25
- data/lib/ruby_app/themes/mobile/lists/select.css.haml +0 -27
- data/lib/ruby_app/themes/mobile/mail.css.haml +0 -22
- data/lib/ruby_app/themes/mobile/markdown.css.haml +0 -11
- data/lib/ruby_app/themes/mobile/navigation/base/base_breadcrumbs.html.haml +0 -7
- data/lib/ruby_app/themes/mobile/page.css.haml +0 -30
- data/lib/ruby_app/themes/mobile/pages/authentication/open_id/authentication_page.css.haml +0 -13
- data/lib/ruby_app/themes/mobile/pages/base/base_blank_page.css.haml +0 -18
- data/lib/ruby_app/themes/mobile/pages/base/base_blank_page.html.haml +0 -13
- data/lib/ruby_app/themes/mobile/pages/blank_page.css.haml +0 -19
- data/spec/application_spec.rb +0 -17
- data/spec/elements/base_element.html.haml +0 -5
- data/spec/elements/container_element.html.haml +0 -6
- data/spec/elements/derived_element.html.haml +0 -5
- data/spec/elements/element_spec.rb +0 -101
- data/spec/request_spec.rb +0 -18
- data/spec/spec_helper.rb +0 -8
- data/spec/support/shared.rb +0 -37
data/.gitignore
CHANGED
@@ -4,9 +4,9 @@
|
|
4
4
|
.sass-cache
|
5
5
|
process
|
6
6
|
sandbox
|
7
|
-
lib/ruby_app/elements/
|
8
|
-
lib/ruby_app/elements/
|
9
|
-
lib/ruby_app/elements/
|
7
|
+
lib/ruby_app/elements/mobile/documents/authentication/open_id/associations
|
8
|
+
lib/ruby_app/elements/mobile/documents/authentication/open_id/nonces
|
9
|
+
lib/ruby_app/elements/mobile/documents/authentication/open_id/temp
|
10
10
|
*.gem
|
11
11
|
*.log
|
12
12
|
*.pid
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
RubyApp (0.2.
|
4
|
+
RubyApp (0.2.8)
|
5
5
|
BlueCloth
|
6
6
|
chronic
|
7
7
|
chronic_duration
|
@@ -16,73 +16,32 @@ PATH
|
|
16
16
|
ruby-openid
|
17
17
|
sass
|
18
18
|
term-ansicolor
|
19
|
+
terminal-table
|
19
20
|
yajl-ruby
|
20
21
|
|
21
22
|
GEM
|
22
23
|
remote: http://rubygems.org/
|
23
24
|
specs:
|
24
25
|
BlueCloth (1.0.1)
|
25
|
-
addressable (2.2.7)
|
26
|
-
builder (3.0.0)
|
27
|
-
capybara (1.1.2)
|
28
|
-
mime-types (>= 1.16)
|
29
|
-
nokogiri (>= 1.3.3)
|
30
|
-
rack (>= 1.0.0)
|
31
|
-
rack-test (>= 0.5.4)
|
32
|
-
selenium-webdriver (~> 2.0)
|
33
|
-
xpath (~> 0.1.4)
|
34
|
-
childprocess (0.3.1)
|
35
|
-
ffi (~> 1.0.6)
|
36
26
|
chronic (0.6.7)
|
37
27
|
chronic_duration (0.9.6)
|
38
28
|
numerizer (~> 0.1.1)
|
39
|
-
cucumber (1.1.9)
|
40
|
-
builder (>= 2.1.2)
|
41
|
-
diff-lcs (>= 1.1.2)
|
42
|
-
gherkin (~> 2.9.0)
|
43
|
-
json (>= 1.4.6)
|
44
|
-
term-ansicolor (>= 1.0.6)
|
45
|
-
diff-lcs (1.1.3)
|
46
29
|
facets (2.9.3)
|
47
|
-
ffi (1.0.11)
|
48
30
|
fileutils (0.7)
|
49
31
|
rmagick (>= 2.13.1)
|
50
|
-
gherkin (2.9.1)
|
51
|
-
json (>= 1.4.6)
|
52
32
|
haml (3.1.4)
|
53
|
-
json (1.6.
|
54
|
-
launchy (2.1.0)
|
55
|
-
addressable (~> 2.2.6)
|
33
|
+
json (1.6.6)
|
56
34
|
mime-types (1.18)
|
57
|
-
multi_json (1.1.0)
|
58
|
-
nokogiri (1.5.2)
|
59
35
|
numerizer (0.1.1)
|
60
36
|
r18n-core (0.4.14)
|
61
37
|
rack (1.4.1)
|
62
|
-
rack-test (0.6.1)
|
63
|
-
rack (>= 1.0)
|
64
38
|
rake (0.9.2.2)
|
65
39
|
rmagick (2.13.1)
|
66
|
-
rspec (2.9.0)
|
67
|
-
rspec-core (~> 2.9.0)
|
68
|
-
rspec-expectations (~> 2.9.0)
|
69
|
-
rspec-mocks (~> 2.9.0)
|
70
|
-
rspec-core (2.9.0)
|
71
|
-
rspec-expectations (2.9.0)
|
72
|
-
diff-lcs (~> 1.1.3)
|
73
|
-
rspec-mocks (2.9.0)
|
74
40
|
ruby-event (1.0.0)
|
75
41
|
ruby-openid (2.1.8)
|
76
|
-
rubyzip (0.9.6.1)
|
77
42
|
sass (3.1.15)
|
78
|
-
selenium-webdriver (2.20.0)
|
79
|
-
childprocess (>= 0.2.5)
|
80
|
-
ffi (~> 1.0)
|
81
|
-
multi_json (~> 1.0)
|
82
|
-
rubyzip
|
83
43
|
term-ansicolor (1.0.7)
|
84
|
-
|
85
|
-
nokogiri (~> 1.3)
|
44
|
+
terminal-table (1.4.5)
|
86
45
|
yajl-ruby (1.1.0)
|
87
46
|
|
88
47
|
PLATFORMS
|
@@ -90,9 +49,4 @@ PLATFORMS
|
|
90
49
|
|
91
50
|
DEPENDENCIES
|
92
51
|
RubyApp!
|
93
|
-
capybara
|
94
|
-
cucumber
|
95
|
-
launchy
|
96
52
|
rake
|
97
|
-
rspec
|
98
|
-
rspec-mocks
|
data/lib/ruby_app/application.rb
CHANGED
@@ -2,6 +2,10 @@ default:
|
|
2
2
|
ruby_app:
|
3
3
|
application:
|
4
4
|
_class: "RubyApp::Application"
|
5
|
+
format:
|
6
|
+
date:
|
7
|
+
long: "%b %d %H:%M %Z"
|
8
|
+
short: "%a %b %-d"
|
5
9
|
language:
|
6
10
|
default: "en"
|
7
11
|
paths:
|
@@ -17,19 +21,24 @@ default:
|
|
17
21
|
write?: true
|
18
22
|
session:
|
19
23
|
_class: "RubyApp::Session"
|
20
|
-
expires:
|
24
|
+
expires: 1200
|
21
25
|
interval: 15
|
26
|
+
length: 4
|
27
|
+
scripts:
|
28
|
+
enabled: true
|
29
|
+
path: "#{RubyApp::ROOT}/scripts"
|
22
30
|
elements:
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
mobile:
|
32
|
+
documents:
|
33
|
+
authentication:
|
34
|
+
open_id:
|
35
|
+
google_authentication_document:
|
36
|
+
attributes:
|
37
|
+
email: "http://schema.openid.net/contact/email"
|
38
|
+
identifier: "https://www.google.com/accounts/o8/id"
|
39
|
+
my_open_id_authentication_document:
|
40
|
+
identifier: "http://myopenid.com"
|
41
|
+
yahoo_authentication_document:
|
42
|
+
attributes:
|
43
|
+
email: "http://axschema.org/contact/email"
|
44
|
+
identifier: "https://www.yahoo.com"
|
data/lib/ruby_app/element.rb
CHANGED
@@ -3,7 +3,6 @@ require 'bundler/setup'
|
|
3
3
|
|
4
4
|
require 'haml'
|
5
5
|
require 'json'
|
6
|
-
require 'mime/types'
|
7
6
|
require 'ruby-event'
|
8
7
|
|
9
8
|
module RubyApp
|
@@ -24,16 +23,23 @@ module RubyApp
|
|
24
23
|
class Event
|
25
24
|
extend RubyApp::Mixins::TranslateMixin
|
26
25
|
|
27
|
-
attr_reader :
|
26
|
+
attr_reader :session, :now, :source
|
28
27
|
|
29
28
|
def initialize(data = nil)
|
30
29
|
if data
|
31
|
-
@session_id = data['session_id']
|
32
30
|
@now = Time.parse(data['now'])
|
33
|
-
|
31
|
+
|
32
|
+
session = RubyApp::Session.get_session(data['session'])
|
33
|
+
raise RubyApp::Exceptions::SessionInvalidException.new(data['session']) unless session
|
34
|
+
@session = session
|
35
|
+
|
36
|
+
source = RubyApp::Element.get_element(data['source'])
|
37
|
+
raise RubyApp::Exceptions::ElementInvalidException.new(data['source']) unless source
|
38
|
+
@source = source
|
39
|
+
|
34
40
|
else
|
35
|
-
@session_id = nil
|
36
41
|
@now = Time.now
|
42
|
+
@session = nil
|
37
43
|
@source = nil
|
38
44
|
end
|
39
45
|
@statements = []
|
@@ -44,60 +50,113 @@ module RubyApp
|
|
44
50
|
end
|
45
51
|
|
46
52
|
def process!
|
47
|
-
|
48
|
-
source.send(:on_event, self)
|
53
|
+
self.source.send(:on_event, self)
|
49
54
|
end
|
50
55
|
|
51
|
-
def
|
52
|
-
execute("RubyApp.
|
56
|
+
def refresh_browser
|
57
|
+
self.execute("RubyApp.refreshBrowser();")
|
53
58
|
end
|
54
59
|
|
55
|
-
def
|
56
|
-
execute("RubyApp.
|
60
|
+
def confirm_refresh_browser(message)
|
61
|
+
self.execute("RubyApp.confirmRefreshBrowser(#{message.to_json});")
|
57
62
|
end
|
58
63
|
|
59
|
-
def
|
60
|
-
|
64
|
+
def show_page(page, options = {})
|
65
|
+
options.merge!(:changeHash => false)
|
66
|
+
self.execute("RubyApp.showPage(#{page.element_id.to_json}, #{options.to_json});")
|
61
67
|
end
|
62
68
|
|
63
|
-
def
|
64
|
-
execute("RubyApp.
|
69
|
+
def remove_page(page)
|
70
|
+
self.execute("RubyApp.removePage(#{page.element_id.to_json});")
|
65
71
|
end
|
66
72
|
|
67
|
-
def
|
68
|
-
execute("RubyApp.
|
73
|
+
def update_element(element)
|
74
|
+
self.execute("RubyApp.updateElement(#{element.element_id.to_json});")
|
69
75
|
end
|
70
76
|
|
71
|
-
def
|
72
|
-
execute("RubyApp.
|
77
|
+
def create_trigger(element, interval)
|
78
|
+
self.execute("RubyApp.createTrigger(#{element.element_id.to_json}, #{(interval * 1000).to_json});")
|
73
79
|
end
|
74
80
|
|
75
|
-
def
|
76
|
-
execute("RubyApp.
|
81
|
+
def destroy_trigger(element)
|
82
|
+
self.execute("RubyApp.destroyTrigger(#{element.element_id.to_json});")
|
83
|
+
end
|
84
|
+
|
85
|
+
def quit!
|
86
|
+
self.go('/quit')
|
87
|
+
end
|
88
|
+
|
89
|
+
def go(url)
|
90
|
+
self.execute("RubyApp.go(#{url.to_json});")
|
77
91
|
end
|
78
92
|
|
79
93
|
def add_class(selector, _class)
|
80
|
-
execute("RubyApp.addClass(#{selector.to_json}, #{_class.to_json});")
|
94
|
+
self.execute("RubyApp.addClass(#{selector.to_json}, #{_class.to_json});")
|
81
95
|
end
|
82
96
|
|
83
97
|
def remove_class(selector, _class)
|
84
|
-
execute("RubyApp.removeClass(#{selector.to_json}, #{_class.to_json});")
|
98
|
+
self.execute("RubyApp.removeClass(#{selector.to_json}, #{_class.to_json});")
|
85
99
|
end
|
86
100
|
|
87
101
|
def update_text(selector, value)
|
88
|
-
execute("RubyApp.updateText(#{selector.to_json}, #{value.to_json});")
|
102
|
+
self.execute("RubyApp.updateText(#{selector.to_json}, #{value.to_json});")
|
89
103
|
end
|
90
104
|
|
91
105
|
def update_value(selector, value)
|
92
|
-
execute("RubyApp.updateValue(#{selector.to_json}, #{value.to_json});")
|
106
|
+
self.execute("RubyApp.updateValue(#{selector.to_json}, #{value.to_json});")
|
93
107
|
end
|
94
108
|
|
95
|
-
def
|
96
|
-
|
109
|
+
def update_input(text, value)
|
110
|
+
self.update_value_for("label:contains('#{text}')", value)
|
111
|
+
end
|
112
|
+
|
113
|
+
def update_value_for(selector, value)
|
114
|
+
self.execute("RubyApp.updateValueFor(#{selector.to_json}, #{value.to_json});")
|
97
115
|
end
|
98
116
|
|
99
117
|
def set_cookie(name, value, expires = Time.now + 365*24*60*60)
|
100
|
-
execute("RubyApp.setCookie(#{name.to_json}, #{value.to_json}, new Date(#{expires.year}, #{expires.month - 1}, #{expires.day}, #{expires.hour}, #{expires.min}, #{expires.sec}));")
|
118
|
+
self.execute("RubyApp.setCookie(#{name.to_json}, #{value.to_json}, new Date(#{expires.year}, #{expires.month - 1}, #{expires.day}, #{expires.hour}, #{expires.min}, #{expires.sec}));")
|
119
|
+
end
|
120
|
+
|
121
|
+
def tap_link(text)
|
122
|
+
self.tap_selector("a:contains('#{text}')")
|
123
|
+
end
|
124
|
+
|
125
|
+
def tap_selector(selector)
|
126
|
+
_selector = ".ui-page-active #{selector}"
|
127
|
+
self.execute("RubyApp.tap(#{_selector.to_json});")
|
128
|
+
end
|
129
|
+
|
130
|
+
def assert_exists_text(text)
|
131
|
+
self.assert_exists_selector("*:contains('#{text}')")
|
132
|
+
end
|
133
|
+
|
134
|
+
def assert_exists_link(text)
|
135
|
+
self.assert_exists_selector("a:contains('#{text}')")
|
136
|
+
end
|
137
|
+
|
138
|
+
def assert_exists_selector(selector)
|
139
|
+
_selector = ".ui-page-active #{selector}"
|
140
|
+
self.execute("RubyApp.assertExists(#{_selector.to_json});")
|
141
|
+
end
|
142
|
+
|
143
|
+
def assert_exists_input(text, value = nil)
|
144
|
+
self.assert_exists_selector_for("label:contains('#{text}')") unless value
|
145
|
+
self.assert_exists_selector_value_for("label:contains('#{text}')", value) if value
|
146
|
+
end
|
147
|
+
|
148
|
+
def assert_exists_selector_for(selector)
|
149
|
+
_selector = ".ui-page-active #{selector}"
|
150
|
+
self.execute("RubyApp.assertExistsFor(#{_selector.to_json});")
|
151
|
+
end
|
152
|
+
|
153
|
+
def assert_exists_selector_value_for(selector, value)
|
154
|
+
_selector = ".ui-page-active #{selector}"
|
155
|
+
self.execute("RubyApp.assertExistsValueFor(#{_selector.to_json}, #{value.to_json});")
|
156
|
+
end
|
157
|
+
|
158
|
+
def log(message)
|
159
|
+
self.execute("RubyApp.log(#{message.to_json});")
|
101
160
|
end
|
102
161
|
|
103
162
|
def execute(statement)
|
@@ -114,7 +173,28 @@ module RubyApp
|
|
114
173
|
end
|
115
174
|
|
116
175
|
def self.from_hash(data)
|
117
|
-
eval(data['_class']).new(data)
|
176
|
+
Kernel.eval(data['_class']).new(data)
|
177
|
+
end
|
178
|
+
|
179
|
+
end
|
180
|
+
|
181
|
+
class TriggeredEvent < RubyApp::Element::Event
|
182
|
+
|
183
|
+
def initialize(data)
|
184
|
+
super(data)
|
185
|
+
end
|
186
|
+
|
187
|
+
end
|
188
|
+
|
189
|
+
class AssertedEvent < RubyApp::Element::Event
|
190
|
+
|
191
|
+
attr_reader :name
|
192
|
+
attr_reader :value
|
193
|
+
|
194
|
+
def initialize(data)
|
195
|
+
super(data)
|
196
|
+
@name = data['name']
|
197
|
+
@value = data['value'].to_b
|
118
198
|
end
|
119
199
|
|
120
200
|
end
|
@@ -123,7 +203,7 @@ module RubyApp
|
|
123
203
|
|
124
204
|
def initialize(exception)
|
125
205
|
super()
|
126
|
-
self.
|
206
|
+
self.confirm_refresh_browser(RubyApp::Element::ExceptionEvent.translate.message(exception.message))
|
127
207
|
end
|
128
208
|
|
129
209
|
end
|
@@ -133,30 +213,39 @@ module RubyApp
|
|
133
213
|
attr_reader :attributes
|
134
214
|
|
135
215
|
event :evented
|
216
|
+
event :triggered
|
217
|
+
event :asserted
|
136
218
|
|
137
219
|
def initialize
|
138
220
|
@attributes = {:id => self.element_id}
|
139
221
|
end
|
140
222
|
|
141
223
|
def element_id
|
142
|
-
"id_#{object_id}"
|
224
|
+
return "id_#{object_id}"
|
143
225
|
end
|
144
226
|
|
145
227
|
def self.get_element(element_id)
|
146
228
|
element_id =~ /(-?\d+)/
|
147
|
-
ObjectSpace._id2ref($1.to_i)
|
148
|
-
end
|
149
|
-
|
150
|
-
def self.get_content_type(format)
|
151
|
-
( mime_type = MIME::Types.type_for(format)[0] ) ? mime_type.content_type : 'text/plain'
|
229
|
+
return ObjectSpace._id2ref($1.to_i)
|
152
230
|
end
|
153
231
|
|
154
232
|
protected
|
155
233
|
|
156
234
|
def on_event(event)
|
235
|
+
on_triggered(event) if event.is_a?(RubyApp::Element::TriggeredEvent)
|
236
|
+
on_asserted(event) if event.is_a?(RubyApp::Element::AssertedEvent)
|
157
237
|
evented(event)
|
158
238
|
end
|
159
239
|
|
240
|
+
def on_triggered(event)
|
241
|
+
triggered(event)
|
242
|
+
end
|
243
|
+
|
244
|
+
def on_asserted(event)
|
245
|
+
raise RubyApp::Exceptions::AssertFailedException.new(event.name) unless event.value
|
246
|
+
asserted(event)
|
247
|
+
end
|
248
|
+
|
160
249
|
end
|
161
250
|
|
162
251
|
end
|
data/lib/ruby_app/elements.rb
CHANGED
@@ -1,50 +1,29 @@
|
|
1
1
|
require 'ruby_app/element'
|
2
|
-
require 'ruby_app/elements/
|
3
|
-
require 'ruby_app/elements/
|
4
|
-
require 'ruby_app/elements/
|
5
|
-
require 'ruby_app/elements/
|
6
|
-
require 'ruby_app/elements/
|
7
|
-
require 'ruby_app/elements/
|
8
|
-
require 'ruby_app/elements/
|
9
|
-
require 'ruby_app/elements/
|
10
|
-
require 'ruby_app/elements/
|
11
|
-
require 'ruby_app/elements/
|
12
|
-
require 'ruby_app/elements/
|
13
|
-
require 'ruby_app/elements/
|
14
|
-
require 'ruby_app/elements/
|
15
|
-
require 'ruby_app/elements/
|
16
|
-
require 'ruby_app/elements/
|
17
|
-
require 'ruby_app/elements/
|
18
|
-
require 'ruby_app/elements/
|
19
|
-
require 'ruby_app/elements/
|
20
|
-
require 'ruby_app/elements/
|
21
|
-
require 'ruby_app/elements/
|
22
|
-
require 'ruby_app/elements/
|
23
|
-
require 'ruby_app/elements/
|
24
|
-
require 'ruby_app/elements/
|
25
|
-
require 'ruby_app/elements/
|
26
|
-
require 'ruby_app/elements/
|
27
|
-
require 'ruby_app/elements/
|
28
|
-
require 'ruby_app/elements/
|
29
|
-
require 'ruby_app/elements/
|
30
|
-
require 'ruby_app/elements/lists/select'
|
31
|
-
require 'ruby_app/elements/mail'
|
32
|
-
require 'ruby_app/elements/markdown'
|
33
|
-
require 'ruby_app/elements/navigation/back_button'
|
34
|
-
require 'ruby_app/elements/navigation/base/base_breadcrumbs'
|
35
|
-
require 'ruby_app/elements/navigation/breadcrumbs'
|
36
|
-
require 'ruby_app/elements/navigation/page_link'
|
37
|
-
require 'ruby_app/elements/page'
|
38
|
-
require 'ruby_app/elements/pages/authentication/open_id/authentication_page'
|
39
|
-
require 'ruby_app/elements/pages/authentication/open_id/ax_authentication_page'
|
40
|
-
require 'ruby_app/elements/pages/authentication/open_id/base/base_authentication_page'
|
41
|
-
require 'ruby_app/elements/pages/authentication/open_id/email_authentication_page'
|
42
|
-
require 'ruby_app/elements/pages/authentication/open_id/google_authentication_page'
|
43
|
-
require 'ruby_app/elements/pages/authentication/open_id/my_open_id_authentication_page'
|
44
|
-
require 'ruby_app/elements/pages/authentication/open_id/sreg_authentication_page'
|
45
|
-
require 'ruby_app/elements/pages/authentication/open_id/yahoo_authentication_page'
|
46
|
-
require 'ruby_app/elements/pages/base/base_blank_page'
|
47
|
-
require 'ruby_app/elements/pages/blank_page'
|
48
|
-
require 'ruby_app/elements/pages/default_page'
|
49
|
-
require 'ruby_app/elements/pages/quit_page'
|
50
|
-
require 'ruby_app/elements/pages/settings_page'
|
2
|
+
require 'ruby_app/elements/mobile/button'
|
3
|
+
require 'ruby_app/elements/mobile/click'
|
4
|
+
require 'ruby_app/elements/mobile/dialog'
|
5
|
+
require 'ruby_app/elements/mobile/dialogs/acknowledgement_dialog'
|
6
|
+
require 'ruby_app/elements/mobile/dialogs/confirmation_dialog'
|
7
|
+
require 'ruby_app/elements/mobile/dialogs/exception_dialog'
|
8
|
+
require 'ruby_app/elements/mobile/document'
|
9
|
+
require 'ruby_app/elements/mobile/documents/mail_document'
|
10
|
+
require 'ruby_app/elements/mobile/documents/quit_document'
|
11
|
+
require 'ruby_app/elements/mobile/documents/authentication/open_id/google_authentication_document'
|
12
|
+
require 'ruby_app/elements/mobile/documents/authentication/open_id/my_open_id_authentication_document'
|
13
|
+
require 'ruby_app/elements/mobile/documents/authentication/open_id/yahoo_authentication_document'
|
14
|
+
require 'ruby_app/elements/mobile/input'
|
15
|
+
require 'ruby_app/elements/mobile/inputs/duration_input'
|
16
|
+
require 'ruby_app/elements/mobile/inputs/email_input'
|
17
|
+
require 'ruby_app/elements/mobile/inputs/multiline_input'
|
18
|
+
require 'ruby_app/elements/mobile/inputs/toggle_input'
|
19
|
+
require 'ruby_app/elements/mobile/link'
|
20
|
+
require 'ruby_app/elements/mobile/list'
|
21
|
+
require 'ruby_app/elements/mobile/lists/select'
|
22
|
+
require 'ruby_app/elements/mobile/navigation/back_button'
|
23
|
+
require 'ruby_app/elements/mobile/navigation/navigation_button'
|
24
|
+
require 'ruby_app/elements/mobile/navigation/navigation_link'
|
25
|
+
require 'ruby_app/elements/mobile/navigation/navigation_list'
|
26
|
+
require 'ruby_app/elements/mobile/navigation/page_button'
|
27
|
+
require 'ruby_app/elements/mobile/page'
|
28
|
+
require 'ruby_app/elements/mobile/pages/information_page'
|
29
|
+
require 'ruby_app/elements/mobile/platforms/ios/document'
|