hashrocket-clearance 0.4.3 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile +1 -1
- data/lib/clearance/app/controllers/passwords_controller.rb +41 -16
- data/lib/clearance/test/functional/passwords_controller_test.rb +2 -2
- data/lib/clearance/version.rb +1 -1
- metadata +2 -634
- data/test/rails_root/Capfile +0 -3
- data/test/rails_root/Rakefile +0 -10
- data/test/rails_root/app/controllers/application.rb +0 -5
- data/test/rails_root/app/controllers/confirmations_controller.rb +0 -3
- data/test/rails_root/app/controllers/passwords_controller.rb +0 -3
- data/test/rails_root/app/controllers/sessions_controller.rb +0 -8
- data/test/rails_root/app/controllers/users_controller.rb +0 -3
- data/test/rails_root/app/helpers/application_helper.rb +0 -5
- data/test/rails_root/app/helpers/confirmations_helper.rb +0 -2
- data/test/rails_root/app/helpers/passwords_helper.rb +0 -2
- data/test/rails_root/app/models/clearance_mailer.rb +0 -4
- data/test/rails_root/app/models/user.rb +0 -3
- data/test/rails_root/app/views/clearance_mailer/confirmation.html.erb +0 -1
- data/test/rails_root/app/views/clearance_mailer/facebook_welcome.text.html.haml +0 -4
- data/test/rails_root/app/views/clearance_mailer/forgot_password.html.erb +0 -6
- data/test/rails_root/app/views/layouts/_flashes.erb +0 -5
- data/test/rails_root/app/views/layouts/application.html.erb +0 -14
- data/test/rails_root/app/views/passwords/edit.html.erb +0 -18
- data/test/rails_root/app/views/passwords/new.html.erb +0 -15
- data/test/rails_root/app/views/sessions/new.html.erb +0 -29
- data/test/rails_root/app/views/users/_form.html.erb +0 -13
- data/test/rails_root/app/views/users/_password_form.html.erb +0 -13
- data/test/rails_root/app/views/users/edit_password.html.erb +0 -4
- data/test/rails_root/app/views/users/new.html.erb +0 -6
- data/test/rails_root/config/boot.rb +0 -109
- data/test/rails_root/config/database.yml +0 -13
- data/test/rails_root/config/environment.rb +0 -19
- data/test/rails_root/config/environments/development.rb +0 -19
- data/test/rails_root/config/environments/test.rb +0 -23
- data/test/rails_root/config/facebooker.yml +0 -13
- data/test/rails_root/config/initializers/action_mailer.rb +0 -1
- data/test/rails_root/config/initializers/clearance.rb +0 -8
- data/test/rails_root/config/initializers/inflections.rb +0 -10
- data/test/rails_root/config/initializers/mime_types.rb +0 -5
- data/test/rails_root/config/initializers/requires.rb +0 -13
- data/test/rails_root/config/initializers/time_formats.rb +0 -4
- data/test/rails_root/config/routes.rb +0 -12
- data/test/rails_root/db/migrate/001_create_users.rb +0 -25
- data/test/rails_root/doc/README_FOR_APP +0 -2
- data/test/rails_root/doc/README_FOR_TEMPLATE +0 -15
- data/test/rails_root/lib/tasks/bootstrap.rake +0 -16
- data/test/rails_root/lib/tasks/capistrano.rake +0 -96
- data/test/rails_root/lib/tasks/git_tasks.rake +0 -129
- data/test/rails_root/lib/tasks/rspec.rake +0 -132
- data/test/rails_root/public/404.html +0 -30
- data/test/rails_root/public/422.html +0 -30
- data/test/rails_root/public/500.html +0 -30
- data/test/rails_root/public/dispatch.rb +0 -10
- data/test/rails_root/public/favicon.ico +0 -0
- data/test/rails_root/public/images/connect_light_medium_long.gif +0 -0
- data/test/rails_root/public/images/rails.png +0 -0
- data/test/rails_root/public/javascripts/application.js +0 -2
- data/test/rails_root/public/javascripts/builder.js +0 -136
- data/test/rails_root/public/javascripts/controls.js +0 -963
- data/test/rails_root/public/javascripts/dragdrop.js +0 -972
- data/test/rails_root/public/javascripts/effects.js +0 -1120
- data/test/rails_root/public/javascripts/facebooker.js +0 -106
- data/test/rails_root/public/javascripts/prototype.js +0 -4225
- data/test/rails_root/public/javascripts/scriptaculous.js +0 -58
- data/test/rails_root/public/javascripts/slider.js +0 -277
- data/test/rails_root/public/javascripts/sound.js +0 -60
- data/test/rails_root/public/robots.txt +0 -1
- data/test/rails_root/script/about +0 -3
- data/test/rails_root/script/autospec +0 -5
- data/test/rails_root/script/breakpointer +0 -3
- data/test/rails_root/script/console +0 -3
- data/test/rails_root/script/create_project.rb +0 -52
- data/test/rails_root/script/dbconsole +0 -3
- data/test/rails_root/script/destroy +0 -3
- data/test/rails_root/script/generate +0 -3
- data/test/rails_root/script/performance/benchmarker +0 -3
- data/test/rails_root/script/performance/profiler +0 -3
- data/test/rails_root/script/performance/request +0 -3
- data/test/rails_root/script/plugin +0 -3
- data/test/rails_root/script/process/inspector +0 -3
- data/test/rails_root/script/process/reaper +0 -3
- data/test/rails_root/script/process/spawner +0 -3
- data/test/rails_root/script/runner +0 -3
- data/test/rails_root/script/server +0 -3
- data/test/rails_root/script/spec +0 -5
- data/test/rails_root/script/spec_server +0 -116
- data/test/rails_root/spec/controllers/passwords_controller_spec.rb +0 -5
- data/test/rails_root/spec/controllers/session_controller_spec.rb +0 -5
- data/test/rails_root/spec/models/user_spec.rb +0 -5
- data/test/rails_root/spec/rcov.opts +0 -2
- data/test/rails_root/spec/spec.opts +0 -4
- data/test/rails_root/spec/spec_helper.rb +0 -51
- data/test/rails_root/test/factories.rb +0 -9
- data/test/rails_root/test/functional/confirmations_controller_test.rb +0 -5
- data/test/rails_root/test/functional/passwords_controller_test.rb +0 -5
- data/test/rails_root/test/functional/sessions_controller_test.rb +0 -5
- data/test/rails_root/test/functional/users_controller_test.rb +0 -5
- data/test/rails_root/test/test_helper.rb +0 -21
- data/test/rails_root/test/unit/clearance_mailer_test.rb +0 -6
- data/test/rails_root/test/unit/user_test.rb +0 -5
- data/test/rails_root/vendor/gems/mocha-0.9.1/COPYING +0 -3
- data/test/rails_root/vendor/gems/mocha-0.9.1/MIT-LICENSE +0 -7
- data/test/rails_root/vendor/gems/mocha-0.9.1/README +0 -35
- data/test/rails_root/vendor/gems/mocha-0.9.1/RELEASE +0 -246
- data/test/rails_root/vendor/gems/mocha-0.9.1/Rakefile +0 -188
- data/test/rails_root/vendor/gems/mocha-0.9.1/examples/misc.rb +0 -44
- data/test/rails_root/vendor/gems/mocha-0.9.1/examples/mocha.rb +0 -26
- data/test/rails_root/vendor/gems/mocha-0.9.1/examples/stubba.rb +0 -65
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha.rb +0 -20
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/any_instance_method.rb +0 -54
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/backtrace_filter.rb +0 -17
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/cardinality.rb +0 -95
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/central.rb +0 -27
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/change_state_side_effect.rb +0 -19
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/class_method.rb +0 -86
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/configuration.rb +0 -60
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/deprecation.rb +0 -22
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/exception_raiser.rb +0 -17
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation.rb +0 -445
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation_error.rb +0 -15
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/expectation_list.rb +0 -50
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/in_state_ordering_constraint.rb +0 -19
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/inspect.rb +0 -39
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/instance_method.rb +0 -16
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/is_a.rb +0 -9
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/logger.rb +0 -15
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/metaclass.rb +0 -7
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/method_matcher.rb +0 -21
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/mock.rb +0 -196
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/mockery.rb +0 -181
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/module_method.rb +0 -16
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/multiple_yields.rb +0 -20
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/names.rb +0 -53
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/no_yields.rb +0 -11
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/object.rb +0 -134
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers.rb +0 -26
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/all_of.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/any_of.rb +0 -47
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/any_parameters.rb +0 -40
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/anything.rb +0 -33
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/base.rb +0 -15
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/equals.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_entries.rb +0 -45
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_entry.rb +0 -56
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_key.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/has_value.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/includes.rb +0 -40
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/instance_of.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/is_a.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/kind_of.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/not.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/object.rb +0 -9
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/optionally.rb +0 -55
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/regexp_matches.rb +0 -43
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/responds_with.rb +0 -43
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameter_matchers/yaml_equivalent.rb +0 -43
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/parameters_matcher.rb +0 -37
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/pretty_parameters.rb +0 -28
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/return_values.rb +0 -31
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/sequence.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/single_return_value.rb +0 -17
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/single_yield.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/standalone.rb +0 -166
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/state_machine.rb +0 -91
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/stubbing_error.rb +0 -16
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/test_case_adapter.rb +0 -103
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/unexpected_invocation.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha/yield_parameters.rb +0 -31
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/mocha_standalone.rb +0 -2
- data/test/rails_root/vendor/gems/mocha-0.9.1/lib/stubba.rb +0 -4
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/acceptance_test_helper.rb +0 -38
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_18914_test.rb +0 -43
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_21465_test.rb +0 -34
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/bug_21563_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/expected_invocation_count_test.rb +0 -196
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/failure_messages_test.rb +0 -64
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocha_example_test.rb +0 -98
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocha_test_result_test.rb +0 -84
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mock_test.rb +0 -100
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mock_with_initializer_block_test.rb +0 -51
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/mocked_methods_dispatch_test.rb +0 -78
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/optional_parameters_test.rb +0 -70
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/parameter_matcher_test.rb +0 -179
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/partial_mocks_test.rb +0 -47
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/return_value_test.rb +0 -52
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/sequence_test.rb +0 -186
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/standalone_test.rb +0 -139
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/states_test.rb +0 -70
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_any_instance_method_test.rb +0 -195
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_class_method_test.rb +0 -203
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_everything_test.rb +0 -56
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_instance_method_test.rb +0 -165
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_module_method_test.rb +0 -163
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stub_test.rb +0 -52
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_example_test.rb +0 -102
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_test.rb +0 -15
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubba_test_result_test.rb +0 -66
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_error_backtrace_test.rb +0 -64
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_method_unnecessarily_test.rb +0 -65
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_any_instance_method_test.rb +0 -130
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_class_method_test.rb +0 -155
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_existent_instance_method_test.rb +0 -145
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_any_instance_method_test.rb +0 -130
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_class_method_test.rb +0 -161
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_non_public_instance_method_test.rb +0 -141
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/acceptance/stubbing_on_non_mock_object_test.rb +0 -64
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/active_record_test_case.rb +0 -36
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/deprecation_disabler.rb +0 -15
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/execution_point.rb +0 -36
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/method_definer.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/simple_counter.rb +0 -13
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/test_helper.rb +0 -11
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/test_runner.rb +0 -33
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/any_instance_method_test.rb +0 -126
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/array_inspect_test.rb +0 -16
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/backtrace_filter_test.rb +0 -19
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/cardinality_test.rb +0 -56
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/central_test.rb +0 -65
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/change_state_side_effect_test.rb +0 -41
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/class_method_test.rb +0 -237
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/date_time_inspect_test.rb +0 -21
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/exception_raiser_test.rb +0 -42
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/expectation_list_test.rb +0 -57
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/expectation_test.rb +0 -459
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/hash_inspect_test.rb +0 -16
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/in_state_ordering_constraint_test.rb +0 -43
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/metaclass_test.rb +0 -22
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/method_matcher_test.rb +0 -23
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/mock_test.rb +0 -290
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/mockery_test.rb +0 -149
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/multiple_yields_test.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/no_yields_test.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/object_inspect_test.rb +0 -37
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/object_test.rb +0 -82
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/all_of_test.rb +0 -26
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/any_of_test.rb +0 -26
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/anything_test.rb +0 -21
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/equals_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_entries_test.rb +0 -51
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_entry_test.rb +0 -62
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_key_test.rb +0 -36
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/has_value_test.rb +0 -37
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/includes_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/instance_of_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/is_a_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/kind_of_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/not_test.rb +0 -26
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/regexp_matches_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/responds_with_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/stub_matcher.rb +0 -27
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameter_matchers/yaml_equivalent_test.rb +0 -25
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/parameters_matcher_test.rb +0 -121
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/return_values_test.rb +0 -63
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/sequence_test.rb +0 -104
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/single_return_value_test.rb +0 -14
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/single_yield_test.rb +0 -18
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/state_machine_test.rb +0 -98
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/string_inspect_test.rb +0 -11
- data/test/rails_root/vendor/gems/mocha-0.9.1/test/unit/yield_parameters_test.rb +0 -93
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/CONTRIBUTION_GUIDELINES.rdoc +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/MIT-LICENSE +0 -22
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/README.rdoc +0 -132
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/Rakefile +0 -72
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/bin/convert_to_should_syntax +0 -42
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda.rb +0 -17
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/action_mailer.rb +0 -10
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/action_mailer/assertions.rb +0 -39
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record/assertions.rb +0 -85
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/active_record/macros.rb +0 -715
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/assertions.rb +0 -45
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/context.rb +0 -306
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller.rb +0 -30
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/formats/html.rb +0 -201
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/formats/xml.rb +0 -170
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/helpers.rb +0 -64
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/macros.rb +0 -316
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/controller/resource_options.rb +0 -236
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/helpers.rb +0 -10
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/macros.rb +0 -74
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/private_helpers.rb +0 -22
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/proc_extensions.rb +0 -14
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/rails.rb +0 -19
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks.rb +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks/list_tests.rake +0 -24
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/lib/shoulda/tasks/yaml_to_shoulda.rake +0 -28
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/rails/init.rb +0 -1
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/README +0 -36
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fail_macros.rb +0 -34
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/addresses.yml +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/friendships.yml +0 -0
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/posts.yml +0 -5
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/products.yml +0 -0
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/taggings.yml +0 -0
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/tags.yml +0 -9
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/fixtures/users.yml +0 -6
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/functional/posts_controller_test.rb +0 -104
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/functional/users_controller_test.rb +0 -38
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/context_test.rb +0 -145
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/convert_to_should_syntax_test.rb +0 -63
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/helpers_test.rb +0 -183
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/private_helpers_test.rb +0 -34
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/other/should_test.rb +0 -266
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/application.rb +0 -25
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/posts_controller.rb +0 -85
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/controllers/users_controller.rb +0 -84
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/application_helper.rb +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/posts_helper.rb +0 -2
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/helpers/users_helper.rb +0 -2
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/address.rb +0 -7
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/dog.rb +0 -5
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/flea.rb +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/friendship.rb +0 -4
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/post.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/product.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/tag.rb +0 -8
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/tagging.rb +0 -4
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/models/user.rb +0 -28
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/posts.rhtml +0 -17
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/users.rhtml +0 -17
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/layouts/wide.html.erb +0 -1
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/edit.rhtml +0 -27
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/index.rhtml +0 -25
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/new.rhtml +0 -26
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/posts/show.rhtml +0 -18
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/edit.rhtml +0 -22
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/index.rhtml +0 -22
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/new.rhtml +0 -21
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/app/views/users/show.rhtml +0 -13
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/boot.rb +0 -109
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/database.yml +0 -4
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/environment.rb +0 -14
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/environments/sqlite3.rb +0 -0
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/initializers/new_rails_defaults.rb +0 -15
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/initializers/shoulda.rb +0 -8
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/config/routes.rb +0 -6
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/001_create_users.rb +0 -18
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/002_create_posts.rb +0 -13
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/003_create_taggings.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/004_create_tags.rb +0 -11
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/005_create_dogs.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/006_create_addresses.rb +0 -14
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/007_create_fleas.rb +0 -11
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/008_create_dogs_fleas.rb +0 -12
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/009_create_products.rb +0 -17
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/migrate/010_create_friendships.rb +0 -14
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/db/schema.rb +0 -0
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/log/sqlite3.log +0 -1
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/404.html +0 -30
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/422.html +0 -30
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/public/500.html +0 -30
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/script/console +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/rails_root/script/generate +0 -3
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/test_helper.rb +0 -33
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/address_test.rb +0 -10
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/dog_test.rb +0 -7
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/flea_test.rb +0 -6
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/friendship_test.rb +0 -6
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/post_test.rb +0 -15
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/product_test.rb +0 -27
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/tag_test.rb +0 -14
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/tagging_test.rb +0 -6
- data/test/rails_root/vendor/gems/thoughtbot-shoulda-2.0.4/test/unit/user_test.rb +0 -52
- data/test/rails_root/vendor/plugins/facebooker/CHANGELOG.txt +0 -0
- data/test/rails_root/vendor/plugins/facebooker/COPYING +0 -19
- data/test/rails_root/vendor/plugins/facebooker/History.txt +0 -16
- data/test/rails_root/vendor/plugins/facebooker/Manifest.txt +0 -110
- data/test/rails_root/vendor/plugins/facebooker/README +0 -46
- data/test/rails_root/vendor/plugins/facebooker/README.txt +0 -81
- data/test/rails_root/vendor/plugins/facebooker/Rakefile +0 -62
- data/test/rails_root/vendor/plugins/facebooker/TODO.txt +0 -10
- data/test/rails_root/vendor/plugins/facebooker/examples/desktop_login.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/facebooker.gemspec +0 -34
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook/facebook_generator.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook/templates/config/facebooker.yml +0 -41
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook/templates/public/javascripts/facebooker.js +0 -106
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/USAGE +0 -33
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/facebook_controller_generator.rb +0 -40
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/templates/controller.rb +0 -7
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/templates/functional_test.rb +0 -11
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/templates/helper.rb +0 -2
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/templates/view.fbml.erb +0 -2
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_controller/templates/view.html.erb +0 -2
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_publisher/facebook_publisher_generator.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_publisher/templates/create_facebook_templates.rb +0 -15
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_publisher/templates/publisher.rb +0 -3
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/USAGE +0 -27
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/facebook_scaffold_generator.rb +0 -118
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/controller.rb +0 -93
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/facebook_style.css +0 -2579
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/functional_test.rb +0 -89
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/helper.rb +0 -2
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/layout.fbml.erb +0 -6
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/layout.html.erb +0 -17
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/style.css +0 -74
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_edit.fbml.erb +0 -13
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_edit.html.erb +0 -18
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_index.fbml.erb +0 -24
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_index.html.erb +0 -24
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_new.fbml.erb +0 -12
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_new.html.erb +0 -17
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_show.fbml.erb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/generators/facebook_scaffold/templates/view_show.html.erb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/generators/publisher/publisher_generator.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/generators/receiver/receiver_generator.rb +0 -9
- data/test/rails_root/vendor/plugins/facebooker/generators/receiver/templates/xd_receiver.html +0 -10
- data/test/rails_root/vendor/plugins/facebooker/init.rb +0 -54
- data/test/rails_root/vendor/plugins/facebooker/install.rb +0 -12
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker.rb +0 -143
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/adapters/adapter_base.rb +0 -87
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/adapters/bebo_adapter.rb +0 -73
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/adapters/facebook_adapter.rb +0 -48
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/admin.rb +0 -28
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/batch_request.rb +0 -44
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/data.rb +0 -57
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/feed.rb +0 -78
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/logging.rb +0 -41
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/model.rb +0 -123
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/affiliation.rb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/album.rb +0 -11
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/applicationproperties.rb +0 -39
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/cookie.rb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/education_info.rb +0 -11
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/event.rb +0 -26
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/friend_list.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/group.rb +0 -35
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/info_item.rb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/info_section.rb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/location.rb +0 -8
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/notifications.rb +0 -17
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/page.rb +0 -27
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/photo.rb +0 -10
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/tag.rb +0 -12
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/user.rb +0 -352
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/work_info.rb +0 -9
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/parser.rb +0 -540
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/controller.rb +0 -246
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_asset_path.rb +0 -18
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_form_builder.rb +0 -112
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_pretty_errors.rb +0 -14
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_request_fix.rb +0 -24
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_session_handling.rb +0 -58
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_url_helper.rb +0 -191
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/facebook_url_rewriting.rb +0 -39
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/helpers.rb +0 -615
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/profile_publisher_extensions.rb +0 -42
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/publisher.rb +0 -475
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/routing.rb +0 -49
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/test_helpers.rb +0 -88
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/rails/utilities.rb +0 -22
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/server_cache.rb +0 -24
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/service.rb +0 -31
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/session.rb +0 -564
- data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/version.rb +0 -9
- data/test/rails_root/vendor/plugins/facebooker/lib/net/http_multipart_post.rb +0 -123
- data/test/rails_root/vendor/plugins/facebooker/lib/tasks/facebooker.rake +0 -18
- data/test/rails_root/vendor/plugins/facebooker/lib/tasks/tunnel.rake +0 -46
- data/test/rails_root/vendor/plugins/facebooker/rails/init.rb +0 -1
- data/test/rails_root/vendor/plugins/facebooker/setup.rb +0 -1585
- data/test/rails_root/vendor/plugins/facebooker/templates/layout.erb +0 -24
- data/test/rails_root/vendor/plugins/facebooker/test/adapters_test.rb +0 -98
- data/test/rails_root/vendor/plugins/facebooker/test/batch_request_test.rb +0 -82
- data/test/rails_root/vendor/plugins/facebooker/test/event_test.rb +0 -15
- data/test/rails_root/vendor/plugins/facebooker/test/facebook_admin_test.rb +0 -75
- data/test/rails_root/vendor/plugins/facebooker/test/facebook_cache_test.rb +0 -43
- data/test/rails_root/vendor/plugins/facebooker/test/facebook_data_test.rb +0 -84
- data/test/rails_root/vendor/plugins/facebooker/test/facebooker_test.rb +0 -855
- data/test/rails_root/vendor/plugins/facebooker/test/fixtures/multipart_post_body_with_only_parameters.txt +0 -33
- data/test/rails_root/vendor/plugins/facebooker/test/fixtures/multipart_post_body_with_single_file.txt +0 -38
- data/test/rails_root/vendor/plugins/facebooker/test/fixtures/multipart_post_body_with_single_file_that_has_nil_key.txt +0 -38
- data/test/rails_root/vendor/plugins/facebooker/test/http_multipart_post_test.rb +0 -54
- data/test/rails_root/vendor/plugins/facebooker/test/logging_test.rb +0 -36
- data/test/rails_root/vendor/plugins/facebooker/test/model_test.rb +0 -91
- data/test/rails_root/vendor/plugins/facebooker/test/publisher_test.rb +0 -436
- data/test/rails_root/vendor/plugins/facebooker/test/rails_integration_test.rb +0 -1125
- data/test/rails_root/vendor/plugins/facebooker/test/session_test.rb +0 -587
- data/test/rails_root/vendor/plugins/facebooker/test/test_helper.rb +0 -60
- data/test/rails_root/vendor/plugins/facebooker/test/user_test.rb +0 -229
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
module Facebooker
|
|
2
|
-
##
|
|
3
|
-
# helper methods primarily supporting the management of Ruby objects which are populatable via Hashes.
|
|
4
|
-
# Since most Facebook API calls accept and return hashes of data (as XML), the Model module allows us to
|
|
5
|
-
# directly populate a model's attributes given a Hash with matching key names.
|
|
6
|
-
module Model
|
|
7
|
-
class UnboundSessionException < Exception; end
|
|
8
|
-
def self.included(includer)
|
|
9
|
-
includer.extend ClassMethods
|
|
10
|
-
includer.__send__(:attr_writer, :session)
|
|
11
|
-
includer.__send__(:attr_reader, :anonymous_fields)
|
|
12
|
-
end
|
|
13
|
-
module ClassMethods
|
|
14
|
-
##
|
|
15
|
-
# Instantiate a new instance of the class into which we are included and populate that instance's
|
|
16
|
-
# attributes given the provided Hash. Key names in the Hash should map to attribute names on the model.
|
|
17
|
-
def from_hash(hash)
|
|
18
|
-
instance = new(hash)
|
|
19
|
-
yield instance if block_given?
|
|
20
|
-
instance
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
##
|
|
24
|
-
# Create a standard attr_writer and a populating_attr_reader
|
|
25
|
-
def populating_attr_accessor(*symbols)
|
|
26
|
-
attr_writer *symbols
|
|
27
|
-
populating_attr_reader *symbols
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
##
|
|
31
|
-
# Create a reader that will attempt to populate the model if it has not already been populated
|
|
32
|
-
def populating_attr_reader(*symbols)
|
|
33
|
-
symbols.each do |symbol|
|
|
34
|
-
define_method(symbol) do
|
|
35
|
-
populate unless populated?
|
|
36
|
-
instance_variable_get("@#{symbol}")
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
def populating_hash_settable_accessor(symbol, klass)
|
|
42
|
-
populating_attr_reader symbol
|
|
43
|
-
hash_settable_writer(symbol, klass)
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
def populating_hash_settable_list_accessor(symbol, klass)
|
|
47
|
-
populating_attr_reader symbol
|
|
48
|
-
hash_settable_list_writer(symbol, klass)
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
#
|
|
52
|
-
# Declares an attribute named ::symbol:: which can be set with either an instance of ::klass::
|
|
53
|
-
# or a Hash which will be used to populate a new instance of ::klass::.
|
|
54
|
-
def hash_settable_accessor(symbol, klass)
|
|
55
|
-
attr_reader symbol
|
|
56
|
-
hash_settable_writer(symbol, klass)
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
def hash_settable_writer(symbol, klass)
|
|
60
|
-
define_method("#{symbol}=") do |value|
|
|
61
|
-
instance_variable_set("@#{symbol}", value.kind_of?(Hash) ? klass.from_hash(value) : value)
|
|
62
|
-
end
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
#
|
|
66
|
-
# Declares an attribute named ::symbol:: which can be set with either a list of instances of ::klass::
|
|
67
|
-
# or a list of Hashes which will be used to populate a new instance of ::klass::.
|
|
68
|
-
def hash_settable_list_accessor(symbol, klass)
|
|
69
|
-
attr_reader symbol
|
|
70
|
-
hash_settable_list_writer(symbol, klass)
|
|
71
|
-
end
|
|
72
|
-
|
|
73
|
-
def hash_settable_list_writer(symbol, klass)
|
|
74
|
-
define_method("#{symbol}=") do |list|
|
|
75
|
-
instance_variable_set("@#{symbol}", list.map do |item|
|
|
76
|
-
item.kind_of?(Hash) ? klass.from_hash(item) : item
|
|
77
|
-
end)
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
##
|
|
83
|
-
# Centralized, error-checked place for a model to get the session to which it is bound.
|
|
84
|
-
# Any Facebook API queries require a Session instance.
|
|
85
|
-
def session
|
|
86
|
-
@session || (raise UnboundSessionException, "Must bind this object to a Facebook session before querying")
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
#
|
|
90
|
-
# This gets populated from FQL queries.
|
|
91
|
-
def anon=(value)
|
|
92
|
-
@anonymous_fields = value
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
def initialize(hash = {})
|
|
96
|
-
populate_from_hash!(hash)
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
def populate
|
|
100
|
-
raise NotImplementedError, "#{self.class} included me and should have overriden me"
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
def populated?
|
|
104
|
-
!@populated.nil?
|
|
105
|
-
end
|
|
106
|
-
|
|
107
|
-
##
|
|
108
|
-
# Set model's attributes via Hash. Keys should map directly to the model's attribute names.
|
|
109
|
-
def populate_from_hash!(hash)
|
|
110
|
-
unless hash.empty?
|
|
111
|
-
hash.each do |key, value|
|
|
112
|
-
set_attr_method = "#{key}="
|
|
113
|
-
if respond_to?(set_attr_method)
|
|
114
|
-
self.__send__(set_attr_method, value)
|
|
115
|
-
else
|
|
116
|
-
Facebooker::Logging.log_info("**Warning**, Attempt to set non-attribute: #{key}",hash)
|
|
117
|
-
end
|
|
118
|
-
end
|
|
119
|
-
@populated = true
|
|
120
|
-
end
|
|
121
|
-
end
|
|
122
|
-
end
|
|
123
|
-
end
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
module Facebooker
|
|
3
|
-
##
|
|
4
|
-
# Represents a user's affiliation, for example, which educational institutions
|
|
5
|
-
# the user is associated with.
|
|
6
|
-
class Affiliation
|
|
7
|
-
include Model
|
|
8
|
-
attr_accessor :name, :status, :type, :year, :nid
|
|
9
|
-
end
|
|
10
|
-
end
|
data/test/rails_root/vendor/plugins/facebooker/lib/facebooker/models/applicationproperties.rb
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
module Facebooker
|
|
2
|
-
|
|
3
|
-
# application_name string The name of your application.
|
|
4
|
-
# callback_url string Your application's callback URL. The callback URL cannot be longer than 100 characters.
|
|
5
|
-
# post_install_url string The URL where a user gets redirected after installing your application. The post-install URL cannot be longer than 100 characters.
|
|
6
|
-
# edit_url string
|
|
7
|
-
# dashboard_url string
|
|
8
|
-
# uninstall_url string The URL where a user gets redirected after removing your application.
|
|
9
|
-
# ip_list string For Web-based applications, these are the IP addresses of your servers that can access Facebook's servers and serve information to your application.
|
|
10
|
-
# email string The email address associated with the application; the email address Facebook uses to contact you about your application. (default value is your Facebook email address.)
|
|
11
|
-
# description string The description of your application.
|
|
12
|
-
# use_iframe bool Indicates whether you render your application with FBML (0) or in an iframe (1). (default value is 1)
|
|
13
|
-
# desktop bool Indicates whether your application is Web-based (0) or gets installed on a user's desktop (1). (default value is 1)
|
|
14
|
-
# is_mobile bool Indicates whether your application can run on a mobile device (1) or not (0). (default value is 1)
|
|
15
|
-
# default_fbml string The default FBML code that appears in the user's profile box when he or she adds your application.
|
|
16
|
-
# default_column bool Indicates whether your application appears in the wide (1) or narrow (0) column of a user's Facebook profile. (default value is 1)
|
|
17
|
-
# message_url string For applications that can create attachments, this is the URL where you store the attachment's content.
|
|
18
|
-
# message_action string For applications that can create attachments, this is the label for the action that creates the attachment. It cannot be more than 20 characters.
|
|
19
|
-
# about_url string This is the URL to your application's About page. About pages are now Facebook Pages.
|
|
20
|
-
# private_install bool Indicates whether you want to disable (1) or enable (0) News Feed and Mini-Feed stories when a user installs your application. (default value is 1)
|
|
21
|
-
# installable bool Indicates whether a user can (1) or cannot (0) install your application. (default value is 1)
|
|
22
|
-
# privacy_url string The URL to your application's privacy terms.
|
|
23
|
-
# help_url string The URL to your application's help page.
|
|
24
|
-
# see_all_url string
|
|
25
|
-
# tos_url string The URL to your application's Terms of Service.
|
|
26
|
-
# dev_mode bool Indicates whether developer mode is enabled (1) or disabled (0). Only developers can install applications in developer mode. (default value is 1)
|
|
27
|
-
# preload_fql string A preloaded FQL query.
|
|
28
|
-
class ApplicationProperties
|
|
29
|
-
include Model
|
|
30
|
-
FIELDS = [ :application_name, :callback_url, :post_install_url, :edit_url, :dashboard_url,
|
|
31
|
-
:uninstall_url, :ip_list, :email, :description, :use_iframe, :desktop, :is_mobile,
|
|
32
|
-
:default_fbml, :default_column, :message_url, :message_action, :about_url,
|
|
33
|
-
:private_install, :installable, :privacy_url, :help_url, :see_all_url, :tos_url,
|
|
34
|
-
:dev_mode, :preload_fql, :icon_url, :canvas_name, :logo_url, :connect_logo_url ]
|
|
35
|
-
|
|
36
|
-
attr_accessor *FIELDS
|
|
37
|
-
|
|
38
|
-
end
|
|
39
|
-
end
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
module Facebooker
|
|
3
|
-
class Event
|
|
4
|
-
|
|
5
|
-
##
|
|
6
|
-
# The relationship between a Facebook user and an Event to which he or she has been
|
|
7
|
-
# invited and may or may not be attending (based on #rsvp_status)
|
|
8
|
-
class Attendance
|
|
9
|
-
include Model
|
|
10
|
-
attr_accessor :eid, :uid, :rsvp_status
|
|
11
|
-
|
|
12
|
-
##
|
|
13
|
-
# Get the full, populated Event object which this Attendance is associated with.
|
|
14
|
-
# First access will query the Facebook API (facebook.events.get). Subsequent
|
|
15
|
-
# calls are retrieved from in-memory cache.
|
|
16
|
-
def event
|
|
17
|
-
@event ||= Event.from_hash(session.post('facebook.events.get', :eids => [eid]).first)
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
#TODO: implement user() method
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
include Model
|
|
24
|
-
attr_accessor :eid, :pic, :pic_small, :pic_big, :name, :creator, :update_time, :description, :tagline, :venue, :host, :event_type, :nid, :location, :end_time, :start_time, :event_subtype
|
|
25
|
-
end
|
|
26
|
-
end
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
module Facebooker
|
|
3
|
-
##
|
|
4
|
-
# A simple representation of a photo album.
|
|
5
|
-
class FriendList
|
|
6
|
-
include Model
|
|
7
|
-
attr_accessor :flid, :name
|
|
8
|
-
|
|
9
|
-
# We need this to be an integer, so do the conversion
|
|
10
|
-
def flid=(f)
|
|
11
|
-
@flid= ( f.nil? ? nil : f.to_i)
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
module Facebooker
|
|
3
|
-
class Group
|
|
4
|
-
##
|
|
5
|
-
# The model of a user's relationship to a group. Users can occupy different positions within a group (e.g. 'owner')
|
|
6
|
-
class Membership
|
|
7
|
-
include Model
|
|
8
|
-
attr_accessor :position, :gid, :uid
|
|
9
|
-
end
|
|
10
|
-
include Model
|
|
11
|
-
attr_accessor :pic, :pic_small, :pic_big, :name, :creator, :recent_news, :gid, :update_time, :group_subtype, :group_type, :website, :office, :description, :venue, :nid
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
##
|
|
15
|
-
# Get the full list of members as populated User objects. First time fetches group members via Facebook API call.
|
|
16
|
-
# Subsequent calls return cached values.
|
|
17
|
-
# This is a convenience method for getting all of the Membership instances and instantiating User instances for each Membership.
|
|
18
|
-
def members
|
|
19
|
-
@members ||= memberships.map do |membership|
|
|
20
|
-
User.new(membership.uid, session)
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
##
|
|
25
|
-
# Get a list of Membership instances associated with this Group. First call retrieves the Membership instances via a Facebook
|
|
26
|
-
# API call. Subsequent calls are retrieved from in-memory cache.
|
|
27
|
-
def memberships
|
|
28
|
-
@memberships ||= session.post('facebook.groups.getMembers', :gid => gid).map do |hash|
|
|
29
|
-
Membership.from_hash(hash) do |membership|
|
|
30
|
-
membership.gid = gid
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
end
|
|
35
|
-
end
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
module Facebooker
|
|
2
|
-
class Notifications
|
|
3
|
-
include Model
|
|
4
|
-
attr_accessor :messages, :group_invites, :pokes, :friend_requests, :event_invites, :shares
|
|
5
|
-
|
|
6
|
-
[:Messages, :Pokes, :Shares].each do |notification_type|
|
|
7
|
-
const_set(notification_type, Class.new do
|
|
8
|
-
include Model
|
|
9
|
-
attr_accessor :unread, :most_recent
|
|
10
|
-
end)
|
|
11
|
-
attribute_name = "#{notification_type.to_s.downcase}"
|
|
12
|
-
define_method("#{attribute_name}=") do |value|
|
|
13
|
-
instance_variable_set("@#{attribute_name}", value.kind_of?(Hash) ? Notifications.const_get(notification_type).from_hash(value) : value)
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
module Facebooker
|
|
3
|
-
class Page
|
|
4
|
-
|
|
5
|
-
class Genre
|
|
6
|
-
include Model
|
|
7
|
-
FIELDS = [ :dance, :party, :relax, :talk, :think, :workout, :sing, :intimate, :raunchy, :headphones ]
|
|
8
|
-
attr_accessor *FIELDS
|
|
9
|
-
|
|
10
|
-
def initialize(*args)
|
|
11
|
-
super
|
|
12
|
-
|
|
13
|
-
# convert '1'/'0' to true/false
|
|
14
|
-
FIELDS.each do |field|
|
|
15
|
-
self.send("#{field}=", self.send(field) == '1')
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
include Model
|
|
21
|
-
attr_accessor :page_id, :name, :pic_small, :pic_big, :pic_square, :pic_large, :type, :type, :website, :location, :hours, :band_members, :bio, :hometown, :genre, :record_label, :influences, :has_added_app, :founded, :company_overview, :mission, :products, :release_date, :starring, :written_by, :directed_by, :produced_by, :studio, :awards, :plot_outline, :network, :season, :schedule
|
|
22
|
-
|
|
23
|
-
def genre=(value)
|
|
24
|
-
@genre = value.kind_of?(Hash) ? Genre.from_hash(value) : value
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
@@ -1,352 +0,0 @@
|
|
|
1
|
-
require 'facebooker/model'
|
|
2
|
-
require 'facebooker/models/affiliation'
|
|
3
|
-
require 'facebooker/models/work_info'
|
|
4
|
-
require 'active_support'
|
|
5
|
-
module Facebooker
|
|
6
|
-
#
|
|
7
|
-
# Holds attributes and behavior for a Facebook User
|
|
8
|
-
class User
|
|
9
|
-
include Model
|
|
10
|
-
class Status
|
|
11
|
-
include Model
|
|
12
|
-
attr_accessor :message, :time
|
|
13
|
-
end
|
|
14
|
-
FIELDS = [:status, :political, :pic_small, :name, :quotes, :is_app_user, :tv, :profile_update_time, :meeting_sex, :hs_info, :timezone, :relationship_status, :hometown_location, :about_me, :wall_count, :significant_other_id, :pic_big, :music, :uid, :work_history, :sex, :religion, :notes_count, :activities, :pic_square, :movies, :has_added_app, :education_history, :birthday, :first_name, :meeting_for, :last_name, :interests, :current_location, :pic, :books, :affiliations]
|
|
15
|
-
STANDARD_FIELDS = [:uid, :first_name, :last_name, :name, :timezone, :birthday, :sex, :affiliations, :locale, :profile_url]
|
|
16
|
-
attr_accessor :id, :session
|
|
17
|
-
populating_attr_accessor *FIELDS
|
|
18
|
-
attr_reader :affiliations
|
|
19
|
-
populating_hash_settable_accessor :current_location, Location
|
|
20
|
-
populating_hash_settable_accessor :hometown_location, Location
|
|
21
|
-
populating_hash_settable_accessor :hs_info, EducationInfo::HighschoolInfo
|
|
22
|
-
populating_hash_settable_accessor :status, Status
|
|
23
|
-
populating_hash_settable_list_accessor :affiliations, Affiliation
|
|
24
|
-
populating_hash_settable_list_accessor :education_history, EducationInfo
|
|
25
|
-
populating_hash_settable_list_accessor :work_history, WorkInfo
|
|
26
|
-
|
|
27
|
-
# Can pass in these two forms:
|
|
28
|
-
# id, session, (optional) attribute_hash
|
|
29
|
-
# attribute_hash
|
|
30
|
-
def initialize(*args)
|
|
31
|
-
if (args.first.kind_of?(String) || args.first.kind_of?(Integer)) && args.size==1
|
|
32
|
-
@id=Integer(args.shift)
|
|
33
|
-
@session = Session.current
|
|
34
|
-
elsif (args.first.kind_of?(String) || args.first.kind_of?(Integer)) && args[1].kind_of?(Session)
|
|
35
|
-
@id = Integer(args.shift)
|
|
36
|
-
@session = args.shift
|
|
37
|
-
end
|
|
38
|
-
if args.last.kind_of?(Hash)
|
|
39
|
-
populate_from_hash!(args.pop)
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
# Returns a user's events, params correspond to API call parameters (except UID):
|
|
44
|
-
# http://wiki.developers.facebook.com/index.php/Events.get
|
|
45
|
-
# E.g:
|
|
46
|
-
# @user.events(:start_time => Time.now.to_i, :end_time => 1.month.from_now.to_i)
|
|
47
|
-
# # => Returns events betwen now and a month from now
|
|
48
|
-
def events(params={})
|
|
49
|
-
@events ||= @session.post('facebook.events.get', {:uid => self.id}.merge(params)).map do |event|
|
|
50
|
-
Event.from_hash(event)
|
|
51
|
-
end
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
#
|
|
55
|
-
# Set the list of friends, given an array of User objects. If the list has been retrieved previously, will not set
|
|
56
|
-
def friends=(list_of_friends,flid=nil)
|
|
57
|
-
@friends_hash ||= {}
|
|
58
|
-
flid=cast_to_friend_list_id(flid)
|
|
59
|
-
#use __blank instead of nil so that this is cached
|
|
60
|
-
cache_key = flid||"__blank"
|
|
61
|
-
|
|
62
|
-
@friends_hash[cache_key] ||= list_of_friends
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
def cast_to_friend_list_id(flid)
|
|
66
|
-
case flid
|
|
67
|
-
when String
|
|
68
|
-
list=friend_lists.detect {|f| f.name==flid}
|
|
69
|
-
raise Facebooker::Session::InvalidFriendList unless list
|
|
70
|
-
list.flid
|
|
71
|
-
when FriendList
|
|
72
|
-
flid.flid
|
|
73
|
-
else
|
|
74
|
-
flid
|
|
75
|
-
end
|
|
76
|
-
end
|
|
77
|
-
##
|
|
78
|
-
# Retrieve friends
|
|
79
|
-
def friends(flid = nil)
|
|
80
|
-
@friends_hash ||= {}
|
|
81
|
-
flid=cast_to_friend_list_id(flid)
|
|
82
|
-
|
|
83
|
-
#use __blank instead of nil so that this is cached
|
|
84
|
-
cache_key = flid||"__blank"
|
|
85
|
-
@friends_hash[cache_key] ||= @session.post('facebook.friends.get', (flid.nil? ? {} : {:flid => flid})).map do |uid|
|
|
86
|
-
User.new(uid, @session)
|
|
87
|
-
end
|
|
88
|
-
@friends_hash[cache_key]
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
def friend_lists
|
|
92
|
-
@friend_lists ||= @session.post('facebook.friends.getLists').map do |hash|
|
|
93
|
-
friend_list = FriendList.from_hash(hash)
|
|
94
|
-
friend_list.session = session
|
|
95
|
-
friend_list
|
|
96
|
-
end
|
|
97
|
-
end
|
|
98
|
-
###
|
|
99
|
-
# Retrieve friends with user info populated
|
|
100
|
-
# Subsequent calls will be retrieved from memory.
|
|
101
|
-
# Optional: list of fields to retrieve as symbols
|
|
102
|
-
def friends!(*fields)
|
|
103
|
-
@friends ||= session.post('facebook.users.getInfo', :fields => collect(fields), :uids => friends.map{|f| f.id}.join(',')).map do |hash|
|
|
104
|
-
User.new(hash['uid'], session, hash)
|
|
105
|
-
end
|
|
106
|
-
end
|
|
107
|
-
|
|
108
|
-
###
|
|
109
|
-
# Retrieve profile data for logged in user
|
|
110
|
-
# Optional: list of fields to retrieve as symbols
|
|
111
|
-
def populate(*fields)
|
|
112
|
-
session.post('facebook.users.getInfo', :fields => collect(fields), :uids => id) do |response|
|
|
113
|
-
populate_from_hash!(response.first)
|
|
114
|
-
end
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
def friends_with?(user_or_id)
|
|
118
|
-
friends.map{|f| f.to_i}.include?(user_or_id.to_i)
|
|
119
|
-
end
|
|
120
|
-
|
|
121
|
-
def friends_with_this_app
|
|
122
|
-
@friends_with_this_app ||= session.post('facebook.friends.getAppUsers').map do |uid|
|
|
123
|
-
User.new(uid, session)
|
|
124
|
-
end
|
|
125
|
-
end
|
|
126
|
-
|
|
127
|
-
def groups(gids = [])
|
|
128
|
-
args = gids.empty? ? {} : {:gids => gids}
|
|
129
|
-
@groups ||= session.post('facebook.groups.get', args).map do |hash|
|
|
130
|
-
group = Group.from_hash(hash)
|
|
131
|
-
group.session = session
|
|
132
|
-
group
|
|
133
|
-
end
|
|
134
|
-
end
|
|
135
|
-
|
|
136
|
-
def notifications
|
|
137
|
-
@notifications ||= Notifications.from_hash(session.post('facebook.notifications.get'))
|
|
138
|
-
end
|
|
139
|
-
|
|
140
|
-
def publish_story(story)
|
|
141
|
-
publish(story)
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
def publish_action(action)
|
|
145
|
-
publish(action)
|
|
146
|
-
end
|
|
147
|
-
|
|
148
|
-
def publish_templatized_action(action)
|
|
149
|
-
publish(action)
|
|
150
|
-
end
|
|
151
|
-
|
|
152
|
-
def albums
|
|
153
|
-
@albums ||= session.post('facebook.photos.getAlbums', :uid => self.id) do |response|
|
|
154
|
-
response.map do |hash|
|
|
155
|
-
Album.from_hash(hash)
|
|
156
|
-
end
|
|
157
|
-
end
|
|
158
|
-
end
|
|
159
|
-
|
|
160
|
-
def create_album(params)
|
|
161
|
-
@album = session.post('facebook.photos.createAlbum', params) {|response| Album.from_hash(response)}
|
|
162
|
-
end
|
|
163
|
-
|
|
164
|
-
def profile_photos
|
|
165
|
-
session.get_photos(nil, nil, profile_pic_album_id)
|
|
166
|
-
end
|
|
167
|
-
|
|
168
|
-
def upload_photo(multipart_post_file)
|
|
169
|
-
Photo.from_hash(session.post_file('facebook.photos.upload', {nil => multipart_post_file}))
|
|
170
|
-
end
|
|
171
|
-
|
|
172
|
-
def profile_fbml
|
|
173
|
-
session.post('facebook.profile.getFBML', :uid => @id)
|
|
174
|
-
end
|
|
175
|
-
|
|
176
|
-
##
|
|
177
|
-
# Set the profile FBML for this user
|
|
178
|
-
#
|
|
179
|
-
# This does not set profile actions, that should be done with profile_action=
|
|
180
|
-
def profile_fbml=(markup)
|
|
181
|
-
set_profile_fbml(markup, nil, nil)
|
|
182
|
-
end
|
|
183
|
-
|
|
184
|
-
##
|
|
185
|
-
# Set the mobile profile FBML
|
|
186
|
-
def mobile_fbml=(markup)
|
|
187
|
-
set_profile_fbml(nil, markup, nil)
|
|
188
|
-
end
|
|
189
|
-
|
|
190
|
-
def profile_action=(markup)
|
|
191
|
-
set_profile_fbml(nil, nil, markup)
|
|
192
|
-
end
|
|
193
|
-
|
|
194
|
-
def profile_main=(markup)
|
|
195
|
-
set_profile_fbml(nil,nil,nil,markup)
|
|
196
|
-
end
|
|
197
|
-
|
|
198
|
-
def set_profile_fbml(profile_fbml, mobile_fbml, profile_action_fbml, profile_main = nil)
|
|
199
|
-
parameters = {:uid => @id}
|
|
200
|
-
parameters[:profile] = profile_fbml if profile_fbml
|
|
201
|
-
parameters[:profile_action] = profile_action_fbml if profile_action_fbml
|
|
202
|
-
parameters[:mobile_profile] = mobile_fbml if mobile_fbml
|
|
203
|
-
parameters[:profile_main] = profile_main if profile_main
|
|
204
|
-
session.post('facebook.profile.setFBML', parameters,false)
|
|
205
|
-
end
|
|
206
|
-
|
|
207
|
-
## ** NEW PROFILE DESIGN ***
|
|
208
|
-
# Set a info section for this user
|
|
209
|
-
#
|
|
210
|
-
# Note: using set_profile_info as I feel using user.set_info could be confused with the user.getInfo facebook method.
|
|
211
|
-
# Also, I feel it fits in line with user.set_profile_fbml.
|
|
212
|
-
def set_profile_info(title, info_fields, format = :text)
|
|
213
|
-
session.post('facebook.profile.setInfo', :title => title, :uid => @id,
|
|
214
|
-
:type => format.to_s == "text" ? 1 : 5, :info_fields => info_fields.to_json)
|
|
215
|
-
end
|
|
216
|
-
|
|
217
|
-
def get_profile_info
|
|
218
|
-
session.post('facebook.profile.getInfo', :uid => @id)
|
|
219
|
-
end
|
|
220
|
-
|
|
221
|
-
##
|
|
222
|
-
# Set the status of the user
|
|
223
|
-
#
|
|
224
|
-
# DOES NOT prepend "is" to the message
|
|
225
|
-
#
|
|
226
|
-
# requires extended permission.
|
|
227
|
-
def status=(message)
|
|
228
|
-
case message
|
|
229
|
-
when String
|
|
230
|
-
session.post('facebook.users.setStatus',:status=>message,:status_includes_verb=>1) do |ret|
|
|
231
|
-
ret
|
|
232
|
-
end
|
|
233
|
-
when Status
|
|
234
|
-
@status = message
|
|
235
|
-
when Hash
|
|
236
|
-
@status = Status.from_hash(message)
|
|
237
|
-
end
|
|
238
|
-
end
|
|
239
|
-
|
|
240
|
-
##
|
|
241
|
-
# Convenience method to send email to the current user
|
|
242
|
-
def send_email(subject, text=nil, fbml=nil)
|
|
243
|
-
session.send_email([@id], subject, text, fbml)
|
|
244
|
-
end
|
|
245
|
-
|
|
246
|
-
##
|
|
247
|
-
# Convenience method to set cookie for the current user
|
|
248
|
-
def set_cookie(name, value, expires=nil, path=nil)
|
|
249
|
-
session.data.set_cookie(@id, name, value, expires, path)
|
|
250
|
-
end
|
|
251
|
-
|
|
252
|
-
##
|
|
253
|
-
# Convenience method to get cookies for the current user
|
|
254
|
-
def get_cookies(name=nil)
|
|
255
|
-
session.data.get_cookies(@id, name)
|
|
256
|
-
end
|
|
257
|
-
|
|
258
|
-
##
|
|
259
|
-
# Returns the user's id as an integer
|
|
260
|
-
def to_i
|
|
261
|
-
id
|
|
262
|
-
end
|
|
263
|
-
|
|
264
|
-
def to_s
|
|
265
|
-
id.to_s
|
|
266
|
-
end
|
|
267
|
-
|
|
268
|
-
##
|
|
269
|
-
# Two Facebooker::User objects should be considered equal if their Facebook ids are equal
|
|
270
|
-
def ==(other_user)
|
|
271
|
-
id == other_user.id
|
|
272
|
-
end
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
# register a user with Facebook
|
|
276
|
-
# users should be a hast with at least an :email field
|
|
277
|
-
# you can optionally provide an :account_id field as well
|
|
278
|
-
|
|
279
|
-
def self.register(users)
|
|
280
|
-
user_map={}
|
|
281
|
-
users=users.map do |h|
|
|
282
|
-
returning h.dup do |d|
|
|
283
|
-
if email=d.delete(:email)
|
|
284
|
-
hash = hash_email(email)
|
|
285
|
-
user_map[hash]=h
|
|
286
|
-
d[:email_hash]=hash
|
|
287
|
-
end
|
|
288
|
-
end
|
|
289
|
-
end
|
|
290
|
-
Facebooker::Session.create.post("facebook.connect.registerUsers",:accounts=>users.to_json) do |ret|
|
|
291
|
-
ret.each do |hash|
|
|
292
|
-
user_map.delete(hash)
|
|
293
|
-
end
|
|
294
|
-
unless user_map.blank?
|
|
295
|
-
e=Facebooker::Session::UserRegistrationFailed.new
|
|
296
|
-
e.failed_users = user_map.values
|
|
297
|
-
raise e
|
|
298
|
-
end
|
|
299
|
-
ret
|
|
300
|
-
end
|
|
301
|
-
end
|
|
302
|
-
|
|
303
|
-
def self.hash_email(email)
|
|
304
|
-
email = email.downcase.strip
|
|
305
|
-
crc=Zlib.crc32(email)
|
|
306
|
-
md5=Digest::MD5.hexdigest(email)
|
|
307
|
-
"#{crc}_#{md5}"
|
|
308
|
-
end
|
|
309
|
-
|
|
310
|
-
def self.cast_to_facebook_id(object)
|
|
311
|
-
if object.respond_to?(:facebook_id)
|
|
312
|
-
object.facebook_id
|
|
313
|
-
else
|
|
314
|
-
object
|
|
315
|
-
end
|
|
316
|
-
end
|
|
317
|
-
|
|
318
|
-
def facebook_id
|
|
319
|
-
@id
|
|
320
|
-
end
|
|
321
|
-
|
|
322
|
-
def self.user_fields(fields = [])
|
|
323
|
-
valid_fields(fields)
|
|
324
|
-
end
|
|
325
|
-
|
|
326
|
-
def self.standard_fields(fields = [])
|
|
327
|
-
valid_fields(fields,STANDARD_FIELDS)
|
|
328
|
-
end
|
|
329
|
-
|
|
330
|
-
private
|
|
331
|
-
def publish(feed_story_or_action)
|
|
332
|
-
session.post(Facebooker::Feed::METHODS[feed_story_or_action.class.name.split(/::/).last], feed_story_or_action.to_params) == "1" ? true : false
|
|
333
|
-
end
|
|
334
|
-
|
|
335
|
-
def self.valid_fields(fields, allowable=FIELDS)
|
|
336
|
-
allowable.reject{|field_name| !fields.empty? && !fields.include?(field_name)}.join(',')
|
|
337
|
-
end
|
|
338
|
-
|
|
339
|
-
def collect(fields, allowable=FIELDS)
|
|
340
|
-
allowable.reject{|field_name| !fields.empty? && !fields.include?(field_name)}.join(',')
|
|
341
|
-
end
|
|
342
|
-
|
|
343
|
-
def profile_pic_album_id
|
|
344
|
-
merge_aid(-3, @id)
|
|
345
|
-
end
|
|
346
|
-
|
|
347
|
-
def merge_aid(aid, uid)
|
|
348
|
-
(uid << 32) + (aid & 0xFFFFFFFF)
|
|
349
|
-
end
|
|
350
|
-
|
|
351
|
-
end
|
|
352
|
-
end
|