pictrails 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.autotest +8 -0
- data/History.txt +80 -0
- data/MIT-LICENSE +21 -0
- data/Manifest.txt +943 -0
- data/README.txt +88 -0
- data/Rakefile +10 -0
- data/app/controllers/admin/base_controller.rb +12 -0
- data/app/controllers/admin/comments_controller.rb +49 -0
- data/app/controllers/admin/galleries_controller.rb +110 -0
- data/app/controllers/admin/pictures_controller.rb +85 -0
- data/app/controllers/admin/sessions_controller.rb +26 -0
- data/app/controllers/admin/settings_controller.rb +44 -0
- data/app/controllers/admin/users_controller.rb +40 -0
- data/app/controllers/application.rb +54 -0
- data/app/controllers/galleries_controller.rb +61 -0
- data/app/controllers/pictures_controller.rb +57 -0
- data/app/controllers/tags_controller.rb +12 -0
- data/app/helpers/admin/base_helper.rb +36 -0
- data/app/helpers/admin/comments_helper.rb +2 -0
- data/app/helpers/admin/galleries_helper.rb +2 -0
- data/app/helpers/admin/pictures_helper.rb +2 -0
- data/app/helpers/admin/sessions_helper.rb +2 -0
- data/app/helpers/admin/users_helper.rb +2 -0
- data/app/helpers/application_helper.rb +87 -0
- data/app/helpers/galleries_helper.rb +2 -0
- data/app/helpers/pictures_helper.rb +12 -0
- data/app/models/comment.rb +6 -0
- data/app/models/gallery.rb +173 -0
- data/app/models/import.rb +25 -0
- data/app/models/picture.rb +104 -0
- data/app/models/setting.rb +102 -0
- data/app/models/tag.rb +30 -0
- data/app/models/thumbnail.rb +8 -0
- data/app/models/user.rb +52 -0
- data/app/sweepers/gallery_sweeper.rb +25 -0
- data/app/sweepers/page_cache.rb +66 -0
- data/app/sweepers/picture_sweeper.rb +26 -0
- data/app/sweepers/setting_sweeper.rb +11 -0
- data/app/views/admin/comments/edit.html.erb +35 -0
- data/app/views/admin/comments/index.html.erb +38 -0
- data/app/views/admin/comments/show.html.erb +16 -0
- data/app/views/admin/galleries/_follow_import.html.erb +17 -0
- data/app/views/admin/galleries/edit.html.erb +90 -0
- data/app/views/admin/galleries/follow_import.html.erb +7 -0
- data/app/views/admin/galleries/follow_import.js.rjs +6 -0
- data/app/views/admin/galleries/index.html.erb +43 -0
- data/app/views/admin/galleries/new.html.erb +44 -0
- data/app/views/admin/galleries/new_by_mass_upload.html.erb +28 -0
- data/app/views/admin/galleries/show.html.erb +54 -0
- data/app/views/admin/pictures/_picture.html.erb +12 -0
- data/app/views/admin/pictures/edit.html.erb +59 -0
- data/app/views/admin/pictures/index.html.erb +17 -0
- data/app/views/admin/pictures/new.html.erb +56 -0
- data/app/views/admin/pictures/show.html.erb +55 -0
- data/app/views/admin/sessions/new.html.erb +28 -0
- data/app/views/admin/settings/_follow_setting_update.html.erb +16 -0
- data/app/views/admin/settings/follow_setting_update.html.erb +7 -0
- data/app/views/admin/settings/follow_setting_update.js.rjs +6 -0
- data/app/views/admin/settings/index.html.erb +65 -0
- data/app/views/admin/users/new.html.erb +32 -0
- data/app/views/comments/_comment.html.erb +6 -0
- data/app/views/galleries/_gallery.html.erb +6 -0
- data/app/views/galleries/_list_pictures.html.erb +22 -0
- data/app/views/galleries/_sidebar_gallery.html.erb +13 -0
- data/app/views/galleries/_top_show.html.erb +10 -0
- data/app/views/galleries/index.html.erb +11 -0
- data/app/views/galleries/show.atom.builder +22 -0
- data/app/views/galleries/show.html.erb +28 -0
- data/app/views/layouts/administration.html.erb +48 -0
- data/app/views/layouts/application.html.erb +38 -0
- data/app/views/pictures/_picture.html.erb +13 -0
- data/app/views/pictures/index.html.erb +11 -0
- data/app/views/pictures/show.html.erb +51 -0
- data/app/views/tags/_sidebar_tag.html.erb +20 -0
- data/app/views/tags/show.html.erb +14 -0
- data/config/boot.rb +109 -0
- data/config/database.yml.example +25 -0
- data/config/environment.rb +63 -0
- data/config/environments/development.rb +19 -0
- data/config/environments/production.rb +18 -0
- data/config/environments/stories.rb +19 -0
- data/config/environments/test.rb +22 -0
- data/config/initializers/inflections.rb +10 -0
- data/config/initializers/mime_types.rb +5 -0
- data/config/initializers/new_rails_defaults.rb +15 -0
- data/config/routes.rb +66 -0
- data/db/migrate/001_create_galleries.rb +20 -0
- data/db/migrate/002_create_pictures.rb +28 -0
- data/db/migrate/003_create_thumbnails_table.rb +17 -0
- data/db/migrate/004_create_users.rb +20 -0
- data/db/migrate/005_create_settings.rb +12 -0
- data/db/migrate/006_add_permalink_to_galleries.rb +15 -0
- data/db/migrate/007_add_permalink_to_picture.rb +15 -0
- data/db/migrate/008_create_imports.rb +15 -0
- data/db/migrate/009_delete_timestamp_and_add_number.rb +13 -0
- data/db/migrate/010_add_parent_id_for_gallery.rb +9 -0
- data/db/migrate/20080618220812_acts_as_taggable_migration.rb +26 -0
- data/db/migrate/20080824170446_add_picture_id_in_import.rb +11 -0
- data/db/migrate/20080910173454_create_comments.rb +19 -0
- data/db/schema.rb +110 -0
- data/lib/authenticated_system.rb +116 -0
- data/lib/authenticated_test_helper.rb +10 -0
- data/lib/config_manager.rb +96 -0
- data/lib/pictrails/caching_methods.rb +15 -0
- data/lib/pictrails/import_system.rb +37 -0
- data/lib/pictrails/mass_upload.rb +29 -0
- data/lib/pictrails/version.rb +9 -0
- data/lib/tasks/cache.rake +6 -0
- data/lib/tasks/rspec.rake +132 -0
- data/lib/tasks/story.rake +12 -0
- data/log/keep +0 -0
- data/public/.htaccess +40 -0
- data/public/404.html +30 -0
- data/public/422.html +30 -0
- data/public/500.html +30 -0
- data/public/dispatch.cgi +10 -0
- data/public/dispatch.fcgi +24 -0
- data/public/dispatch.rb +10 -0
- data/public/favicon.ico +0 -0
- data/public/images/README +2 -0
- data/public/images/accept.png +0 -0
- data/public/images/accept50.png +0 -0
- data/public/images/admin/bc-bg.gif +0 -0
- data/public/images/admin/bgdivider.gif +0 -0
- data/public/images/admin/bgdivider.png +0 -0
- data/public/images/admin/bgoff.png +0 -0
- data/public/images/admin/bgoff2.png +0 -0
- data/public/images/admin/bgon.png +0 -0
- data/public/images/admin/bgover.png +0 -0
- data/public/images/admin/bgselected.png +0 -0
- data/public/images/admin/cancel.png +0 -0
- data/public/images/admin/checked.png +0 -0
- data/public/images/admin/delete.png +0 -0
- data/public/images/admin/edit.png +0 -0
- data/public/images/admin/error.png +0 -0
- data/public/images/admin/foot.jpg +0 -0
- data/public/images/admin/help.png +0 -0
- data/public/images/admin/loginformbg.png +0 -0
- data/public/images/admin/remove.png +0 -0
- data/public/images/admin/show.png +0 -0
- data/public/images/admin/table-header-first.png +0 -0
- data/public/images/admin/table-header-last.png +0 -0
- data/public/images/admin/table-header.png +0 -0
- data/public/images/admin/top.gif +0 -0
- data/public/images/bg_white.png +0 -0
- data/public/images/email_open.png +0 -0
- data/public/images/email_open50.png +0 -0
- data/public/images/page_edit50.png +0 -0
- data/public/images/user.png +0 -0
- data/public/images/user50.png +0 -0
- data/public/images/world_link.png +0 -0
- data/public/images/world_link50.png +0 -0
- data/public/javascripts/application.js +2 -0
- data/public/javascripts/controls.js +963 -0
- data/public/javascripts/dragdrop.js +972 -0
- data/public/javascripts/effects.js +1120 -0
- data/public/javascripts/follow_import.js +7 -0
- data/public/javascripts/follow_setting_update.js +7 -0
- data/public/javascripts/prototype.js +4225 -0
- data/public/no_picture.png +0 -0
- data/public/robots.txt +5 -0
- data/public/stylesheets/administration.css +998 -0
- data/public/stylesheets/pictrails.css +260 -0
- data/script/about +3 -0
- data/script/autospec +3 -0
- data/script/console +3 -0
- data/script/dbconsole +3 -0
- data/script/destroy +3 -0
- data/script/generate +3 -0
- data/script/performance/benchmarker +3 -0
- data/script/performance/profiler +3 -0
- data/script/performance/request +3 -0
- data/script/plugin +3 -0
- data/script/process/inspector +3 -0
- data/script/process/reaper +3 -0
- data/script/process/spawner +3 -0
- data/script/runner +3 -0
- data/script/server +3 -0
- data/script/spec +4 -0
- data/script/spec_server +116 -0
- data/spec/controllers/admin/comments_controller_spec.rb +117 -0
- data/spec/controllers/admin/galleries_controller_spec.rb +247 -0
- data/spec/controllers/admin/pictures_controller_spec.rb +114 -0
- data/spec/controllers/admin/sessions_controller_spec.rb +36 -0
- data/spec/controllers/admin/settings_controller_spec.rb +54 -0
- data/spec/controllers/admin/users_controller_spec.rb +48 -0
- data/spec/controllers/galleries_controller_spec.rb +138 -0
- data/spec/controllers/pictures_controller_spec.rb +78 -0
- data/spec/fixtures/files/foo-2.PNG +0 -0
- data/spec/fixtures/files/foo.png +0 -0
- data/spec/fixtures/files/rails-2.png +0 -0
- data/spec/fixtures/files/rails-3.png +0 -0
- data/spec/fixtures/files/rails.png +0 -0
- data/spec/fixtures/galleries.yml +38 -0
- data/spec/fixtures/imports.yml +19 -0
- data/spec/fixtures/pictures.yml +108 -0
- data/spec/fixtures/settings.yml +8 -0
- data/spec/fixtures/taggings.yml +17 -0
- data/spec/fixtures/tags.yml +6 -0
- data/spec/fixtures/thumbnails.yml +30 -0
- data/spec/fixtures/users.yml +15 -0
- data/spec/helpers/admin/admin_base_helper_spec.rb +15 -0
- data/spec/helpers/admin/comments_helper_spec.rb +11 -0
- data/spec/helpers/admin/pictures_helper_spec.rb +5 -0
- data/spec/helpers/application_helper_spec.rb +37 -0
- data/spec/lib/import_spec.rb +115 -0
- data/spec/lib/mass_upload_spec.rb +35 -0
- data/spec/models/comment_spec.rb +24 -0
- data/spec/models/gallery_spec.rb +256 -0
- data/spec/models/import_spec.rb +11 -0
- data/spec/models/picture_spec.rb +139 -0
- data/spec/models/setting_spec.rb +74 -0
- data/spec/models/user_spec.rb +52 -0
- data/spec/rcov.opts +2 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +39 -0
- data/stories/add_gallery_story +29 -0
- data/stories/all.rb +18 -0
- data/stories/helper.rb +16 -0
- data/stories/integration_test_file_upload_deep.rb +60 -0
- data/stories/signup_story +37 -0
- data/stories/steps/admin_steps.rb +6 -0
- data/stories/steps/gallery_steps.rb +38 -0
- data/stories/steps/general_steps.rb +71 -0
- data/stories/steps/signup_steps.rb +25 -0
- data/stories/view_gallery_story +37 -0
- data/test/fixtures/comments.yml +15 -0
- data/test/functional/comment_controller_test.rb +8 -0
- data/test/functional/comments_controller_test.rb +8 -0
- data/test/unit/comment_test.rb +8 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/CHANGELOG +167 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/MIT-LICENSE +20 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/README +148 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/Rakefile +22 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/generators/acts_as_taggable_migration/acts_as_taggable_migration_generator.rb +11 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/generators/acts_as_taggable_migration/templates/migration.rb +26 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/init.rb +1 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/acts_as_taggable.rb +214 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/tag.rb +26 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/tag_counts_extension.rb +3 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/tag_list.rb +91 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/tagging.rb +12 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/lib/tags_helper.rb +13 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/abstract_unit.rb +97 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/acts_as_taggable_test.rb +347 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/database.yml +10 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/magazine.rb +3 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/magazines.yml +7 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/photo.rb +8 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/photos.yml +24 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/post.rb +7 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/posts.yml +34 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/special_post.rb +2 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/subscription.rb +4 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/subscriptions.yml +3 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/taggings.yml +149 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/tags.yml +19 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/user.rb +7 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/fixtures/users.yml +7 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/schema.rb +37 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/tag_list_test.rb +106 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/tag_test.rb +34 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/tagging_test.rb +13 -0
- data/vendor/plugins/acts_as_taggable_on_steroids/test/tags_helper_test.rb +28 -0
- data/vendor/plugins/acts_as_tree/README +26 -0
- data/vendor/plugins/acts_as_tree/Rakefile +22 -0
- data/vendor/plugins/acts_as_tree/init.rb +1 -0
- data/vendor/plugins/acts_as_tree/lib/active_record/acts/tree.rb +96 -0
- data/vendor/plugins/atom_feed_helper/CHANGELOG +5 -0
- data/vendor/plugins/atom_feed_helper/MIT-LICENSE +20 -0
- data/vendor/plugins/atom_feed_helper/README +72 -0
- data/vendor/plugins/atom_feed_helper/Rakefile +22 -0
- data/vendor/plugins/atom_feed_helper/init.rb +2 -0
- data/vendor/plugins/atom_feed_helper/lib/atom_feed_helper.rb +111 -0
- data/vendor/plugins/atom_feed_helper/test/atom_feed_helper_test.rb +8 -0
- data/vendor/plugins/attachment_fu/CHANGELOG +35 -0
- data/vendor/plugins/attachment_fu/README +186 -0
- data/vendor/plugins/attachment_fu/Rakefile +22 -0
- data/vendor/plugins/attachment_fu/amazon_s3.yml.tpl +14 -0
- data/vendor/plugins/attachment_fu/init.rb +16 -0
- data/vendor/plugins/attachment_fu/install.rb +5 -0
- data/vendor/plugins/attachment_fu/lib/geometry.rb +93 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb +473 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/db_file_backend.rb +39 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/file_system_backend.rb +101 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb +303 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/core_image_processor.rb +59 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/gd2_processor.rb +54 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/image_science_processor.rb +61 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/mini_magick_processor.rb +59 -0
- data/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/processors/rmagick_processor.rb +54 -0
- data/vendor/plugins/attachment_fu/test/backends/db_file_test.rb +16 -0
- data/vendor/plugins/attachment_fu/test/backends/file_system_test.rb +80 -0
- data/vendor/plugins/attachment_fu/test/backends/remote/s3_test.rb +107 -0
- data/vendor/plugins/attachment_fu/test/base_attachment_tests.rb +77 -0
- data/vendor/plugins/attachment_fu/test/basic_test.rb +70 -0
- data/vendor/plugins/attachment_fu/test/database.yml +18 -0
- data/vendor/plugins/attachment_fu/test/extra_attachment_test.rb +67 -0
- data/vendor/plugins/attachment_fu/test/fixtures/attachment.rb +148 -0
- data/vendor/plugins/attachment_fu/test/fixtures/files/fake/rails.png +0 -0
- data/vendor/plugins/attachment_fu/test/fixtures/files/foo.txt +1 -0
- data/vendor/plugins/attachment_fu/test/fixtures/files/rails.png +0 -0
- data/vendor/plugins/attachment_fu/test/geometry_test.rb +101 -0
- data/vendor/plugins/attachment_fu/test/processors/core_image_test.rb +37 -0
- data/vendor/plugins/attachment_fu/test/processors/gd2_test.rb +31 -0
- data/vendor/plugins/attachment_fu/test/processors/image_science_test.rb +31 -0
- data/vendor/plugins/attachment_fu/test/processors/mini_magick_test.rb +31 -0
- data/vendor/plugins/attachment_fu/test/processors/rmagick_test.rb +255 -0
- data/vendor/plugins/attachment_fu/test/schema.rb +108 -0
- data/vendor/plugins/attachment_fu/test/test_helper.rb +150 -0
- data/vendor/plugins/attachment_fu/test/validation_test.rb +55 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/color.rb +27 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/effects.rb +31 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/perspective.rb +25 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/quality.rb +25 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/scale.rb +47 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/filters/watermark.rb +32 -0
- data/vendor/plugins/attachment_fu/vendor/red_artisan/core_image/processor.rb +123 -0
- data/vendor/plugins/mimetype-fu/MIT-LICENSE +20 -0
- data/vendor/plugins/mimetype-fu/README +16 -0
- data/vendor/plugins/mimetype-fu/Rakefile +22 -0
- data/vendor/plugins/mimetype-fu/init.rb +2 -0
- data/vendor/plugins/mimetype-fu/install.rb +1 -0
- data/vendor/plugins/mimetype-fu/lib/extensions_const.rb +1 -0
- data/vendor/plugins/mimetype-fu/lib/mime_types.yml +776 -0
- data/vendor/plugins/mimetype-fu/lib/mimetype_fu.rb +35 -0
- data/vendor/plugins/mimetype-fu/spec/fixtures/file.jpg +0 -0
- data/vendor/plugins/mimetype-fu/spec/fixtures/file.rb +0 -0
- data/vendor/plugins/mimetype-fu/spec/fixtures/file.unknown +0 -0
- data/vendor/plugins/mimetype-fu/spec/mime_type_spec.rb +57 -0
- data/vendor/plugins/mimetype-fu/spec/spec_helper.rb +4 -0
- data/vendor/plugins/mimetype-fu/tasks/mimetype_fu_tasks.rake +4 -0
- data/vendor/plugins/mimetype-fu/test/mimetype_fu_test.rb +8 -0
- data/vendor/plugins/mimetype-fu/uninstall.rb +1 -0
- data/vendor/plugins/rspec-rails/History.txt +57 -0
- data/vendor/plugins/rspec-rails/Manifest.txt +158 -0
- data/vendor/plugins/rspec-rails/README.txt +81 -0
- data/vendor/plugins/rspec-rails/Rakefile +39 -0
- data/vendor/plugins/rspec-rails/UPGRADE +7 -0
- data/vendor/plugins/rspec-rails/generators/rspec/CHANGES +1 -0
- data/vendor/plugins/rspec-rails/generators/rspec/rspec_generator.rb +40 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/all_stories.rb +4 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/previous_failures.txt +0 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/rcov.opts +2 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/rspec.rake +132 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/script/autospec +3 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/script/spec +4 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/script/spec_server +116 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/spec.opts +4 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/spec_helper.rb +47 -0
- data/vendor/plugins/rspec-rails/generators/rspec/templates/stories_helper.rb +3 -0
- data/vendor/plugins/rspec-rails/generators/rspec_controller/USAGE +33 -0
- data/vendor/plugins/rspec-rails/generators/rspec_controller/rspec_controller_generator.rb +49 -0
- data/vendor/plugins/rspec-rails/generators/rspec_controller/templates/controller_spec.rb +25 -0
- data/vendor/plugins/rspec-rails/generators/rspec_controller/templates/helper_spec.rb +11 -0
- data/vendor/plugins/rspec-rails/generators/rspec_controller/templates/view_spec.rb +12 -0
- data/vendor/plugins/rspec-rails/generators/rspec_default_values.rb +19 -0
- data/vendor/plugins/rspec-rails/generators/rspec_model/USAGE +18 -0
- data/vendor/plugins/rspec-rails/generators/rspec_model/rspec_model_generator.rb +35 -0
- data/vendor/plugins/rspec-rails/generators/rspec_model/templates/model_spec.rb +15 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/rspec_scaffold_generator.rb +154 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/controller_spec.rb +173 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/edit_erb_spec.rb +26 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/helper_spec.rb +11 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/index_erb_spec.rb +27 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/new_erb_spec.rb +26 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/routing_spec.rb +59 -0
- data/vendor/plugins/rspec-rails/generators/rspec_scaffold/templates/show_erb_spec.rb +23 -0
- data/vendor/plugins/rspec-rails/init.rb +9 -0
- data/vendor/plugins/rspec-rails/lib/autotest/discover.rb +1 -0
- data/vendor/plugins/rspec-rails/lib/autotest/rails_rspec.rb +76 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails.rb +15 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example.rb +47 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/assigns_hash_proxy.rb +43 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/controller_example_group.rb +256 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/cookies_proxy.rb +25 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/functional_example_group.rb +87 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/helper_example_group.rb +166 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/model_example_group.rb +14 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/rails_example_group.rb +33 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/render_observer.rb +93 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/example/view_example_group.rb +183 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions.rb +12 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/action_controller/base.rb +14 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/action_controller/rescue.rb +21 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/action_controller/test_response.rb +11 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/action_view/base.rb +31 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/active_record/base.rb +30 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/object.rb +5 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/spec/example/configuration.rb +71 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/extensions/spec/matchers/have.rb +21 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/interop/testcase.rb +14 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers.rb +31 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/assert_select.rb +131 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/change.rb +11 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/have_text.rb +57 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/include_text.rb +54 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/redirect_to.rb +113 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/matchers/render_template.rb +90 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/mocks.rb +132 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/story_adapter.rb +79 -0
- data/vendor/plugins/rspec-rails/lib/spec/rails/version.rb +15 -0
- data/vendor/plugins/rspec-rails/output_buffer_fix.diff +34 -0
- data/vendor/plugins/rspec-rails/rspec-rails.gemspec +35 -0
- data/vendor/plugins/rspec-rails/spec/rails/autotest/mappings_spec.rb +36 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/assigns_hash_proxy_spec.rb +65 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/configuration_spec.rb +83 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/controller_isolation_spec.rb +62 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/controller_spec_spec.rb +272 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/cookies_proxy_spec.rb +74 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/example_group_factory_spec.rb +112 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/helper_spec_spec.rb +161 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/model_spec_spec.rb +18 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/shared_behaviour_spec.rb +16 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/test_unit_assertion_accessibility_spec.rb +33 -0
- data/vendor/plugins/rspec-rails/spec/rails/example/view_spec_spec.rb +280 -0
- data/vendor/plugins/rspec-rails/spec/rails/extensions/action_controller_rescue_action_spec.rb +54 -0
- data/vendor/plugins/rspec-rails/spec/rails/extensions/action_view_base_spec.rb +48 -0
- data/vendor/plugins/rspec-rails/spec/rails/extensions/active_record_spec.rb +14 -0
- data/vendor/plugins/rspec-rails/spec/rails/interop/testcase_spec.rb +66 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/assert_select_spec.rb +814 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/description_generation_spec.rb +37 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/errors_on_spec.rb +13 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/have_text_spec.rb +62 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/include_text_spec.rb +64 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/redirect_to_spec.rb +209 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/render_template_spec.rb +176 -0
- data/vendor/plugins/rspec-rails/spec/rails/matchers/should_change_spec.rb +15 -0
- data/vendor/plugins/rspec-rails/spec/rails/mocks/ar_classes.rb +10 -0
- data/vendor/plugins/rspec-rails/spec/rails/mocks/mock_model_spec.rb +106 -0
- data/vendor/plugins/rspec-rails/spec/rails/mocks/stub_model_spec.rb +80 -0
- data/vendor/plugins/rspec-rails/spec/rails/sample_modified_fixture.rb +8 -0
- data/vendor/plugins/rspec-rails/spec/rails/sample_spec.rb +8 -0
- data/vendor/plugins/rspec-rails/spec/rails/spec_server_spec.rb +96 -0
- data/vendor/plugins/rspec-rails/spec/rails/spec_spec.rb +11 -0
- data/vendor/plugins/rspec-rails/spec/rails_suite.rb +7 -0
- data/vendor/plugins/rspec-rails/spec/spec_helper.rb +57 -0
- data/vendor/plugins/rspec-rails/spec_resources/controllers/action_view_base_spec_controller.rb +2 -0
- data/vendor/plugins/rspec-rails/spec_resources/controllers/controller_spec_controller.rb +94 -0
- data/vendor/plugins/rspec-rails/spec_resources/controllers/redirect_spec_controller.rb +59 -0
- data/vendor/plugins/rspec-rails/spec_resources/controllers/render_spec_controller.rb +30 -0
- data/vendor/plugins/rspec-rails/spec_resources/controllers/rjs_spec_controller.rb +58 -0
- data/vendor/plugins/rspec-rails/spec_resources/helpers/explicit_helper.rb +38 -0
- data/vendor/plugins/rspec-rails/spec_resources/helpers/more_explicit_helper.rb +5 -0
- data/vendor/plugins/rspec-rails/spec_resources/helpers/plugin_application_helper.rb +6 -0
- data/vendor/plugins/rspec-rails/spec_resources/helpers/view_spec_helper.rb +13 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/_partial.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/action_setting_flash_after_session_reset.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/action_setting_flash_before_session_reset.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/action_setting_the_assigns_hash.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/action_with_errors_in_template.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/controller_spec/action_with_template.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/layouts/application.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/layouts/simple.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/objects/_object.html.erb +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/render_spec/_a_partial.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/render_spec/action_with_alternate_layout.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/render_spec/some_action.js.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/render_spec/some_action.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/render_spec/some_action.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/_replacement_partial.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/hide_div.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/hide_page_element.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/insert_html.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/replace.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/replace_html.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/replace_html_with_partial.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/visual_effect.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/rjs_spec/visual_toggle_effect.rjs +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/tag_spec/no_tags.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/tag_spec/single_div_with_no_attributes.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/tag_spec/single_div_with_one_attribute.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/_partial.rhtml +2 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/_partial_used_twice.rhtml +0 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/_partial_with_local_variable.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/_partial_with_sub_partial.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/_spacer.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/accessor.rhtml +5 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/block_helper.rhtml +3 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/entry_form.rhtml +2 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/explicit_helper.rhtml +2 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/foo/show.rhtml +1 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/implicit_helper.rhtml +2 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/multiple_helpers.rhtml +3 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/should_not_receive.rhtml +3 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/template_with_partial.rhtml +5 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/template_with_partial_using_collection.rhtml +3 -0
- data/vendor/plugins/rspec-rails/spec_resources/views/view_spec/template_with_partial_with_array.rhtml +1 -0
- data/vendor/plugins/rspec-rails/stories/all.rb +10 -0
- data/vendor/plugins/rspec-rails/stories/configuration/stories.rb +5 -0
- data/vendor/plugins/rspec-rails/stories/helper.rb +6 -0
- data/vendor/plugins/rspec-rails/stories/steps/people.rb +8 -0
- data/vendor/plugins/rspec-rails/stories/transactions_should_rollback +15 -0
- data/vendor/plugins/rspec-rails/stories/transactions_should_rollback.rb +25 -0
- data/vendor/plugins/rspec/.autotest +3 -0
- data/vendor/plugins/rspec/History.txt +1132 -0
- data/vendor/plugins/rspec/Manifest.txt +403 -0
- data/vendor/plugins/rspec/README.txt +63 -0
- data/vendor/plugins/rspec/Rakefile +89 -0
- data/vendor/plugins/rspec/TODO.txt +1 -0
- data/vendor/plugins/rspec/bin/autospec +4 -0
- data/vendor/plugins/rspec/bin/spec +4 -0
- data/vendor/plugins/rspec/examples/pure/autogenerated_docstrings_example.rb +19 -0
- data/vendor/plugins/rspec/examples/pure/before_and_after_example.rb +40 -0
- data/vendor/plugins/rspec/examples/pure/behave_as_example.rb +45 -0
- data/vendor/plugins/rspec/examples/pure/custom_expectation_matchers.rb +54 -0
- data/vendor/plugins/rspec/examples/pure/custom_formatter.rb +12 -0
- data/vendor/plugins/rspec/examples/pure/dynamic_spec.rb +9 -0
- data/vendor/plugins/rspec/examples/pure/file_accessor.rb +19 -0
- data/vendor/plugins/rspec/examples/pure/file_accessor_spec.rb +38 -0
- data/vendor/plugins/rspec/examples/pure/greeter_spec.rb +31 -0
- data/vendor/plugins/rspec/examples/pure/helper_method_example.rb +14 -0
- data/vendor/plugins/rspec/examples/pure/io_processor.rb +8 -0
- data/vendor/plugins/rspec/examples/pure/io_processor_spec.rb +21 -0
- data/vendor/plugins/rspec/examples/pure/legacy_spec.rb +11 -0
- data/vendor/plugins/rspec/examples/pure/mocking_example.rb +27 -0
- data/vendor/plugins/rspec/examples/pure/multi_threaded_behaviour_runner.rb +28 -0
- data/vendor/plugins/rspec/examples/pure/nested_classes_example.rb +36 -0
- data/vendor/plugins/rspec/examples/pure/partial_mock_example.rb +29 -0
- data/vendor/plugins/rspec/examples/pure/pending_example.rb +20 -0
- data/vendor/plugins/rspec/examples/pure/predicate_example.rb +27 -0
- data/vendor/plugins/rspec/examples/pure/priority.txt +1 -0
- data/vendor/plugins/rspec/examples/pure/shared_example_group_example.rb +81 -0
- data/vendor/plugins/rspec/examples/pure/shared_stack_examples.rb +38 -0
- data/vendor/plugins/rspec/examples/pure/spec_helper.rb +3 -0
- data/vendor/plugins/rspec/examples/pure/stack.rb +36 -0
- data/vendor/plugins/rspec/examples/pure/stack_spec.rb +63 -0
- data/vendor/plugins/rspec/examples/pure/stack_spec_with_nested_example_groups.rb +67 -0
- data/vendor/plugins/rspec/examples/pure/stubbing_example.rb +69 -0
- data/vendor/plugins/rspec/examples/pure/yielding_example.rb +33 -0
- data/vendor/plugins/rspec/examples/stories/adder.rb +13 -0
- data/vendor/plugins/rspec/examples/stories/addition +34 -0
- data/vendor/plugins/rspec/examples/stories/addition.rb +9 -0
- data/vendor/plugins/rspec/examples/stories/calculator.rb +65 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/.loadpath +5 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/README.txt +21 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/everything.rb +6 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/examples.rb +3 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/game_behaviour.rb +35 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/examples/grid_behaviour.rb +66 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/CellsWithLessThanTwoNeighboursDie.story +21 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/CellsWithMoreThanThreeNeighboursDie.story +21 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/EmptySpacesWithThreeNeighboursCreateACell.story +42 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/ICanCreateACell.story +42 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/ICanKillACell.story +17 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/TheGridWraps.story +53 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/create_a_cell.rb +52 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/helper.rb +6 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/kill_a_cell.rb +26 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/steps.rb +5 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/stories.rb +3 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/behaviour/stories/stories.txt +22 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/life.rb +3 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/life/game.rb +23 -0
- data/vendor/plugins/rspec/examples/stories/game-of-life/life/grid.rb +43 -0
- data/vendor/plugins/rspec/examples/stories/helper.rb +9 -0
- data/vendor/plugins/rspec/examples/stories/steps/addition_steps.rb +18 -0
- data/vendor/plugins/rspec/failing_examples/README.txt +7 -0
- data/vendor/plugins/rspec/failing_examples/diffing_spec.rb +36 -0
- data/vendor/plugins/rspec/failing_examples/failing_autogenerated_docstrings_example.rb +19 -0
- data/vendor/plugins/rspec/failing_examples/failure_in_setup.rb +10 -0
- data/vendor/plugins/rspec/failing_examples/failure_in_teardown.rb +10 -0
- data/vendor/plugins/rspec/failing_examples/mocking_example.rb +40 -0
- data/vendor/plugins/rspec/failing_examples/mocking_with_flexmock.rb +26 -0
- data/vendor/plugins/rspec/failing_examples/mocking_with_mocha.rb +25 -0
- data/vendor/plugins/rspec/failing_examples/mocking_with_rr.rb +27 -0
- data/vendor/plugins/rspec/failing_examples/partial_mock_example.rb +20 -0
- data/vendor/plugins/rspec/failing_examples/predicate_example.rb +29 -0
- data/vendor/plugins/rspec/failing_examples/raising_example.rb +47 -0
- data/vendor/plugins/rspec/failing_examples/spec_helper.rb +3 -0
- data/vendor/plugins/rspec/failing_examples/syntax_error_example.rb +7 -0
- data/vendor/plugins/rspec/failing_examples/team_spec.rb +44 -0
- data/vendor/plugins/rspec/failing_examples/timeout_behaviour.rb +7 -0
- data/vendor/plugins/rspec/init.rb +9 -0
- data/vendor/plugins/rspec/lib/autotest/discover.rb +3 -0
- data/vendor/plugins/rspec/lib/autotest/rspec.rb +46 -0
- data/vendor/plugins/rspec/lib/spec.rb +28 -0
- data/vendor/plugins/rspec/lib/spec/adapters.rb +1 -0
- data/vendor/plugins/rspec/lib/spec/adapters/ruby_engine.rb +26 -0
- data/vendor/plugins/rspec/lib/spec/adapters/ruby_engine/mri.rb +8 -0
- data/vendor/plugins/rspec/lib/spec/adapters/ruby_engine/rubinius.rb +8 -0
- data/vendor/plugins/rspec/lib/spec/example.rb +12 -0
- data/vendor/plugins/rspec/lib/spec/example/configuration.rb +158 -0
- data/vendor/plugins/rspec/lib/spec/example/errors.rb +15 -0
- data/vendor/plugins/rspec/lib/spec/example/example_group.rb +17 -0
- data/vendor/plugins/rspec/lib/spec/example/example_group_factory.rb +64 -0
- data/vendor/plugins/rspec/lib/spec/example/example_group_methods.rb +440 -0
- data/vendor/plugins/rspec/lib/spec/example/example_matcher.rb +44 -0
- data/vendor/plugins/rspec/lib/spec/example/example_methods.rb +107 -0
- data/vendor/plugins/rspec/lib/spec/example/module_inclusion_warnings.rb +38 -0
- data/vendor/plugins/rspec/lib/spec/example/module_reopening_fix.rb +21 -0
- data/vendor/plugins/rspec/lib/spec/example/pending.rb +18 -0
- data/vendor/plugins/rspec/lib/spec/example/shared_example_group.rb +58 -0
- data/vendor/plugins/rspec/lib/spec/expectations.rb +56 -0
- data/vendor/plugins/rspec/lib/spec/expectations/differs/default.rb +66 -0
- data/vendor/plugins/rspec/lib/spec/expectations/errors.rb +12 -0
- data/vendor/plugins/rspec/lib/spec/expectations/extensions.rb +2 -0
- data/vendor/plugins/rspec/lib/spec/expectations/extensions/object.rb +63 -0
- data/vendor/plugins/rspec/lib/spec/expectations/extensions/string_and_symbol.rb +17 -0
- data/vendor/plugins/rspec/lib/spec/expectations/handler.rb +52 -0
- data/vendor/plugins/rspec/lib/spec/extensions.rb +4 -0
- data/vendor/plugins/rspec/lib/spec/extensions/class.rb +24 -0
- data/vendor/plugins/rspec/lib/spec/extensions/main.rb +87 -0
- data/vendor/plugins/rspec/lib/spec/extensions/metaclass.rb +7 -0
- data/vendor/plugins/rspec/lib/spec/extensions/object.rb +6 -0
- data/vendor/plugins/rspec/lib/spec/interop/test.rb +12 -0
- data/vendor/plugins/rspec/lib/spec/interop/test/unit/autorunner.rb +6 -0
- data/vendor/plugins/rspec/lib/spec/interop/test/unit/testcase.rb +61 -0
- data/vendor/plugins/rspec/lib/spec/interop/test/unit/testresult.rb +6 -0
- data/vendor/plugins/rspec/lib/spec/interop/test/unit/testsuite_adapter.rb +34 -0
- data/vendor/plugins/rspec/lib/spec/interop/test/unit/ui/console/testrunner.rb +61 -0
- data/vendor/plugins/rspec/lib/spec/matchers.rb +162 -0
- data/vendor/plugins/rspec/lib/spec/matchers/be.rb +221 -0
- data/vendor/plugins/rspec/lib/spec/matchers/be_close.rb +37 -0
- data/vendor/plugins/rspec/lib/spec/matchers/change.rb +148 -0
- data/vendor/plugins/rspec/lib/spec/matchers/eql.rb +43 -0
- data/vendor/plugins/rspec/lib/spec/matchers/equal.rb +43 -0
- data/vendor/plugins/rspec/lib/spec/matchers/exist.rb +17 -0
- data/vendor/plugins/rspec/lib/spec/matchers/has.rb +34 -0
- data/vendor/plugins/rspec/lib/spec/matchers/have.rb +150 -0
- data/vendor/plugins/rspec/lib/spec/matchers/include.rb +70 -0
- data/vendor/plugins/rspec/lib/spec/matchers/match.rb +41 -0
- data/vendor/plugins/rspec/lib/spec/matchers/operator_matcher.rb +79 -0
- data/vendor/plugins/rspec/lib/spec/matchers/raise_error.rb +132 -0
- data/vendor/plugins/rspec/lib/spec/matchers/respond_to.rb +45 -0
- data/vendor/plugins/rspec/lib/spec/matchers/satisfy.rb +47 -0
- data/vendor/plugins/rspec/lib/spec/matchers/simple_matcher.rb +132 -0
- data/vendor/plugins/rspec/lib/spec/matchers/throw_symbol.rb +74 -0
- data/vendor/plugins/rspec/lib/spec/mocks.rb +211 -0
- data/vendor/plugins/rspec/lib/spec/mocks/argument_constraints.rb +185 -0
- data/vendor/plugins/rspec/lib/spec/mocks/argument_expectation.rb +71 -0
- data/vendor/plugins/rspec/lib/spec/mocks/error_generator.rb +84 -0
- data/vendor/plugins/rspec/lib/spec/mocks/errors.rb +10 -0
- data/vendor/plugins/rspec/lib/spec/mocks/extensions.rb +1 -0
- data/vendor/plugins/rspec/lib/spec/mocks/extensions/object.rb +3 -0
- data/vendor/plugins/rspec/lib/spec/mocks/framework.rb +15 -0
- data/vendor/plugins/rspec/lib/spec/mocks/message_expectation.rb +316 -0
- data/vendor/plugins/rspec/lib/spec/mocks/methods.rb +51 -0
- data/vendor/plugins/rspec/lib/spec/mocks/mock.rb +56 -0
- data/vendor/plugins/rspec/lib/spec/mocks/order_group.rb +29 -0
- data/vendor/plugins/rspec/lib/spec/mocks/proxy.rb +225 -0
- data/vendor/plugins/rspec/lib/spec/mocks/space.rb +28 -0
- data/vendor/plugins/rspec/lib/spec/mocks/spec_methods.rb +46 -0
- data/vendor/plugins/rspec/lib/spec/rake/spectask.rb +227 -0
- data/vendor/plugins/rspec/lib/spec/rake/verify_rcov.rb +52 -0
- data/vendor/plugins/rspec/lib/spec/runner.rb +214 -0
- data/vendor/plugins/rspec/lib/spec/runner/backtrace_tweaker.rb +56 -0
- data/vendor/plugins/rspec/lib/spec/runner/class_and_arguments_parser.rb +16 -0
- data/vendor/plugins/rspec/lib/spec/runner/command_line.rb +17 -0
- data/vendor/plugins/rspec/lib/spec/runner/drb_command_line.rb +20 -0
- data/vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb +59 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/base_formatter.rb +79 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/base_text_formatter.rb +126 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_example_groups_formatter.rb +27 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/failing_examples_formatter.rb +20 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/html_formatter.rb +337 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/nested_text_formatter.rb +65 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/profile_formatter.rb +51 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/progress_bar_formatter.rb +34 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/snippet_extractor.rb +52 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/specdoc_formatter.rb +39 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/story/html_formatter.rb +174 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/story/plain_text_formatter.rb +194 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/story/progress_bar_formatter.rb +42 -0
- data/vendor/plugins/rspec/lib/spec/runner/formatter/text_mate_formatter.rb +16 -0
- data/vendor/plugins/rspec/lib/spec/runner/heckle_runner.rb +72 -0
- data/vendor/plugins/rspec/lib/spec/runner/heckle_runner_unsupported.rb +10 -0
- data/vendor/plugins/rspec/lib/spec/runner/option_parser.rb +204 -0
- data/vendor/plugins/rspec/lib/spec/runner/options.rb +318 -0
- data/vendor/plugins/rspec/lib/spec/runner/reporter.rb +167 -0
- data/vendor/plugins/rspec/lib/spec/runner/spec_parser.rb +71 -0
- data/vendor/plugins/rspec/lib/spec/story.rb +10 -0
- data/vendor/plugins/rspec/lib/spec/story/extensions.rb +3 -0
- data/vendor/plugins/rspec/lib/spec/story/extensions/main.rb +86 -0
- data/vendor/plugins/rspec/lib/spec/story/extensions/regexp.rb +9 -0
- data/vendor/plugins/rspec/lib/spec/story/extensions/string.rb +9 -0
- data/vendor/plugins/rspec/lib/spec/story/given_scenario.rb +14 -0
- data/vendor/plugins/rspec/lib/spec/story/runner.rb +59 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/plain_text_story_runner.rb +48 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/scenario_collector.rb +18 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/scenario_runner.rb +54 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/story_mediator.rb +137 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/story_parser.rb +247 -0
- data/vendor/plugins/rspec/lib/spec/story/runner/story_runner.rb +70 -0
- data/vendor/plugins/rspec/lib/spec/story/scenario.rb +14 -0
- data/vendor/plugins/rspec/lib/spec/story/step.rb +70 -0
- data/vendor/plugins/rspec/lib/spec/story/step_group.rb +89 -0
- data/vendor/plugins/rspec/lib/spec/story/step_mother.rb +38 -0
- data/vendor/plugins/rspec/lib/spec/story/story.rb +39 -0
- data/vendor/plugins/rspec/lib/spec/story/world.rb +128 -0
- data/vendor/plugins/rspec/lib/spec/version.rb +13 -0
- data/vendor/plugins/rspec/plugins/mock_frameworks/flexmock.rb +23 -0
- data/vendor/plugins/rspec/plugins/mock_frameworks/mocha.rb +19 -0
- data/vendor/plugins/rspec/plugins/mock_frameworks/rr.rb +21 -0
- data/vendor/plugins/rspec/plugins/mock_frameworks/rspec.rb +20 -0
- data/vendor/plugins/rspec/rake_tasks/examples.rake +7 -0
- data/vendor/plugins/rspec/rake_tasks/examples_with_rcov.rake +9 -0
- data/vendor/plugins/rspec/rake_tasks/failing_examples_with_html.rake +9 -0
- data/vendor/plugins/rspec/rake_tasks/verify_rcov.rake +7 -0
- data/vendor/plugins/rspec/rspec.gemspec +33 -0
- data/vendor/plugins/rspec/spec/README.jruby +15 -0
- data/vendor/plugins/rspec/spec/autotest/discover_spec.rb +19 -0
- data/vendor/plugins/rspec/spec/autotest/rspec_spec.rb +146 -0
- data/vendor/plugins/rspec/spec/autotest_helper.rb +6 -0
- data/vendor/plugins/rspec/spec/autotest_matchers.rb +47 -0
- data/vendor/plugins/rspec/spec/rspec_suite.rb +7 -0
- data/vendor/plugins/rspec/spec/ruby_forker.rb +13 -0
- data/vendor/plugins/rspec/spec/spec.opts +6 -0
- data/vendor/plugins/rspec/spec/spec/adapters/ruby_engine_spec.rb +16 -0
- data/vendor/plugins/rspec/spec/spec/example/base_formatter_spec.rb +112 -0
- data/vendor/plugins/rspec/spec/spec/example/configuration_spec.rb +282 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group/described_module_spec.rb +20 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group/warning_messages_spec.rb +76 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group_class_definition_spec.rb +48 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group_factory_spec.rb +144 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group_methods_spec.rb +574 -0
- data/vendor/plugins/rspec/spec/spec/example/example_group_spec.rb +724 -0
- data/vendor/plugins/rspec/spec/spec/example/example_matcher_spec.rb +96 -0
- data/vendor/plugins/rspec/spec/spec/example/example_methods_spec.rb +130 -0
- data/vendor/plugins/rspec/spec/spec/example/example_runner_spec.rb +194 -0
- data/vendor/plugins/rspec/spec/spec/example/nested_example_group_spec.rb +71 -0
- data/vendor/plugins/rspec/spec/spec/example/pending_module_spec.rb +69 -0
- data/vendor/plugins/rspec/spec/spec/example/predicate_matcher_spec.rb +21 -0
- data/vendor/plugins/rspec/spec/spec/example/shared_example_group_spec.rb +265 -0
- data/vendor/plugins/rspec/spec/spec/example/subclassing_example_group_spec.rb +25 -0
- data/vendor/plugins/rspec/spec/spec/expectations/differs/default_spec.rb +127 -0
- data/vendor/plugins/rspec/spec/spec/expectations/extensions/object_spec.rb +95 -0
- data/vendor/plugins/rspec/spec/spec/expectations/fail_with_spec.rb +71 -0
- data/vendor/plugins/rspec/spec/spec/extensions/main_spec.rb +71 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_fails.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_that_passes.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/spec_with_errors.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_fails.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_that_passes.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/test_case_with_errors.rb +10 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/resources/testsuite_adapter_spec_with_test_unit.rb +38 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/spec_spec.rb +45 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/test_unit_spec_helper.rb +14 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/testcase_spec.rb +45 -0
- data/vendor/plugins/rspec/spec/spec/interop/test/unit/testsuite_adapter_spec.rb +9 -0
- data/vendor/plugins/rspec/spec/spec/matchers/be_close_spec.rb +39 -0
- data/vendor/plugins/rspec/spec/spec/matchers/be_spec.rb +248 -0
- data/vendor/plugins/rspec/spec/spec/matchers/change_spec.rb +329 -0
- data/vendor/plugins/rspec/spec/spec/matchers/description_generation_spec.rb +153 -0
- data/vendor/plugins/rspec/spec/spec/matchers/eql_spec.rb +28 -0
- data/vendor/plugins/rspec/spec/spec/matchers/equal_spec.rb +28 -0
- data/vendor/plugins/rspec/spec/spec/matchers/exist_spec.rb +57 -0
- data/vendor/plugins/rspec/spec/spec/matchers/handler_spec.rb +150 -0
- data/vendor/plugins/rspec/spec/spec/matchers/has_spec.rb +63 -0
- data/vendor/plugins/rspec/spec/spec/matchers/have_spec.rb +394 -0
- data/vendor/plugins/rspec/spec/spec/matchers/include_spec.rb +45 -0
- data/vendor/plugins/rspec/spec/spec/matchers/match_spec.rb +37 -0
- data/vendor/plugins/rspec/spec/spec/matchers/matcher_methods_spec.rb +78 -0
- data/vendor/plugins/rspec/spec/spec/matchers/mock_constraint_matchers_spec.rb +24 -0
- data/vendor/plugins/rspec/spec/spec/matchers/operator_matcher_spec.rb +191 -0
- data/vendor/plugins/rspec/spec/spec/matchers/raise_error_spec.rb +315 -0
- data/vendor/plugins/rspec/spec/spec/matchers/respond_to_spec.rb +54 -0
- data/vendor/plugins/rspec/spec/spec/matchers/satisfy_spec.rb +36 -0
- data/vendor/plugins/rspec/spec/spec/matchers/simple_matcher_spec.rb +93 -0
- data/vendor/plugins/rspec/spec/spec/matchers/throw_symbol_spec.rb +54 -0
- data/vendor/plugins/rspec/spec/spec/mocks/any_number_of_times_spec.rb +36 -0
- data/vendor/plugins/rspec/spec/spec/mocks/argument_expectation_spec.rb +23 -0
- data/vendor/plugins/rspec/spec/spec/mocks/at_least_spec.rb +97 -0
- data/vendor/plugins/rspec/spec/spec/mocks/at_most_spec.rb +93 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10260_spec.rb +8 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_10263_spec.rb +24 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_11545_spec.rb +33 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_15719_spec.rb +30 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_496.rb +17 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7611_spec.rb +19 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_7805_spec.rb +22 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8165_spec.rb +31 -0
- data/vendor/plugins/rspec/spec/spec/mocks/bug_report_8302_spec.rb +26 -0
- data/vendor/plugins/rspec/spec/spec/mocks/failing_mock_argument_constraints_spec.rb +129 -0
- data/vendor/plugins/rspec/spec/spec/mocks/hash_including_matcher_spec.rb +53 -0
- data/vendor/plugins/rspec/spec/spec/mocks/mock_ordering_spec.rb +84 -0
- data/vendor/plugins/rspec/spec/spec/mocks/mock_space_spec.rb +54 -0
- data/vendor/plugins/rspec/spec/spec/mocks/mock_spec.rb +539 -0
- data/vendor/plugins/rspec/spec/spec/mocks/multiple_return_value_spec.rb +113 -0
- data/vendor/plugins/rspec/spec/spec/mocks/nil_expectation_warning_spec.rb +54 -0
- data/vendor/plugins/rspec/spec/spec/mocks/null_object_mock_spec.rb +54 -0
- data/vendor/plugins/rspec/spec/spec/mocks/once_counts_spec.rb +53 -0
- data/vendor/plugins/rspec/spec/spec/mocks/options_hash_spec.rb +35 -0
- data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_spec.rb +144 -0
- data/vendor/plugins/rspec/spec/spec/mocks/partial_mock_using_mocks_directly_spec.rb +66 -0
- data/vendor/plugins/rspec/spec/spec/mocks/passing_mock_argument_constraints_spec.rb +174 -0
- data/vendor/plugins/rspec/spec/spec/mocks/precise_counts_spec.rb +52 -0
- data/vendor/plugins/rspec/spec/spec/mocks/record_messages_spec.rb +26 -0
- data/vendor/plugins/rspec/spec/spec/mocks/stub_spec.rb +188 -0
- data/vendor/plugins/rspec/spec/spec/mocks/twice_counts_spec.rb +67 -0
- data/vendor/plugins/rspec/spec/spec/package/bin_spec_spec.rb +14 -0
- data/vendor/plugins/rspec/spec/spec/runner/class_and_argument_parser_spec.rb +23 -0
- data/vendor/plugins/rspec/spec/spec/runner/command_line_spec.rb +140 -0
- data/vendor/plugins/rspec/spec/spec/runner/drb_command_line_spec.rb +99 -0
- data/vendor/plugins/rspec/spec/spec/runner/empty_file.txt +0 -0
- data/vendor/plugins/rspec/spec/spec/runner/examples.txt +2 -0
- data/vendor/plugins/rspec/spec/spec/runner/failed.txt +3 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_example_groups_formatter_spec.rb +45 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/failing_examples_formatter_spec.rb +33 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.4.html +365 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5-jruby.html +387 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.5.html +371 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6-jruby.html +381 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatted-1.8.6.html +370 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/html_formatter_spec.rb +64 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/nested_text_formatter_spec.rb +333 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/profile_formatter_spec.rb +65 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/progress_bar_formatter_spec.rb +155 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/snippet_extractor_spec.rb +18 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/spec_mate_formatter_spec.rb +104 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/specdoc_formatter_spec.rb +158 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/story/html_formatter_spec.rb +135 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/story/plain_text_formatter_spec.rb +600 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/story/progress_bar_formatter_spec.rb +82 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/text_mate_formatted-1.8.4.html +365 -0
- data/vendor/plugins/rspec/spec/spec/runner/formatter/text_mate_formatted-1.8.6.html +370 -0
- data/vendor/plugins/rspec/spec/spec/runner/heckle_runner_spec.rb +78 -0
- data/vendor/plugins/rspec/spec/spec/runner/heckler_spec.rb +13 -0
- data/vendor/plugins/rspec/spec/spec/runner/noisy_backtrace_tweaker_spec.rb +45 -0
- data/vendor/plugins/rspec/spec/spec/runner/option_parser_spec.rb +409 -0
- data/vendor/plugins/rspec/spec/spec/runner/options_spec.rb +450 -0
- data/vendor/plugins/rspec/spec/spec/runner/output_one_time_fixture.rb +7 -0
- data/vendor/plugins/rspec/spec/spec/runner/output_one_time_fixture_runner.rb +8 -0
- data/vendor/plugins/rspec/spec/spec/runner/output_one_time_spec.rb +16 -0
- data/vendor/plugins/rspec/spec/spec/runner/quiet_backtrace_tweaker_spec.rb +62 -0
- data/vendor/plugins/rspec/spec/spec/runner/reporter_spec.rb +238 -0
- data/vendor/plugins/rspec/spec/spec/runner/resources/a_bar.rb +0 -0
- data/vendor/plugins/rspec/spec/spec/runner/resources/a_foo.rb +0 -0
- data/vendor/plugins/rspec/spec/spec/runner/resources/a_spec.rb +1 -0
- data/vendor/plugins/rspec/spec/spec/runner/spec.opts +2 -0
- data/vendor/plugins/rspec/spec/spec/runner/spec_drb.opts +1 -0
- data/vendor/plugins/rspec/spec/spec/runner/spec_parser/spec_parser_fixture.rb +70 -0
- data/vendor/plugins/rspec/spec/spec/runner/spec_parser_spec.rb +85 -0
- data/vendor/plugins/rspec/spec/spec/runner/spec_spaced.opts +2 -0
- data/vendor/plugins/rspec/spec/spec/runner_spec.rb +11 -0
- data/vendor/plugins/rspec/spec/spec/spec_classes.rb +133 -0
- data/vendor/plugins/rspec/spec/spec/story/builders.rb +46 -0
- data/vendor/plugins/rspec/spec/spec/story/extensions/main_spec.rb +161 -0
- data/vendor/plugins/rspec/spec/spec/story/extensions_spec.rb +14 -0
- data/vendor/plugins/rspec/spec/spec/story/given_scenario_spec.rb +27 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/plain_text_story_runner_spec.rb +90 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/scenario_collector_spec.rb +27 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/scenario_runner_spec.rb +214 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/story_mediator_spec.rb +143 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/story_parser_spec.rb +401 -0
- data/vendor/plugins/rspec/spec/spec/story/runner/story_runner_spec.rb +294 -0
- data/vendor/plugins/rspec/spec/spec/story/runner_spec.rb +93 -0
- data/vendor/plugins/rspec/spec/spec/story/scenario_spec.rb +18 -0
- data/vendor/plugins/rspec/spec/spec/story/step_group_spec.rb +157 -0
- data/vendor/plugins/rspec/spec/spec/story/step_mother_spec.rb +84 -0
- data/vendor/plugins/rspec/spec/spec/story/step_spec.rb +272 -0
- data/vendor/plugins/rspec/spec/spec/story/story_helper.rb +2 -0
- data/vendor/plugins/rspec/spec/spec/story/story_spec.rb +84 -0
- data/vendor/plugins/rspec/spec/spec/story/world_spec.rb +423 -0
- data/vendor/plugins/rspec/spec/spec_helper.rb +56 -0
- data/vendor/plugins/rspec/stories/all.rb +5 -0
- data/vendor/plugins/rspec/stories/configuration/before_blocks.story +21 -0
- data/vendor/plugins/rspec/stories/configuration/stories.rb +7 -0
- data/vendor/plugins/rspec/stories/example_groups/autogenerated_docstrings +45 -0
- data/vendor/plugins/rspec/stories/example_groups/example_group_with_should_methods +17 -0
- data/vendor/plugins/rspec/stories/example_groups/nested_groups +17 -0
- data/vendor/plugins/rspec/stories/example_groups/output +25 -0
- data/vendor/plugins/rspec/stories/example_groups/stories.rb +7 -0
- data/vendor/plugins/rspec/stories/helper.rb +6 -0
- data/vendor/plugins/rspec/stories/interop/examples_and_tests_together +30 -0
- data/vendor/plugins/rspec/stories/interop/stories.rb +7 -0
- data/vendor/plugins/rspec/stories/interop/test_case_with_should_methods +17 -0
- data/vendor/plugins/rspec/stories/mock_framework_integration/stories.rb +7 -0
- data/vendor/plugins/rspec/stories/mock_framework_integration/use_flexmock.story +9 -0
- data/vendor/plugins/rspec/stories/pending_stories/README +3 -0
- data/vendor/plugins/rspec/stories/resources/helpers/cmdline.rb +9 -0
- data/vendor/plugins/rspec/stories/resources/helpers/story_helper.rb +16 -0
- data/vendor/plugins/rspec/stories/resources/matchers/smart_match.rb +37 -0
- data/vendor/plugins/rspec/stories/resources/spec/before_blocks_example.rb +32 -0
- data/vendor/plugins/rspec/stories/resources/spec/example_group_with_should_methods.rb +12 -0
- data/vendor/plugins/rspec/stories/resources/spec/simple_spec.rb +8 -0
- data/vendor/plugins/rspec/stories/resources/spec/spec_with_flexmock.rb +18 -0
- data/vendor/plugins/rspec/stories/resources/steps/running_rspec.rb +50 -0
- data/vendor/plugins/rspec/stories/resources/stories/failing_story.rb +15 -0
- data/vendor/plugins/rspec/stories/resources/test/spec_and_test_together.rb +57 -0
- data/vendor/plugins/rspec/stories/resources/test/test_case_with_should_methods.rb +30 -0
- data/vendor/plugins/rspec/stories/stories/multiline_steps.story +23 -0
- data/vendor/plugins/rspec/stories/stories/steps/multiline_steps.rb +13 -0
- data/vendor/plugins/rspec/stories/stories/stories.rb +6 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/builder.js +136 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/controls.js +972 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/dragdrop.js +976 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/effects.js +1117 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/prototype.js +4140 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/rspec.js +149 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/scriptaculous.js +58 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/slider.js +276 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/sound.js +55 -0
- data/vendor/plugins/rspec/story_server/prototype/javascripts/unittest.js +568 -0
- data/vendor/plugins/rspec/story_server/prototype/lib/server.rb +24 -0
- data/vendor/plugins/rspec/story_server/prototype/stories.html +176 -0
- data/vendor/plugins/rspec/story_server/prototype/stylesheets/rspec.css +136 -0
- data/vendor/plugins/rspec/story_server/prototype/stylesheets/test.css +90 -0
- data/vendor/plugins/will_paginate/.manifest +49 -0
- data/vendor/plugins/will_paginate/CHANGELOG.rdoc +94 -0
- data/vendor/plugins/will_paginate/LICENSE +18 -0
- data/vendor/plugins/will_paginate/README.rdoc +106 -0
- data/vendor/plugins/will_paginate/Rakefile +62 -0
- data/vendor/plugins/will_paginate/examples/apple-circle.gif +0 -0
- data/vendor/plugins/will_paginate/examples/index.haml +69 -0
- data/vendor/plugins/will_paginate/examples/index.html +92 -0
- data/vendor/plugins/will_paginate/examples/pagination.css +90 -0
- data/vendor/plugins/will_paginate/examples/pagination.sass +91 -0
- data/vendor/plugins/will_paginate/init.rb +1 -0
- data/vendor/plugins/will_paginate/lib/will_paginate.rb +82 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/array.rb +16 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/collection.rb +146 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/core_ext.rb +32 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/finder.rb +253 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/named_scope.rb +132 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/named_scope_patch.rb +39 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/version.rb +9 -0
- data/vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb +383 -0
- data/vendor/plugins/will_paginate/test/boot.rb +21 -0
- data/vendor/plugins/will_paginate/test/collection_test.rb +140 -0
- data/vendor/plugins/will_paginate/test/console +8 -0
- data/vendor/plugins/will_paginate/test/database.yml +22 -0
- data/vendor/plugins/will_paginate/test/finder_test.rb +443 -0
- data/vendor/plugins/will_paginate/test/fixtures/admin.rb +3 -0
- data/vendor/plugins/will_paginate/test/fixtures/developer.rb +13 -0
- data/vendor/plugins/will_paginate/test/fixtures/developers_projects.yml +13 -0
- data/vendor/plugins/will_paginate/test/fixtures/project.rb +15 -0
- data/vendor/plugins/will_paginate/test/fixtures/projects.yml +6 -0
- data/vendor/plugins/will_paginate/test/fixtures/replies.yml +29 -0
- data/vendor/plugins/will_paginate/test/fixtures/reply.rb +7 -0
- data/vendor/plugins/will_paginate/test/fixtures/schema.rb +38 -0
- data/vendor/plugins/will_paginate/test/fixtures/topic.rb +6 -0
- data/vendor/plugins/will_paginate/test/fixtures/topics.yml +30 -0
- data/vendor/plugins/will_paginate/test/fixtures/user.rb +2 -0
- data/vendor/plugins/will_paginate/test/fixtures/users.yml +35 -0
- data/vendor/plugins/will_paginate/test/helper.rb +37 -0
- data/vendor/plugins/will_paginate/test/lib/activerecord_test_case.rb +36 -0
- data/vendor/plugins/will_paginate/test/lib/activerecord_test_connector.rb +69 -0
- data/vendor/plugins/will_paginate/test/lib/load_fixtures.rb +11 -0
- data/vendor/plugins/will_paginate/test/lib/view_test_process.rb +165 -0
- data/vendor/plugins/will_paginate/test/tasks.rake +59 -0
- data/vendor/plugins/will_paginate/test/view_test.rb +363 -0
- data/vendor/plugins/will_paginate/will_paginate.gemspec +21 -0
- metadata +995 -0
@@ -0,0 +1,34 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/abstract_unit'
|
2
|
+
|
3
|
+
class TagTest < Test::Unit::TestCase
|
4
|
+
fixtures :tags, :taggings, :users, :photos, :posts
|
5
|
+
|
6
|
+
def test_name_required
|
7
|
+
t = Tag.create
|
8
|
+
assert_match /blank/, t.errors[:name].to_s
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_name_unique
|
12
|
+
t = Tag.create!(:name => "My tag")
|
13
|
+
duplicate = t.clone
|
14
|
+
|
15
|
+
assert !duplicate.save
|
16
|
+
assert_match /taken/, duplicate.errors[:name].to_s
|
17
|
+
end
|
18
|
+
|
19
|
+
def test_taggings
|
20
|
+
assert_equivalent [taggings(:jonathan_sky_good), taggings(:sam_flowers_good), taggings(:sam_flower_good), taggings(:ruby_good)], tags(:good).taggings
|
21
|
+
assert_equivalent [taggings(:sam_ground_bad), taggings(:jonathan_bad_cat_bad)], tags(:bad).taggings
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_to_s
|
25
|
+
assert_equal tags(:good).name, tags(:good).to_s
|
26
|
+
end
|
27
|
+
|
28
|
+
def test_equality
|
29
|
+
assert_equal tags(:good), tags(:good)
|
30
|
+
assert_equal Tag.find(1), Tag.find(1)
|
31
|
+
assert_equal Tag.new(:name => 'A'), Tag.new(:name => 'A')
|
32
|
+
assert_not_equal Tag.new(:name => 'A'), Tag.new(:name => 'B')
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/abstract_unit'
|
2
|
+
|
3
|
+
class TaggingTest < Test::Unit::TestCase
|
4
|
+
fixtures :tags, :taggings, :posts
|
5
|
+
|
6
|
+
def test_tag
|
7
|
+
assert_equal tags(:good), taggings(:jonathan_sky_good).tag
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_taggable
|
11
|
+
assert_equal posts(:jonathan_sky), taggings(:jonathan_sky_good).taggable
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/abstract_unit'
|
2
|
+
|
3
|
+
class TagsHelperTest < Test::Unit::TestCase
|
4
|
+
fixtures :tags, :taggings, :posts
|
5
|
+
|
6
|
+
include TagsHelper
|
7
|
+
|
8
|
+
def test_tag_cloud
|
9
|
+
cloud_elements = []
|
10
|
+
|
11
|
+
tag_cloud Post.tag_counts, %w(css1 css2 css3 css4) do |tag, css_class|
|
12
|
+
cloud_elements << [tag, css_class]
|
13
|
+
end
|
14
|
+
|
15
|
+
assert_equal [
|
16
|
+
[tags(:good), "css2"],
|
17
|
+
[tags(:bad), "css1"],
|
18
|
+
[tags(:nature), "css4"],
|
19
|
+
[tags(:question), "css1"]
|
20
|
+
], cloud_elements
|
21
|
+
end
|
22
|
+
|
23
|
+
def test_tag_cloud_when_no_tags
|
24
|
+
tag_cloud SpecialPost.tag_counts, %w(css1) do
|
25
|
+
assert false, "tag_cloud should not yield"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
acts_as_tree
|
2
|
+
============
|
3
|
+
|
4
|
+
Specify this +acts_as+ extension if you want to model a tree structure by providing a parent association and a children
|
5
|
+
association. This requires that you have a foreign key column, which by default is called +parent_id+.
|
6
|
+
|
7
|
+
class Category < ActiveRecord::Base
|
8
|
+
acts_as_tree :order => "name"
|
9
|
+
end
|
10
|
+
|
11
|
+
Example:
|
12
|
+
root
|
13
|
+
\_ child1
|
14
|
+
\_ subchild1
|
15
|
+
\_ subchild2
|
16
|
+
|
17
|
+
root = Category.create("name" => "root")
|
18
|
+
child1 = root.children.create("name" => "child1")
|
19
|
+
subchild1 = child1.children.create("name" => "subchild1")
|
20
|
+
|
21
|
+
root.parent # => nil
|
22
|
+
child1.parent # => root
|
23
|
+
root.children # => [child1]
|
24
|
+
root.children.first.children.first # => subchild1
|
25
|
+
|
26
|
+
Copyright (c) 2007 David Heinemeier Hansson, released under the MIT license
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rake/rdoctask'
|
4
|
+
|
5
|
+
desc 'Default: run unit tests.'
|
6
|
+
task :default => :test
|
7
|
+
|
8
|
+
desc 'Test acts_as_tree plugin.'
|
9
|
+
Rake::TestTask.new(:test) do |t|
|
10
|
+
t.libs << 'lib'
|
11
|
+
t.pattern = 'test/**/*_test.rb'
|
12
|
+
t.verbose = true
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Generate documentation for acts_as_tree plugin.'
|
16
|
+
Rake::RDocTask.new(:rdoc) do |rdoc|
|
17
|
+
rdoc.rdoc_dir = 'rdoc'
|
18
|
+
rdoc.title = 'acts_as_tree'
|
19
|
+
rdoc.options << '--line-numbers' << '--inline-source'
|
20
|
+
rdoc.rdoc_files.include('README')
|
21
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
22
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
ActiveRecord::Base.send :include, ActiveRecord::Acts::Tree
|
@@ -0,0 +1,96 @@
|
|
1
|
+
module ActiveRecord
|
2
|
+
module Acts
|
3
|
+
module Tree
|
4
|
+
def self.included(base)
|
5
|
+
base.extend(ClassMethods)
|
6
|
+
end
|
7
|
+
|
8
|
+
# Specify this +acts_as+ extension if you want to model a tree structure by providing a parent association and a children
|
9
|
+
# association. This requires that you have a foreign key column, which by default is called +parent_id+.
|
10
|
+
#
|
11
|
+
# class Category < ActiveRecord::Base
|
12
|
+
# acts_as_tree :order => "name"
|
13
|
+
# end
|
14
|
+
#
|
15
|
+
# Example:
|
16
|
+
# root
|
17
|
+
# \_ child1
|
18
|
+
# \_ subchild1
|
19
|
+
# \_ subchild2
|
20
|
+
#
|
21
|
+
# root = Category.create("name" => "root")
|
22
|
+
# child1 = root.children.create("name" => "child1")
|
23
|
+
# subchild1 = child1.children.create("name" => "subchild1")
|
24
|
+
#
|
25
|
+
# root.parent # => nil
|
26
|
+
# child1.parent # => root
|
27
|
+
# root.children # => [child1]
|
28
|
+
# root.children.first.children.first # => subchild1
|
29
|
+
#
|
30
|
+
# In addition to the parent and children associations, the following instance methods are added to the class
|
31
|
+
# after calling <tt>acts_as_tree</tt>:
|
32
|
+
# * <tt>siblings</tt> - Returns all the children of the parent, excluding the current node (<tt>[subchild2]</tt> when called on <tt>subchild1</tt>)
|
33
|
+
# * <tt>self_and_siblings</tt> - Returns all the children of the parent, including the current node (<tt>[subchild1, subchild2]</tt> when called on <tt>subchild1</tt>)
|
34
|
+
# * <tt>ancestors</tt> - Returns all the ancestors of the current node (<tt>[child1, root]</tt> when called on <tt>subchild2</tt>)
|
35
|
+
# * <tt>root</tt> - Returns the root of the current node (<tt>root</tt> when called on <tt>subchild2</tt>)
|
36
|
+
module ClassMethods
|
37
|
+
# Configuration options are:
|
38
|
+
#
|
39
|
+
# * <tt>foreign_key</tt> - specifies the column name to use for tracking of the tree (default: +parent_id+)
|
40
|
+
# * <tt>order</tt> - makes it possible to sort the children according to this SQL snippet.
|
41
|
+
# * <tt>counter_cache</tt> - keeps a count in a +children_count+ column if set to +true+ (default: +false+).
|
42
|
+
def acts_as_tree(options = {})
|
43
|
+
configuration = { :foreign_key => "parent_id", :order => nil, :counter_cache => nil }
|
44
|
+
configuration.update(options) if options.is_a?(Hash)
|
45
|
+
|
46
|
+
belongs_to :parent, :class_name => name, :foreign_key => configuration[:foreign_key], :counter_cache => configuration[:counter_cache]
|
47
|
+
has_many :children, :class_name => name, :foreign_key => configuration[:foreign_key], :order => configuration[:order], :dependent => :destroy
|
48
|
+
|
49
|
+
class_eval <<-EOV
|
50
|
+
include ActiveRecord::Acts::Tree::InstanceMethods
|
51
|
+
|
52
|
+
def self.roots
|
53
|
+
find(:all, :conditions => "#{configuration[:foreign_key]} IS NULL", :order => #{configuration[:order].nil? ? "nil" : %Q{"#{configuration[:order]}"}})
|
54
|
+
end
|
55
|
+
|
56
|
+
def self.root
|
57
|
+
find(:first, :conditions => "#{configuration[:foreign_key]} IS NULL", :order => #{configuration[:order].nil? ? "nil" : %Q{"#{configuration[:order]}"}})
|
58
|
+
end
|
59
|
+
EOV
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
module InstanceMethods
|
64
|
+
# Returns list of ancestors, starting from parent until root.
|
65
|
+
#
|
66
|
+
# subchild1.ancestors # => [child1, root]
|
67
|
+
def ancestors
|
68
|
+
node, nodes = self, []
|
69
|
+
nodes << node = node.parent while node.parent
|
70
|
+
nodes
|
71
|
+
end
|
72
|
+
|
73
|
+
# Returns the root node of the tree.
|
74
|
+
def root
|
75
|
+
node = self
|
76
|
+
node = node.parent while node.parent
|
77
|
+
node
|
78
|
+
end
|
79
|
+
|
80
|
+
# Returns all siblings of the current node.
|
81
|
+
#
|
82
|
+
# subchild1.siblings # => [subchild2]
|
83
|
+
def siblings
|
84
|
+
self_and_siblings - [self]
|
85
|
+
end
|
86
|
+
|
87
|
+
# Returns all siblings and a reference to the current node.
|
88
|
+
#
|
89
|
+
# subchild1.self_and_siblings # => [subchild1, subchild2]
|
90
|
+
def self_and_siblings
|
91
|
+
parent ? parent.children : self.class.roots
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2007 [name of plugin creator]
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,72 @@
|
|
1
|
+
AtomFeedHelper
|
2
|
+
==============
|
3
|
+
|
4
|
+
Makes it easier to create atom feeds through Builder.
|
5
|
+
|
6
|
+
|
7
|
+
Example
|
8
|
+
=======
|
9
|
+
|
10
|
+
# from PostsController
|
11
|
+
def index
|
12
|
+
@posts = Post.find(:all, :limit => 25)
|
13
|
+
|
14
|
+
respond_to do |format|
|
15
|
+
format.html
|
16
|
+
format.atom
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
# from posts/index.atom.builder
|
21
|
+
|
22
|
+
atom_feed(:url => formatted_people_url(:atom)) do |feed|
|
23
|
+
feed.title("Address book")
|
24
|
+
feed.updated(@people.first ? @people.first.created_at : Time.now.utc)
|
25
|
+
|
26
|
+
for post in @posts
|
27
|
+
feed.entry(post) do |entry|
|
28
|
+
entry.title(post.title)
|
29
|
+
entry.content(post.body, :type => 'html')
|
30
|
+
|
31
|
+
entry.author do |author|
|
32
|
+
author.name(post.creator.name)
|
33
|
+
author.email(post.creator.email_address)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
...returns:
|
40
|
+
|
41
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
42
|
+
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
|
43
|
+
<id>tag:localhost:people</id>
|
44
|
+
<link type="application/atom+xml" rel="self" href="http://example.com/people.atom"/>
|
45
|
+
<title>Address book</title>
|
46
|
+
<updated></updated>
|
47
|
+
<entry>
|
48
|
+
<id>tag:localhost:3000,2007-05-18T16:35:00-07:00:Person1</id>
|
49
|
+
<published>2007-05-18T16:35:00-07:00</published>
|
50
|
+
<link type="text/html" rel="alternate" href="http://example.com/people/1" />
|
51
|
+
<title>The future is now</title>
|
52
|
+
<content type="html">Once upon a time</content>
|
53
|
+
<author>
|
54
|
+
<name>DHH</name>
|
55
|
+
<email>david@loudthinking.com</email>
|
56
|
+
</author>
|
57
|
+
</entry>
|
58
|
+
<entry>
|
59
|
+
<id>tag:localhost:3000,2007-05-18T09:36:00-07:00:Person2</id>
|
60
|
+
<published>2007-05-18T09:36:00-07:00</published>
|
61
|
+
<link type="text/html" rel="alternate" href="http://example.com/people/1" />
|
62
|
+
<title>Matz</title>
|
63
|
+
<content type="html">This is Matz</content>
|
64
|
+
<author>
|
65
|
+
<name>Matz</name>
|
66
|
+
<email>Matz</email>
|
67
|
+
</author>
|
68
|
+
</entry>
|
69
|
+
</feed>
|
70
|
+
|
71
|
+
|
72
|
+
Copyright (c) 2007 David Heinemeier Hansson, released under the MIT license
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rake/rdoctask'
|
4
|
+
|
5
|
+
desc 'Default: run unit tests.'
|
6
|
+
task :default => :test
|
7
|
+
|
8
|
+
desc 'Test the atom_feed_helper plugin.'
|
9
|
+
Rake::TestTask.new(:test) do |t|
|
10
|
+
t.libs << 'lib'
|
11
|
+
t.pattern = 'test/**/*_test.rb'
|
12
|
+
t.verbose = true
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Generate documentation for the atom_feed_helper plugin.'
|
16
|
+
Rake::RDocTask.new(:rdoc) do |rdoc|
|
17
|
+
rdoc.rdoc_dir = 'rdoc'
|
18
|
+
rdoc.title = 'AtomFeedHelper'
|
19
|
+
rdoc.options << '--line-numbers' << '--inline-source'
|
20
|
+
rdoc.rdoc_files.include('README')
|
21
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
22
|
+
end
|
@@ -0,0 +1,111 @@
|
|
1
|
+
# Adds easy defaults to writing Atom feeds with the Builder template engine (this does not work on ERb or any other
|
2
|
+
# template languages).
|
3
|
+
module AtomFeedHelper
|
4
|
+
# Full usage example:
|
5
|
+
#
|
6
|
+
# config/routes.rb:
|
7
|
+
# ActionController::Routing::Routes.draw do |map|
|
8
|
+
# map.resources :posts
|
9
|
+
# map.root :controller => "posts"
|
10
|
+
# end
|
11
|
+
#
|
12
|
+
# app/controllers/posts_controller.rb:
|
13
|
+
# class PostsController < ApplicationController::Base
|
14
|
+
# # GET /posts.html
|
15
|
+
# # GET /posts.atom
|
16
|
+
# def index
|
17
|
+
# @posts = Post.find(:all)
|
18
|
+
#
|
19
|
+
# respond_to do |format|
|
20
|
+
# format.html
|
21
|
+
# format.atom
|
22
|
+
# end
|
23
|
+
# end
|
24
|
+
# end
|
25
|
+
#
|
26
|
+
# app/views/posts/index.atom.builder:
|
27
|
+
# atom_feed(:tag_uri => "2008") do |feed|
|
28
|
+
# feed.title("My great blog!")
|
29
|
+
# feed.updated((@posts.first.created_at))
|
30
|
+
#
|
31
|
+
# for post in @posts
|
32
|
+
# feed.entry(post) do |entry|
|
33
|
+
# entry.title(post.title)
|
34
|
+
# entry.content(post.body, :type => 'html')
|
35
|
+
#
|
36
|
+
# entry.author do |author|
|
37
|
+
# author.name("DHH")
|
38
|
+
# end
|
39
|
+
# end
|
40
|
+
# end
|
41
|
+
# end
|
42
|
+
#
|
43
|
+
# The options are for atom_feed are:
|
44
|
+
#
|
45
|
+
# * <tt>:schema_date</tt>: Required. The date at which the tag scheme for the feed was first used. A good default is the year you created the feed. See http://feedvalidator.org/docs/error/InvalidTAG.html for more information.
|
46
|
+
# * <tt>:language</tt>: Defaults to "en-US".
|
47
|
+
# * <tt>:root_url</tt>: The HTML alternative that this feed is doubling for. Defaults to / on the current host.
|
48
|
+
# * <tt>:url</tt>: The URL for this feed. Defaults to the current URL.
|
49
|
+
#
|
50
|
+
# atom_feed yields a AtomFeedBuilder instance.
|
51
|
+
def atom_feed(options = {}, &block)
|
52
|
+
if options[:schema_date].blank?
|
53
|
+
logger.warn("You must provide the :schema_date option to atom_feed for your feed to be valid. A good default is the year you first created this feed.") unless logger.nil?
|
54
|
+
else
|
55
|
+
options[:schema_date] = options[:schema_date].strftime("%Y-%m-%d") if options[:schema_date].respond_to?(:strftime)
|
56
|
+
end
|
57
|
+
|
58
|
+
xml = options[:xml] || eval("xml", block.binding)
|
59
|
+
xml.instruct!
|
60
|
+
|
61
|
+
xml.feed "xml:lang" => options[:language] || "en-US", "xmlns" => 'http://www.w3.org/2005/Atom' do
|
62
|
+
xml.id("tag:#{request.host},#{options[:schema_date]}:#{request.request_uri.split(".")[0]}")
|
63
|
+
xml.link(:rel => 'alternate', :type => 'text/html', :href => options[:root_url] || (request.protocol + request.host_with_port))
|
64
|
+
xml.link(:rel => 'self', :type => 'application/atom+xml', :href => options[:url] || request.url)
|
65
|
+
|
66
|
+
yield AtomFeedBuilder.new(xml, self, options)
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
|
71
|
+
class AtomFeedBuilder
|
72
|
+
def initialize(xml, view, feed_options = {})
|
73
|
+
@xml, @view, @feed_options = xml, view, feed_options
|
74
|
+
end
|
75
|
+
|
76
|
+
# Accepts a Date or Time object and inserts it in the proper format. If nil is passed, current time in UTC is used.
|
77
|
+
def updated(date_or_time = nil)
|
78
|
+
@xml.updated((date_or_time || Time.now.utc).xmlschema)
|
79
|
+
end
|
80
|
+
|
81
|
+
# Creates an entry tag for a specific record and prefills the id using class and id.
|
82
|
+
#
|
83
|
+
# Options:
|
84
|
+
#
|
85
|
+
# * <tt>:updated</tt>: Time of update. Defaults to the created_at attribute on the record if one such exists.
|
86
|
+
# * <tt>:published</tt>: Time first published. Defaults to the updated_at attribute on the record if one such exists.
|
87
|
+
# * <tt>:url</tt>: The URL for this entry. Defaults to the polymorphic_url for the record.
|
88
|
+
def entry(record, options = {})
|
89
|
+
@xml.entry do
|
90
|
+
@xml.id("tag:#{@view.request.host},#{@feed_options[:schema_date]}:#{record.class}/#{record.id}")
|
91
|
+
|
92
|
+
if options[:published] || (record.respond_to?(:created_at) && record.created_at)
|
93
|
+
@xml.published((options[:published] || record.created_at).xmlschema)
|
94
|
+
end
|
95
|
+
|
96
|
+
if options[:updated] || (record.respond_to?(:updated_at) && record.updated_at)
|
97
|
+
@xml.updated((options[:updated] || record.updated_at).xmlschema)
|
98
|
+
end
|
99
|
+
|
100
|
+
@xml.link(:rel => 'alternate', :type => 'text/html', :href => options[:url] || @view.polymorphic_url(record))
|
101
|
+
|
102
|
+
yield @xml
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
private
|
107
|
+
def method_missing(method, *arguments, &block)
|
108
|
+
@xml.__send__(method, *arguments, &block)
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|