sproutcore 1.6.0.beta.3 → 1.6.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +33 -0
- data/Rakefile +213 -10
- data/VERSION.yml +1 -1
- data/lib/Buildfile +5 -1
- data/lib/buildtasks/manifest.rake +7 -1
- data/lib/frameworks/sproutcore/Buildfile +3 -2
- data/lib/frameworks/sproutcore/CHANGELOG.md +154 -1
- data/lib/frameworks/sproutcore/README.md +1 -1
- data/lib/frameworks/sproutcore/apps/welcome/english.lproj/main_page.css +9 -0
- data/lib/frameworks/sproutcore/frameworks/ajax/system/request.js +254 -207
- data/lib/frameworks/sproutcore/frameworks/ajax/system/response.js +243 -172
- data/lib/frameworks/sproutcore/frameworks/ajax/tests/system/request.js +29 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controllers/array.js +5 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/controls/button.js +6 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/bind.js +36 -14
- data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/collection.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +14 -15
- data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/template.js +14 -14
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/application.js +2 -7
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +3 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/responder.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +20 -12
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/string.js +61 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/system/utils.js +20 -6
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controllers/array/array_case.js +42 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/controls/button.js +39 -57
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/helpers_style.js +5 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/sparse_array.js +32 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/collection.js +25 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/handlebars.js +28 -17
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/keyboard.js +396 -0
- data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/view.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/{system → views}/bindable_span.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template_collection.js +78 -51
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +4 -3
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/enabled.js +2 -1
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/keyboard.js +233 -67
- data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/manipulation.js +3 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/core.js +8 -2
- data/lib/frameworks/sproutcore/frameworks/core_tools/data_source.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/core_tools/models/target.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +15 -8
- data/lib/frameworks/sproutcore/frameworks/datastore/models/child_record.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/models/record_attribute.js +1 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/system/child_array.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/datastore/system/record_array.js +66 -55
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/data_sources/data_source.js +190 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/nested_records/nested_record_array.js +21 -0
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/models/record_attribute.js +15 -1
- data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/record_array/flush.js +0 -1
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/system/datetime.js +212 -182
- data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/system/datetime.js +14 -16
- data/lib/frameworks/sproutcore/frameworks/desktop/mixins/collection_row_delegate.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +23 -11
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/alert.css +49 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/debug/a_sample_image.jpg +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/debug/apple-logo1.jpeg +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/debug/iframe.html +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/disclosure.css +20 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/drag.css +1 -1
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/icons.css +214 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/cap.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/downbutton.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-alert-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-alert-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-alert-48.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-bookmark-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-bookmark-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-cancel-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-document-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-document-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-down-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-error-48.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-favorite-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-favorite-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-folder-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-folder-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-group-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-group-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-help-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-help-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-info-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-info-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-info-48.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-left-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-options-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-options-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-redo-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-right-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-tools-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-trash-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-trash-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-undo-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-up-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-user-16.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/images/icons/sc-icon-user-24.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/thumb-bottom.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/thumb-center.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/thumb-top.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/track.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/images/upbutton.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/list_item.css +145 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/menu.css +10 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/menu_item_view.css +88 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/modal.css +3 -4
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/panel.css +91 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/picker.css +37 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/progress.css +29 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/radio.css +11 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/segmented.css +121 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/separator.css +20 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/slider.css +34 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/split.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/split_divider.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/tab.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/toolbar.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/{english.lproj → resources}/touch-scroller.css +13 -13
- data/lib/frameworks/sproutcore/frameworks/desktop/resources/well.css +65 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/checkbox/methods.js +114 -103
- data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/static_content.js +3 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +7 -6
- data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +18 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/views/popup_button.js +4 -7
- data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +9 -2
- data/lib/frameworks/sproutcore/frameworks/desktop/{panes → views}/select_button.js +43 -0
- data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/forms/views/form.js +35 -33
- data/lib/frameworks/sproutcore/frameworks/foundation/core.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/auto_resize.js +15 -8
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/button.js +4 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +55 -13
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/canvas_image.js +3 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/render_delegate.js +7 -7
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/benchmark.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/blank.gif +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/bootstrap.rhtml +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/button_view.css +36 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/checkbox_view.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/debug/control-test-pane.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/favicon.ico +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-logo.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-startup-landscape.jpg +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-startup-landscape.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-startup-portrait.jpg +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-startup-portrait.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore-startup.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/images/sproutcore.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/inline_editor.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/label.css +47 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/radio_view.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/{english.lproj → resources}/static_layout.css +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/resources/text_field.css +130 -0
- data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +5 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/system/string.js +0 -43
- data/lib/frameworks/sproutcore/frameworks/foundation/system/utils/string_measurement.js +5 -2
- data/lib/frameworks/sproutcore/frameworks/foundation/validators/date.js +4 -4
- data/lib/frameworks/sproutcore/frameworks/foundation/views/container.js +4 -5
- data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +5 -5
- data/lib/frameworks/sproutcore/frameworks/routing/system/routes.js +6 -3
- data/lib/frameworks/sproutcore/frameworks/routing/tests/system/routes.js +11 -0
- data/lib/frameworks/sproutcore/frameworks/runtime/core.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/private/property_chain.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/system/error.js +1 -1
- data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/runtime/system/object.js +2 -2
- data/lib/frameworks/sproutcore/frameworks/statechart/debug/monitor.js +4 -73
- data/lib/frameworks/sproutcore/frameworks/statechart/debug/sequence_matcher.js +189 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/ext/function.js +122 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/async.js +88 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/empty_state.js +34 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/history_state.js +97 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/system/state.js +7 -189
- data/lib/frameworks/sproutcore/frameworks/statechart/system/statechart.js +14 -78
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/debug/sequence_matcher.js +464 -0
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/event_handling/basic/with_concurrent_states.js +31 -11
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/async/with_concurrent_states.js +6 -4
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/advanced.js +40 -6
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/basic.js +22 -2
- data/lib/frameworks/sproutcore/frameworks/statechart/tests/state_transitioning/standard/with_concurrent_states/intermediate.js +44 -3
- data/lib/frameworks/sproutcore/frameworks/testing/core.js +61 -9
- data/lib/frameworks/sproutcore/frameworks/testing/{english.lproj → resources}/additions.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/testing/{english.lproj → resources}/runner.css +11 -2
- data/lib/frameworks/sproutcore/frameworks/testing/{english.lproj → resources}/testsuite.css +0 -0
- data/lib/frameworks/sproutcore/frameworks/testing/system/runner.js +66 -27
- data/lib/frameworks/sproutcore/frameworks/testing/tests/spy_on.js +41 -0
- data/lib/frameworks/sproutcore/frameworks/testing/tests/stub_method.js +9 -0
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/core.css +24 -0
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/fonts.css +39 -0
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/reset.css +126 -0
- data/lib/frameworks/sproutcore/frameworks/yuireset/resources/view.css +57 -0
- data/lib/frameworks/sproutcore/lib/index.rhtml +7 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/14px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_checked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_checked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_mixed.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_mixed_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_unchecked.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/checkbox/ace/16px/checkbox_unchecked_active.png +0 -0
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/normal/list.css +13 -4
- data/lib/frameworks/sproutcore/themes/ace/resources/collection/normal/list_item.css +16 -14
- data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu_item.png +0 -0
- data/lib/gen/app/templates/apps/@target_name@/Buildfile +1 -4
- data/lib/gen/app/templates/apps/@target_name@/core.js +1 -4
- data/lib/gen/app/templates/apps/@target_name@/main.js +1 -4
- data/lib/gen/app/templates/apps/@target_name@/resources/main_page.js +1 -4
- data/lib/gen/app/templates/apps/@target_name@/theme.js +1 -4
- data/lib/gen/controller/templates/controllers/{@filename@.js → @filename@_controller.js} +1 -4
- data/lib/gen/controller/templates/tests/controllers/{@filename@.js → @filename@_test.js} +1 -4
- data/lib/gen/data-source/templates/data_sources/{@filename@.js → @filename@_data_source.js} +1 -4
- data/lib/gen/design/templates/resources/@filename@.js +1 -4
- data/lib/gen/framework/templates/frameworks/@target_name@/core.js +1 -4
- data/lib/gen/framework/templates/frameworks/@target_name@/english.lproj/strings.js +1 -4
- data/lib/gen/html_app/templates/apps/@target_name@/@target_name@.js +1 -4
- data/lib/gen/html_app/templates/apps/@target_name@/resources/stylesheets/@target_name@.css +2 -0
- data/lib/gen/html_project/templates/@filename@/Buildfile +1 -4
- data/lib/gen/html_project/templates/@filename@/README +1 -4
- data/lib/gen/language/templates/@filename@/strings.js +1 -4
- data/lib/gen/model/templates/fixtures/{@filename@.js → @filename@_fixtures.js} +2 -5
- data/lib/gen/model/templates/models/{@filename@.js → @filename@_model.js} +1 -4
- data/lib/gen/model/templates/tests/models/{@filename@.js → @filename@_test.js} +1 -4
- data/lib/gen/page/templates/pages/@target_name@/Buildfile +1 -4
- data/lib/gen/page/templates/pages/@target_name@/core.js +1 -4
- data/lib/gen/page/templates/pages/@target_name@/en.lproj/strings.js +1 -4
- data/lib/gen/page/templates/pages/@target_name@/resources/body.css +3 -1
- data/lib/gen/project/templates/@filename@/Buildfile +1 -4
- data/lib/gen/project/templates/@filename@/README +1 -5
- data/lib/gen/responder/templates/states/{@filename@.js → @filename@_state.js} +1 -4
- data/lib/gen/test/templates/tests/{@filename@.js → @filename@_test.js} +1 -4
- data/lib/gen/theme/templates/themes/@target_name@/resources/theme_styles.css +1 -5
- data/lib/gen/theme/templates/themes/@target_name@/theme.js +1 -4
- data/lib/gen/view/templates/tests/views/{@filename@.js → @filename@_test.js} +1 -4
- data/lib/gen/view/templates/views/{@filename@.js → @filename@_view.js} +1 -4
- data/lib/sproutcore.rb +4 -1
- data/lib/sproutcore/builders/handlebars.rb +1 -1
- data/lib/sproutcore/builders/module.rb +2 -2
- data/lib/sproutcore/helpers/static_helper.rb +4 -2
- data/lib/sproutcore/models/generator.rb +22 -0
- data/lib/sproutcore/models/manifest_entry.rb +1 -0
- data/lib/sproutcore/models/target.rb +4 -1
- data/lib/sproutcore/rack/builder.rb +3 -0
- data/lib/sproutcore/tools.rb +11 -11
- data/lib/sproutcore/tools/init.rb +10 -22
- data/lib/sproutcore/tools/manifest.rb +21 -22
- data/spec/buildtasks/manifest/prepare_build_tasks/combine_spec.rb +21 -1
- data/spec/fixtures/ordered_entries/apps/template_style/a.js +0 -0
- data/spec/fixtures/ordered_entries/apps/template_style/template_style.js +0 -0
- data/spec/lib/buildfile_commands/build_task_spec.rb +1 -1
- data/spec/lib/tools/manifest_spec.rb +11 -0
- data/sproutcore.gemspec +2 -2
- data/vendor/chance/lib/chance/instance.rb +3 -1
- metadata +118 -74
- data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/core.css +0 -378
- data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/view.css +0 -57
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/alert.css +0 -56
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/disclosure.css +0 -73
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/icons.css +0 -916
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/images/icons/shared.png +0 -0
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/list_item.css +0 -185
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/menu.css +0 -12
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/menu_item_view.css +0 -101
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/panel.css +0 -91
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/picker.css +0 -35
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/progress.css +0 -33
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/radio.css +0 -10
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/segmented.css +0 -132
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/separator.css +0 -19
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/slider.css +0 -69
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/strings.js +0 -14
- data/lib/frameworks/sproutcore/frameworks/desktop/english.lproj/well.css +0 -71
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/button_view.css +0 -40
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/label.css +0 -47
- data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/text_field.css +0 -146
- data/lib/frameworks/sproutcore/themes/empty_theme/tests/mini_icons.rhtml +0 -69
@@ -113,10 +113,17 @@ test("send event eventB", function() {
|
|
113
113
|
equals(statechart.stateIsCurrentState('f'), true, 'current state should be f');
|
114
114
|
|
115
115
|
equals(monitor.get('length'), 4, 'state sequence should be of length 4');
|
116
|
-
equals(monitor.matchSequence()
|
117
|
-
|
118
|
-
|
119
|
-
|
116
|
+
equals(monitor.matchSequence().begin()
|
117
|
+
.beginConcurrent()
|
118
|
+
.beginSequence()
|
119
|
+
.exited('c')
|
120
|
+
.entered('d')
|
121
|
+
.endSequence()
|
122
|
+
.beginSequence()
|
123
|
+
.exited('e')
|
124
|
+
.entered('f')
|
125
|
+
.endSequence()
|
126
|
+
.endConcurrent()
|
120
127
|
.end(),
|
121
128
|
true, 'sequence should be exited[c], entered[d], exited[e], entered[f]');
|
122
129
|
});
|
@@ -137,10 +144,15 @@ test("send event eventB then eventC", function() {
|
|
137
144
|
equals(statechart.stateIsCurrentState('e'), true, 'current state should be e');
|
138
145
|
|
139
146
|
equals(monitor.get('length'), 4, 'state sequence should be of length 4');
|
140
|
-
equals(monitor.matchSequence()
|
141
|
-
|
142
|
-
|
143
|
-
|
147
|
+
equals(monitor.matchSequence().begin()
|
148
|
+
.beginConcurrent()
|
149
|
+
.beginSequence()
|
150
|
+
.exited('d').entered('c')
|
151
|
+
.endSequence()
|
152
|
+
.beginSequence()
|
153
|
+
.exited('f').entered('e')
|
154
|
+
.endSequence()
|
155
|
+
.endConcurrent()
|
144
156
|
.end(),
|
145
157
|
true, 'sequence should be exited[d], entered[c], exited[f], entered[e]');
|
146
158
|
});
|
@@ -156,9 +168,17 @@ test("send event eventD", function() {
|
|
156
168
|
statechart.sendEvent('eventD');
|
157
169
|
|
158
170
|
equals(monitor.get('length'), 6, 'state sequence should be of length 6');
|
159
|
-
equals(monitor.matchSequence()
|
160
|
-
|
161
|
-
|
171
|
+
equals(monitor.matchSequence().begin()
|
172
|
+
.beginConcurrent()
|
173
|
+
.beginSequence()
|
174
|
+
.exited('c', 'a')
|
175
|
+
.endSequence()
|
176
|
+
.beginSequence()
|
177
|
+
.exited('e', 'b')
|
178
|
+
.endSequence()
|
179
|
+
.endConcurrent()
|
180
|
+
.exited('x')
|
181
|
+
.entered('y')
|
162
182
|
.end(),
|
163
183
|
true, 'sequence should be exited[c, a, e, b, x], entered[y]');
|
164
184
|
|
@@ -79,10 +79,12 @@ test("go to state b", function() {
|
|
79
79
|
equals(statechart.get('gotoStateActive'), NO, "statechart should not have active gotoState");
|
80
80
|
equals(statechart.get('gotoStateSuspended'), NO, "statechart should not have active gotoState suspended");
|
81
81
|
|
82
|
-
equals(monitor.matchSequence()
|
83
|
-
|
84
|
-
|
85
|
-
|
82
|
+
equals(monitor.matchSequence().begin()
|
83
|
+
.exited('a')
|
84
|
+
.entered('b')
|
85
|
+
.beginConcurrent()
|
86
|
+
.entered('c', 'd')
|
87
|
+
.endConcurrent()
|
86
88
|
.end(),
|
87
89
|
true, 'sequence should be exited[a], entered[b, c, d]');
|
88
90
|
equals(statechart.get('currentStateCount'), 2, 'current state count should be 2');
|
@@ -112,8 +112,27 @@ module("SC.Statechart: With Concurrent States - Goto State Advanced Tests", {
|
|
112
112
|
|
113
113
|
test("check statechart initialization", function() {
|
114
114
|
equals(monitor.get('length'), 10, 'initial state sequence should be of length 10');
|
115
|
-
equals(monitor.matchSequence().begin()
|
116
|
-
|
115
|
+
equals(monitor.matchSequence().begin()
|
116
|
+
.entered(root, 'a')
|
117
|
+
.beginConcurrent()
|
118
|
+
.beginSequence()
|
119
|
+
.entered('b', 'd')
|
120
|
+
.endSequence()
|
121
|
+
.beginSequence()
|
122
|
+
.entered('c', 'f')
|
123
|
+
.beginConcurrent()
|
124
|
+
.beginSequence()
|
125
|
+
.entered('h', 'l')
|
126
|
+
.endSequence()
|
127
|
+
.beginSequence()
|
128
|
+
.entered('i', 'n')
|
129
|
+
.endSequence()
|
130
|
+
.endConcurrent()
|
131
|
+
.endSequence()
|
132
|
+
.endConcurrent()
|
133
|
+
.entered()
|
134
|
+
.end(),
|
135
|
+
true, 'initial sequence should be entered[ROOT, a, b, d, c, f, h, l, i, n]');
|
117
136
|
|
118
137
|
equals(statechart.get('currentStateCount'), 3, 'current state count should be 3');
|
119
138
|
equals(statechart.stateIsCurrentState('d'), true, 'current state should be d');
|
@@ -150,10 +169,25 @@ test("from state l, go to state g", function() {
|
|
150
169
|
stateL.gotoState('g');
|
151
170
|
|
152
171
|
equals(monitor.get('length'), 10, 'initial state sequence should be of length 10');
|
153
|
-
equals(monitor.matchSequence()
|
154
|
-
|
155
|
-
|
156
|
-
|
172
|
+
equals(monitor.matchSequence().begin()
|
173
|
+
.beginConcurrent()
|
174
|
+
.beginSequence()
|
175
|
+
.exited('l', 'h')
|
176
|
+
.endSequence()
|
177
|
+
.beginSequence()
|
178
|
+
.exited('n', 'i')
|
179
|
+
.endSequence()
|
180
|
+
.endConcurrent()
|
181
|
+
.exited('f')
|
182
|
+
.entered('g')
|
183
|
+
.beginConcurrent()
|
184
|
+
.beginSequence()
|
185
|
+
.entered('j', 'p')
|
186
|
+
.endSequence()
|
187
|
+
.beginSequence()
|
188
|
+
.entered('k', 'r')
|
189
|
+
.endSequence()
|
190
|
+
.endConcurrent()
|
157
191
|
.end(),
|
158
192
|
true, 'initial sequence should be exited[l, h, n, i, f], entered[g, j, p, k, r]');
|
159
193
|
|
@@ -52,8 +52,28 @@ module("SC.Statechart: With Concurrent States - Goto State Basic Tests", {
|
|
52
52
|
|
53
53
|
test("check statechart initialization", function() {
|
54
54
|
equals(monitor.get('length'), 5, 'initial state sequence should be of length 5');
|
55
|
-
equals(monitor.matchSequence().begin()
|
56
|
-
|
55
|
+
equals(monitor.matchSequence().begin()
|
56
|
+
.entered(root)
|
57
|
+
.beginConcurrent()
|
58
|
+
.beginSequence()
|
59
|
+
.entered('a', 'c')
|
60
|
+
.endSequence()
|
61
|
+
.beginSequence()
|
62
|
+
.entered('b', 'e')
|
63
|
+
.endSequence()
|
64
|
+
.endConcurrent()
|
65
|
+
.end(),
|
66
|
+
true, 'initial sequence should be entered[ROOT, a, c, b, e]');
|
67
|
+
equals(monitor.matchSequence().begin()
|
68
|
+
.entered(root)
|
69
|
+
.beginConcurrent()
|
70
|
+
.entered('a', 'b')
|
71
|
+
.endConcurrent()
|
72
|
+
.beginConcurrent()
|
73
|
+
.entered('c', 'e')
|
74
|
+
.endConcurrent()
|
75
|
+
.end(),
|
76
|
+
false, 'initial sequence should not be entered[ROOT, a, b, c, e]');
|
57
77
|
|
58
78
|
equals(statechart.get('currentStateCount'), 2, 'current state count should be 2');
|
59
79
|
|
@@ -60,7 +60,20 @@ module("SC.Statechart: With Concurrent States - Goto State Intermediate Tests",
|
|
60
60
|
|
61
61
|
test("check statechart initialization", function() {
|
62
62
|
equals(monitor.get('length'), 6, 'initial state sequence should be of length 5');
|
63
|
-
|
63
|
+
|
64
|
+
equals(monitor.matchSequence().begin()
|
65
|
+
.entered(root, 'a')
|
66
|
+
.beginConcurrent()
|
67
|
+
.beginSequence()
|
68
|
+
.entered('b', 'd')
|
69
|
+
.endSequence()
|
70
|
+
.beginSequence()
|
71
|
+
.entered('c', 'f')
|
72
|
+
.endSequence()
|
73
|
+
.endConcurrent()
|
74
|
+
.end(),
|
75
|
+
true, 'initial sequence should be entered[ROOT, a, b, d, c, f]');
|
76
|
+
|
64
77
|
equals(statechart.get('currentStateCount'), 2, 'current state count should be 2');
|
65
78
|
equals(statechart.stateIsCurrentState('d'), true, 'current state should be d');
|
66
79
|
equals(statechart.stateIsCurrentState('f'), true, 'current state should be f');
|
@@ -98,7 +111,21 @@ test("from state a, go to state z and then back to state a", function() {
|
|
98
111
|
stateA.gotoState('z');
|
99
112
|
|
100
113
|
equals(monitor.get('length'), 6, 'initial state sequence should be of length 6');
|
101
|
-
|
114
|
+
|
115
|
+
equals(monitor.matchSequence().begin()
|
116
|
+
.beginConcurrent()
|
117
|
+
.beginSequence()
|
118
|
+
.exited('d', 'b')
|
119
|
+
.endSequence()
|
120
|
+
.beginSequence()
|
121
|
+
.exited('f', 'c')
|
122
|
+
.endSequence()
|
123
|
+
.endConcurrent()
|
124
|
+
.exited('a')
|
125
|
+
.entered('z')
|
126
|
+
.end(),
|
127
|
+
true, 'sequence should be exited[d, b, f, c, a], entered[z]');
|
128
|
+
|
102
129
|
equals(statechart.get('currentStateCount'), 1, 'current state count should be 1');
|
103
130
|
equals(statechart.stateIsCurrentState('z'), true, 'current state should be z');
|
104
131
|
|
@@ -106,7 +133,21 @@ test("from state a, go to state z and then back to state a", function() {
|
|
106
133
|
stateZ.gotoState('a');
|
107
134
|
|
108
135
|
equals(monitor.get('length'), 6, 'initial state sequence should be of length 6');
|
109
|
-
|
136
|
+
|
137
|
+
equals(monitor.matchSequence().begin()
|
138
|
+
.exited('z')
|
139
|
+
.entered('a')
|
140
|
+
.beginConcurrent()
|
141
|
+
.beginSequence()
|
142
|
+
.entered('b', 'd')
|
143
|
+
.endSequence()
|
144
|
+
.beginSequence()
|
145
|
+
.entered('c', 'f')
|
146
|
+
.endSequence()
|
147
|
+
.endConcurrent()
|
148
|
+
.end(),
|
149
|
+
true, 'sequence should be exited[z], entered[a, b, d, c, f]');
|
150
|
+
|
110
151
|
equals(statechart.get('currentStateCount'), 2, 'current state count should be 1');
|
111
152
|
equals(statechart.stateIsCurrentState('d'), true, 'current state should be d');
|
112
153
|
equals(statechart.stateIsCurrentState('f'), true, 'current state should be f');
|
@@ -178,22 +178,74 @@ CoreTest = {
|
|
178
178
|
|
179
179
|
return ret ;
|
180
180
|
},
|
181
|
-
|
182
181
|
|
183
182
|
/** Test is OK */
|
184
183
|
OK: 'passed',
|
185
|
-
|
184
|
+
|
186
185
|
/** Test failed */
|
187
186
|
FAIL: 'failed',
|
188
|
-
|
187
|
+
|
189
188
|
/** Test raised exception */
|
190
189
|
ERROR: 'errors',
|
191
|
-
|
190
|
+
|
192
191
|
/** Test raised warning */
|
193
192
|
WARN: 'warnings',
|
194
|
-
|
195
|
-
showUI : false
|
196
|
-
|
197
|
-
|
198
|
-
|
193
|
+
|
194
|
+
showUI : false,
|
195
|
+
|
196
|
+
spyOn: function(object, method) {
|
197
|
+
if(!object) throw new Error('ERROR: Attempted to spy upon an invalid object');
|
198
|
+
if(!object[method]) throw new Error('ERROR: The requested method does not exist on the given object');
|
199
|
+
|
200
|
+
var spy = new CoreTest.Spy;
|
201
|
+
object[method] = function() { spy.call(CoreTest.argumentsArray(arguments)) };
|
202
|
+
return spy;
|
203
|
+
},
|
204
|
+
|
205
|
+
stubMethod: function(object, method) {
|
206
|
+
if(!object) throw new Error('ERROR: Attempted to spy upon an invalid object');
|
207
|
+
if(!object[method]) throw new Error('ERROR: The requested method does not exist on the given object');
|
208
|
+
|
209
|
+
var stub = new CoreTest.Stub;
|
210
|
+
object[method] = function() { return stub.call() };
|
211
|
+
return stub;
|
212
|
+
}
|
213
|
+
};
|
214
|
+
|
215
|
+
CoreTest.Spy = function() {
|
216
|
+
this.wasCalled = false;
|
217
|
+
};
|
218
|
+
|
219
|
+
CoreTest.Spy.prototype.call = function(args) {
|
220
|
+
this.wasCalledWithArguments = args;
|
221
|
+
this.wasCalled = true;
|
222
|
+
};
|
223
|
+
|
224
|
+
CoreTest.Spy.prototype.wasCalledWith = function() {
|
225
|
+
return CoreTest._isIdenticalArray(this.wasCalledWithArguments,CoreTest.argumentsArray(arguments));
|
226
|
+
};
|
227
|
+
|
228
|
+
CoreTest.Stub = function() {
|
229
|
+
};
|
230
|
+
|
231
|
+
CoreTest.Stub.prototype.andReturn = function(value) {
|
232
|
+
this.stubbedValue = value;
|
233
|
+
};
|
234
|
+
|
235
|
+
CoreTest.Stub.prototype.call = function() {
|
236
|
+
if(this.stubbedValue === undefined) throw new Error('ERROR: You never specified what value the stub should return');
|
237
|
+
return this.stubbedValue;
|
238
|
+
};
|
239
|
+
|
240
|
+
CoreTest.argumentsArray = function(args) {
|
241
|
+
var arrayOfArgs = [];
|
242
|
+
for (var i = 0; i < args.length; i++) arrayOfArgs.push(args[i]);
|
243
|
+
return arrayOfArgs;
|
244
|
+
};
|
245
|
+
|
246
|
+
CoreTest._isIdenticalArray = function(array1, array2) {
|
247
|
+
if(array1.length !== array2.length) return false;
|
248
|
+
for(var i = 0; i < array1.length; i++)
|
249
|
+
if(array1[i] !== array2[i]) return false;
|
250
|
+
return true;
|
199
251
|
};
|
File without changes
|
@@ -27,7 +27,7 @@
|
|
27
27
|
position: relative;
|
28
28
|
}
|
29
29
|
|
30
|
-
.testresult label.hide-passed {
|
30
|
+
.testresult label.hide-passed, .testresult label.show-progress {
|
31
31
|
position: absolute;
|
32
32
|
display: block;
|
33
33
|
margin: 0;
|
@@ -38,10 +38,14 @@
|
|
38
38
|
margin-top: -8px;
|
39
39
|
}
|
40
40
|
|
41
|
-
.testresult label.hide-passed.disabled {
|
41
|
+
.testresult label.hide-passed.disabled, .testresult label.show-progress.disabled {
|
42
42
|
color: #aaa;
|
43
43
|
}
|
44
44
|
|
45
|
+
.testresult label.show-progress {
|
46
|
+
left: 200px;
|
47
|
+
}
|
48
|
+
|
45
49
|
.testresult em {
|
46
50
|
display: block;
|
47
51
|
font-weight: normal;
|
@@ -67,6 +71,7 @@
|
|
67
71
|
.core-test table {
|
68
72
|
background: #000;
|
69
73
|
border-spacing: 1px;
|
74
|
+
border-collapse: separate;
|
70
75
|
width: 100%;
|
71
76
|
}
|
72
77
|
|
@@ -80,6 +85,10 @@
|
|
80
85
|
padding: 4px;
|
81
86
|
}
|
82
87
|
|
88
|
+
.core-test table th {
|
89
|
+
font-weight: bold;
|
90
|
+
}
|
91
|
+
|
83
92
|
.core-test tbody td {
|
84
93
|
text-align: center;
|
85
94
|
padding: 8px;
|
File without changes
|
@@ -25,7 +25,9 @@ CoreTest.Runner = {
|
|
25
25
|
*/
|
26
26
|
plan: null,
|
27
27
|
errors: null,
|
28
|
-
|
28
|
+
|
29
|
+
showProgress: false,
|
30
|
+
|
29
31
|
create: function() {
|
30
32
|
var len = arguments.length,
|
31
33
|
ret = CoreTest.beget(this),
|
@@ -46,41 +48,63 @@ CoreTest.Runner = {
|
|
46
48
|
|
47
49
|
planDidBegin: function(plan) {
|
48
50
|
// setup the report DOM element.
|
49
|
-
|
50
|
-
'<div class="
|
51
|
-
|
52
|
-
'<
|
53
|
-
'<
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
'
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
51
|
+
var str = [
|
52
|
+
'<div class="core-test">',
|
53
|
+
'<div class="useragent">UserAgent</div>',
|
54
|
+
'<div class="testresult">',
|
55
|
+
'<label class="hide-passed">',
|
56
|
+
'<input type="checkbox" checked="checked" /> Hide passed tests',
|
57
|
+
'</label>'
|
58
|
+
];
|
59
|
+
|
60
|
+
if (navigator.userAgent.indexOf('MSIE')==-1) {
|
61
|
+
str.push(
|
62
|
+
'<label class="show-progress">',
|
63
|
+
'<input type="checkbox"'+(this.showProgress?' checked="checked"':'')+'" /> Show progess (slower)',
|
64
|
+
'</label>'
|
65
|
+
);
|
66
|
+
}
|
67
|
+
|
68
|
+
str.push(
|
69
|
+
'<label class="show-progress">',
|
70
|
+
'<input type="checkbox"'+(this.showProgress?' checked="checked"':'')+'" /> Show progess (slower)',
|
71
|
+
'</label>',
|
72
|
+
'<span class="status">Running...</span>',
|
73
|
+
'</div>',
|
74
|
+
'<div class="detail">',
|
75
|
+
'<table>',
|
76
|
+
'<thead><tr>',
|
77
|
+
'<th class="desc">Test</th><th>Result</th>',
|
78
|
+
'</tr></thead>',
|
79
|
+
'<tbody><tr></tr></tbody>',
|
80
|
+
'</table>',
|
81
|
+
'</div>',
|
82
|
+
'</div>'
|
83
|
+
);
|
84
|
+
|
85
|
+
this.report = Q$(str.join(''));
|
86
|
+
|
68
87
|
this.report.find('.useragent').html(navigator.userAgent);
|
69
88
|
this.logq = this.report.find('tbody');
|
70
89
|
this.testCount = 0 ;
|
71
90
|
|
72
91
|
// listen to change event
|
73
92
|
var runner = this;
|
74
|
-
this.
|
75
|
-
this.
|
93
|
+
this.hidePassedCheckbox = this.report.find('.hide-passed input');
|
94
|
+
this.hidePassedCheckbox.change(function() {
|
76
95
|
runner.hidePassedTestsDidChange();
|
77
96
|
});
|
78
|
-
|
97
|
+
|
98
|
+
this.showProgressCheckbox = this.report.find('.show-progress input');
|
99
|
+
this.showProgressCheckbox.change(function() {
|
100
|
+
runner.showProgressCheckboxDidChange();
|
101
|
+
});
|
102
|
+
|
79
103
|
Q$('body').append(this.report);
|
80
104
|
},
|
81
105
|
|
82
106
|
hidePassedTestsDidChange: function() {
|
83
|
-
var checked =
|
107
|
+
var checked = this.hidePassedCheckbox.is(':checked');
|
84
108
|
|
85
109
|
if (checked) {
|
86
110
|
this.logq.addClass('hide-clean');
|
@@ -88,7 +112,12 @@ CoreTest.Runner = {
|
|
88
112
|
this.logq.removeClass('hide-clean');
|
89
113
|
}
|
90
114
|
},
|
91
|
-
|
115
|
+
|
116
|
+
showProgressCheckboxDidChange: function(){
|
117
|
+
this.showProgress = this.showProgressCheckbox.is(':checked');
|
118
|
+
if (this.showProgress) { this.flush(); }
|
119
|
+
},
|
120
|
+
|
92
121
|
planDidFinish: function(plan, r) {
|
93
122
|
this.flush();
|
94
123
|
|
@@ -128,9 +157,11 @@ CoreTest.Runner = {
|
|
128
157
|
if(CoreTest.showUI) Q$('.core-test').css("right", "360px");
|
129
158
|
result.html(str);
|
130
159
|
|
160
|
+
CoreTest.finished = true;
|
161
|
+
|
131
162
|
if (this.errors) CoreTest.errors=this.errors.join('');
|
132
163
|
|
133
|
-
|
164
|
+
|
134
165
|
// Unload the SproutCore event system so that the user can select the text
|
135
166
|
// of the various events. (It is handy when looking at failed tests.)
|
136
167
|
if (SC && SC.Event && SC.Event.unload) {
|
@@ -201,7 +232,15 @@ CoreTest.Runner = {
|
|
201
232
|
|
202
233
|
// called when the plan takes a break. Good time to flush HTML output.
|
203
234
|
planDidPause: function(plan) {
|
204
|
-
if(
|
235
|
+
if(!this._cacheResultSelector){
|
236
|
+
this._cacheResultSelector = this.report.find('.testresult .status');
|
237
|
+
}
|
238
|
+
var result = this._cacheResultSelector;
|
239
|
+
|
240
|
+
if (this.resultStr && navigator.userAgent.indexOf('MSIE')==-1) result.html(this.resultStr);
|
241
|
+
this.resultStr = null ;
|
242
|
+
|
243
|
+
if (this.showProgress) { this.flush(); }
|
205
244
|
},
|
206
245
|
|
207
246
|
// flush any pending HTML changes...
|