Refactor SpamActionService and its usage
* Removes 'SpamCheckMethods' and makes spam-checking workflow explicit in callers * Moves captcha verification to be encapsulated in 'SpamActionService' * Introduces 'CaptchaVerificationService', which can be expanded upon on the future for additional captcha implementations. * Moves handling of 'request' parameter to be called only where it is needed. * Removes memoization of GitLab::Recaptcha.load_configurations! - it complicates testing/mocking, and it isn't clear why it was ever needed - it isn't memoized other places. * Rewrites issue and snippet service create/update tests to remove tests of internal behavior of other services, and instead just test their collaborations via mock expectations. * Expands and improves test coverage of SpamActionService * Other related changes to accomodate new interface and behavior.
显示
- app/controllers/concerns/spammable_actions.rb 18 个添加, 26 个删除app/controllers/concerns/spammable_actions.rb
- app/services/captcha/captcha_verification_service.rb 43 个添加, 0 个删除app/services/captcha/captcha_verification_service.rb
- app/services/concerns/spam_check_methods.rb 0 个添加, 39 个删除app/services/concerns/spam_check_methods.rb
- app/services/issues/create_service.rb 12 个添加, 4 个删除app/services/issues/create_service.rb
- app/services/issues/update_service.rb 14 个添加, 3 个删除app/services/issues/update_service.rb
- app/services/snippets/base_service.rb 0 个添加, 4 个删除app/services/snippets/base_service.rb
- app/services/snippets/create_service.rb 14 个添加, 4 个删除app/services/snippets/create_service.rb
- app/services/snippets/update_service.rb 11 个添加, 1 个删除app/services/snippets/update_service.rb
- app/services/spam/spam_action_service.rb 72 个添加, 21 个删除app/services/spam/spam_action_service.rb
- app/services/spam/spam_params.rb 32 个添加, 0 个删除app/services/spam/spam_params.rb
- doc/development/module_with_instance_variables.md 1 个添加, 65 个删除doc/development/module_with_instance_variables.md
- lib/gitlab/recaptcha.rb 3 个添加, 1 个删除lib/gitlab/recaptcha.rb
- spec/controllers/concerns/spammable_actions_spec.rb 3 个添加, 89 个删除spec/controllers/concerns/spammable_actions_spec.rb
- spec/controllers/projects/issues_controller_spec.rb 4 个添加, 2 个删除spec/controllers/projects/issues_controller_spec.rb
- spec/services/captcha/captcha_verification_service_spec.rb 39 个添加, 0 个删除spec/services/captcha/captcha_verification_service_spec.rb
- spec/services/issues/create_service_spec.rb 32 个添加, 144 个删除spec/services/issues/create_service_spec.rb
- spec/services/issues/update_service_spec.rb 1 个添加, 1 个删除spec/services/issues/update_service_spec.rb
- spec/services/snippets/create_service_spec.rb 3 个添加, 2 个删除spec/services/snippets/create_service_spec.rb
- spec/services/snippets/update_service_spec.rb 3 个添加, 10 个删除spec/services/snippets/update_service_spec.rb
- spec/services/spam/spam_action_service_spec.rb 137 个添加, 45 个删除spec/services/spam/spam_action_service_spec.rb
加载中
想要评论请 注册 或 登录