Commit Graph

435 Commits

Author SHA1 Message Date
Andreas Nedbal 92d5918b91 Add tests for social graph hiding setting 2022-11-18 23:19:24 +01:00
Andreas Nedbal 3ddba9ae8a Fix lints 2022-11-16 22:34:57 +01:00
Andreas Nedbal 23fe0a2c6e Add tests for noindex setting 2022-11-16 22:33:30 +01:00
Andreas Nedbal 3cefc829f8
Merge branch 'main' into feature/privacy-require-user 2022-11-13 17:27:53 +01:00
Andreas Nedbal b1c0ba470c
Merge pull request #780 from Retrospring/feature/inbox-locking 2022-11-13 15:01:08 +01:00
Andreas Nedbal 9393374eab `LoginRequired` -> `NotAuthorized` 2022-11-13 14:38:11 +01:00
Andreas Nedbal 93fcebe6c0 Add tests for user requirement in questions 2022-11-13 14:28:24 +01:00
Georg Gadinger 0add320c7b remove capybara
obsoletes #784
2022-11-13 14:09:26 +01:00
Andreas Nedbal 024a37bdd6
Merge branch 'main' into feature/inbox-locking 2022-11-12 13:39:35 +01:00
Karina Kwiatek a8360dcad0 Appease the robot dog 2022-11-12 12:39:41 +01:00
Karina Kwiatek 0b67baa3c4 Add test for sending questions to banned users 2022-11-12 12:13:51 +01:00
Andreas Nedbal 5f97b87f3c Fix rubocop offenses 2022-11-06 15:23:05 +01:00
Andreas Nedbal fdf42d4169 Add tests for inbox locking 2022-11-06 15:02:12 +01:00
Andreas Nedbal 86869dc993 Add tests for new instance variables in TimelineController 2022-10-24 23:19:39 +02:00
Georg Gadinger 0f9c6f1e07 typoed_email_validator: check for valid TLDs
i'm sure there are many more typos waiting to happen.  one thing we
can already catch though is the usage of invalid TLDs.

this makes use of my new TLDv gem -- the data it uses can be updated
independently from the main gem.
2022-10-13 21:38:54 +02:00
Georg Gadinger ea4a661368 typoed_email_validator: add new endings to the typo list 2022-10-13 07:59:54 +02:00
Georg Gadinger 0294225269 typoed_email_validator: add new endings to the typo list
gmail.co.uk is registered by the big ad company with the 5000 chat apps,
but it doesn't have a NX record
2022-10-11 20:43:29 +02:00
Georg Gadinger 2dfbc1dd3c typoed_email_validator: add new endings to the typo list 2022-10-02 22:13:34 +02:00
Andreas Nedbal c979a7211d Appease the robot dog 2022-09-02 20:08:11 +02:00
Andreas Nedbal 13c275b189 Adjust tests to match controller adjustment 2022-09-02 20:02:03 +02:00
Georg Gadinger 37b770ddef typoed_email_validator: add new endings to the typo list 2022-08-25 20:28:29 +02:00
Andreas Nedbal b46fae5ebd Rename index action to show action 2022-08-21 13:17:45 +02:00
Andreas Nedbal 9c159bd5cc Appease the robot dog 2022-08-21 13:17:45 +02:00
Andreas Nedbal 6e80598b35 Add test param to spec 2022-08-21 13:17:45 +02:00
Andreas Nedbal 9874ffac19 Add base spec for `Moderation::QuestionsController` 2022-08-21 13:17:45 +02:00
Andreas Nedbal 8a69d7c583 Adjust `fails to access route` spec for role-constrained routes 2022-08-21 01:13:10 +02:00
Andreas Nedbal d75bff937e Adjust role-constrained routes spec 2022-08-21 01:13:10 +02:00
Andreas Nedbal 45f288ef4f Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-08-21 01:13:10 +02:00
Andreas Nedbal bedd29f7e8 Add base spec for `Moderation::ReportsController` 2022-08-21 01:13:10 +02:00
Karina Kwiatek b59c9b3af2 Add tests for management endpoint for site-wide muting 2022-08-20 19:05:55 +02:00
Karina Kwiatek 92a5095c00 Appease the robot canine 2022-08-20 19:05:55 +02:00
Karina Kwiatek 136eac8bdd Add page for managing site-wide anonymous-blocks 2022-08-20 19:05:55 +02:00
Karina Kwiatek 74e309e9fc Apply anonymous blocks without an owner as global 2022-08-20 19:02:37 +02:00
Andreas Nedbal 866894563e Apply review suggestions from @nilsding
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-08-20 17:21:47 +02:00
Andreas Nedbal c4d01a4f74 Appease the robot dog 2022-08-20 17:21:47 +02:00
Andreas Nedbal f5f7b0d22b Add tests for `User#questions` action and cases 2022-08-20 17:21:47 +02:00
Andreas Nedbal 6693864fbc Move `belongs_to_current_user?` to UserController 2022-08-20 17:21:47 +02:00
Andreas Nedbal 87c2ed3ab7 List direct questions for current users or mods 2022-08-20 17:21:47 +02:00
Georg Gadinger cb158c1fac typoed_email_validator: add new endings to the typo list 2022-08-14 20:49:51 +02:00
Karina Kwiatek d9a2e7dde8
Merge pull request #559 from Retrospring/return-hashes-from-use-cases 2022-07-31 10:30:14 +02:00
Karina Kwiatek afa1a102d6 Prevent Twitter markdown from stripping `<///3` 2022-07-30 19:41:47 +02:00
Andreas Nedbal 27eaef45ef Appease the reviewdog overlords 2022-07-30 16:51:07 +02:00
Andreas Nedbal c131d3e024 Fix user session specs 2022-07-30 16:51:07 +02:00
Karina Kwiatek 7f6f852841 Fix tests for `UseCase::Question::CreateFollowers` 2022-07-30 15:51:28 +02:00
Andreas Nedbal 65b69b86e4 Fix test for asked count in UseCase::Question::Create 2022-07-25 13:24:14 +02:00
Karina Kwiatek a39a6e2826
Merge pull request #567 from Retrospring/feature/improving-asks 2022-07-25 07:16:20 +02:00
Andreas Nedbal 777b25f967 Add test for question create UseCase checking if direct is set 2022-07-24 21:59:55 +02:00
Georg Gadinger 5b70be74c2 typoed_email_validator: add new endings to the typo list 2022-07-24 21:44:27 +02:00
Georg Gadinger 58a3b89d67 add very important spec 2022-07-23 12:29:17 +02:00
Georg Gadinger 66efa5d4f4 clean up routes
- replace `match` with `get`/`post`/`patch`/`delete`
- format routes.rb
- rename the `show_user_{profile,question,answer}` routes to
  `profile`, `question`, `answer` so `url_for` (used by Rails Admin)
  works fine for these things
- also add `to_param` to the `User` model so that `url_for(some_user)`
  uses the user name
2022-07-23 12:14:06 +02:00
Karina Kwiatek 62b29b3bd1 Upgrade to Ruby 3.0.4 2022-07-23 12:06:24 +02:00
Karina Kwiatek 0789ed773e Update registration tests to use a fixed forbidden screen name list 2022-07-23 09:11:32 +02:00
Karina Kwiatek fb73ce05db Appease the dog overlords 2022-07-23 09:11:32 +02:00
Karina Kwiatek fc161e2dcf Use `/@username` for profile paths 2022-07-23 09:11:32 +02:00
Karina Kwiatek a39960d269 Add tests for `TimelineController` 2022-07-21 16:08:51 +02:00
Georg Gadinger 61cea34f5e replace Timecop with ActiveSupport::Testing::TimeHelpers
resolves #525
2022-07-19 17:18:27 +02:00
Andreas Nedbal bdf409de1f Remove moderation comment tests 2022-07-19 11:17:45 +02:00
Karina Kwiatek 977ebdfe4d Appease the dog overlords 2022-07-18 23:24:05 +02:00
Karina Kwiatek 98d7bec924 Move link filter into its own controller 2022-07-18 23:24:05 +02:00
Karina Kwiatek 7abdac2d8a Move About, ToS & Privacy Policy into `AboutController` 2022-07-18 23:24:05 +02:00
Andreas Nedbal 840ae55198 Remove vote method tests 2022-07-18 23:10:07 +02:00
Karina Kwiatek 84cf436e82 Appease the dog overlods 2022-07-18 23:09:53 +02:00
Karina Kwiatek 7fdb2168a6 Move web app manifest into its own controller 2022-07-18 23:09:53 +02:00
Karina Kwiatek c384dde809 Split up web app manifest action 2022-07-18 23:09:53 +02:00
Karina Kwiatek 5e4819764a Test theme color in web app manifest 2022-07-18 23:09:53 +02:00
Karina Kwiatek e11b222368 Add test for `static#webapp_manifest` 2022-07-18 23:09:53 +02:00
Karina Kwiatek c6530cc4e7 Appease the dog overlords 2022-07-17 10:05:20 +02:00
Karina Kwiatek d01a2ee252 Add tests for question create followers use case 2022-07-17 10:05:20 +02:00
Karina Kwiatek 5d542161a0 Add tests for question create use case 2022-07-17 10:05:20 +02:00
Karina Kwiatek 58b212f76d Add tests for question destroy use case 2022-07-17 10:05:20 +02:00
Karina Kwiatek 0e9be78588 Create use case for deleting questions 2022-07-17 10:05:20 +02:00
Karina Kwiatek 22a66f4d1a Fix lint errors 2022-07-17 10:05:20 +02:00
Karina Kwiatek d9ff4d5765 Refactor Ajax::QuestionController#create into separate UseCases
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2022-07-17 10:05:20 +02:00
Andreas Nedbal 47120e8d24 Appease the dog overlords 2022-07-17 09:40:34 +02:00
Andreas Nedbal 0555279cd2 Adjust response results in list controller tests 2022-07-17 09:40:34 +02:00
Karina Kwiatek f396167704 Add test for trying to delete account while an export is pending 2022-07-16 21:29:20 +02:00
Karina Kwiatek 48bd2f5bc7 Add missing file extension to export URL 2022-07-16 15:58:30 +02:00
Karina Kwiatek 428db25c71 Add test for `Exporter#publish` 2022-07-16 15:58:30 +02:00
Karina Kwiatek bc07a9fbb0 Test exporting with profile picture 2022-07-16 15:58:30 +02:00
Karina Kwiatek c009dff560 Test that all header image sizes exist 2022-07-16 15:58:30 +02:00
Karina Kwiatek eaf61f1a6a Add test for `Export#finalize` with a profile header attached 2022-07-16 15:58:30 +02:00
Karina Kwiatek 45a87bf2b4 Remove unnecessary context blocks 2022-07-16 15:58:30 +02:00
Karina Kwiatek 37bc1e64de Add test for `Exporter#collect_comments` 2022-07-16 15:58:30 +02:00
Karina Kwiatek 75301900b3 Correct time precision in `Exporter#collect_questions` test 2022-07-16 15:58:30 +02:00
Karina Kwiatek 77ddf2feae Add test for `Exporter#collect_answers` 2022-07-16 15:58:30 +02:00
Karina Kwiatek 262705c3f0 Add test for `Exporter#collect_questions` 2022-07-16 15:58:30 +02:00
Karina Kwiatek f244252ade Mock Rails root 2022-07-16 15:58:30 +02:00
Karina Kwiatek 13d4927461 Test outputs of `Exporter#finalize` 2022-07-16 15:58:30 +02:00
Karina Kwiatek 6a1747eee7 Reload times to match precision 2022-07-16 15:58:30 +02:00
Karina Kwiatek 8e8b5ddb2a Add test for `Exporter#collect_smiles` 2022-07-16 15:58:30 +02:00
Karina Kwiatek d07b05ff24 Reformat `Exporter` spec 2022-07-16 15:58:30 +02:00
Karina Kwiatek bd5ec792b7 Prevent text in links from being double-escaped 2022-07-16 15:57:32 +02:00
Karina Kwiatek 601aa07de1 Add model tests for `Answer` 2022-07-09 01:15:31 +02:00
Karina Kwiatek 90b2aa0110 Add model tests for `Appendable::Reaction` 2022-07-09 01:15:31 +02:00
Andreas Nedbal 7a568889b8 Appease the dog overlords 2022-07-06 21:54:34 +02:00
Andreas Nedbal eb16ff83a4 Fix test to match adjusted responses 2022-07-06 21:54:34 +02:00
Karina Kwiatek 9bcf1a80ad Merge `author_name` with `author_identifier` 2022-07-06 19:56:04 +02:00
Karina Kwiatek 561946cab9 Fix issues from bad rebase 2022-07-05 23:23:37 +02:00
Karina Kwiatek 251dff6cda Add test for `NotificationsController` 2022-07-05 23:23:37 +02:00
Karina Kwiatek 19dcb96dcd Update remaining usages of `Smile`/`CommentSmile` 2022-07-05 23:23:37 +02:00
Karina Kwiatek 1b22872002 Update usages of `Smile`/`CommentSmile` to `Appendable::Reaction` in tests 2022-07-05 23:23:37 +02:00
Andreas Nedbal f7a56fa58e Add test for `Settings::DataController#index` 2022-07-05 20:40:19 +02:00
Andreas Nedbal 8446278e80 Move blocks spec into proper controller
accidentally moved it into the `MutesController` fist
2022-07-05 20:40:19 +02:00
Andreas Nedbal 6b5e59fa1c Move tests for mute view into own controller spec file 2022-07-05 20:40:19 +02:00
Georg Gadinger 917e32b4fc routes.rb: use 'authenticate' block from devise instead of defining the constraint ourselves 2022-07-05 18:20:30 +02:00
Andreas Nedbal 887a053e71 Appease the dog overlords 2022-07-03 18:32:36 +02:00
Andreas Nedbal 1a848af303 Move TOTP-related code into new spec files 2022-07-03 18:32:36 +02:00
Karina Kwiatek 400994179a Add tests for `UserBan` model 2022-07-02 17:08:44 +02:00
Andreas Nedbal 9e4c03b765 Appease the dog overlords 2022-07-02 16:36:14 +02:00
Andreas Nedbal a65232f975 Add tests for `ExportController#create` 2022-07-02 16:36:14 +02:00
Andreas Nedbal 46f99b5f01 Add test for `Settings::ExportController` index view 2022-07-02 16:36:14 +02:00
Andreas Nedbal be56439572 Appease the dog overlords 2022-06-28 23:20:11 +02:00
Andreas Nedbal 9252726432 Move privacy action tests into proper controller spec 2022-06-28 23:20:11 +02:00
Andreas Nedbal f54980de35 Appease the dog overlords 2022-06-26 22:45:52 +02:00
Andreas Nedbal 6597ab9720 Update tests to reflect new controller structure 2022-06-26 22:45:52 +02:00
Karina Kwiatek fc8dad4b9e Add tests for `user_screen_name` helper method 2022-06-26 21:07:28 +02:00
Karina Kwiatek 03a4ea512a Fix title helper tests 2022-06-26 21:07:28 +02:00
Karina Kwiatek a9cfa3fccc Add tests for toggling unmask 2022-06-26 21:07:28 +02:00
Karina Kwiatek a533f68c65 Adjust exporter and user count to match new ban system 2022-06-26 18:32:18 +02:00
Karina Kwiatek 7330d50023 Add test for logging in while banned 2022-06-26 18:32:18 +02:00
Karina Kwiatek 94aec26588 Move ban creation to `User#ban` method 2022-06-26 18:32:18 +02:00
Andreas Nedbal 2e251474dc Adjust route definitions in tests 2022-06-26 17:52:44 +02:00
Andreas Nedbal 8993ac16b8 Add spaces to block braces 2022-06-26 17:52:44 +02:00
Andreas Nedbal 54c89d7247 More lint fixes 2022-06-26 17:52:44 +02:00
Andreas Nedbal 417eee2ddc Appease the dog overlords 2022-06-26 17:52:44 +02:00
Andreas Nedbal 1953f01ba7 Add tests for `Settings::ThemeController` 2022-06-26 17:52:44 +02:00
Andreas Nedbal 360aa8979c Appease the dog overlords 2022-06-25 15:39:30 +02:00
Andreas Nedbal ac60bc4b8f Add tests for `UserController#edit_blocks` 2022-06-25 15:39:30 +02:00
Karina Kwiatek be8ba63b95 Add a way for moderators to view user inboxes 2022-06-23 22:17:14 +02:00
Karina Kwiatek 0196a9ea10 Test title helpers for custom anon display names 2022-06-23 21:29:27 +02:00
Georg Gadinger fdcb00edb9 appease the robot canine 2022-06-21 21:41:51 +02:00
Georg Gadinger ecec7617dd fix pending specs 2022-06-21 21:41:51 +02:00
Georg Gadinger b3c7faba03 run Rubocop 2022-06-21 21:41:51 +02:00
Georg Gadinger 06a20d34d2 user_controller_spec: get rid of rails 7 deprecation warning 2022-06-21 21:30:59 +02:00
Georg Gadinger f0d26a1555 run Rubocop 2022-06-21 21:30:59 +02:00
Georg Gadinger 7ccad7bfab share_worker_spec: get rid of `should` expectation syntax 2022-06-21 21:30:59 +02:00
Georg Gadinger c375775daa typoed_email_validator: add new endings to the typo list 2022-06-21 20:46:48 +02:00
Karina Kwiatek cca8795b01 Allow anonymous questions to be returned when the user has disabled anonymous questions
Fixes #267
2022-06-15 17:49:04 +02:00
Karina Kwiatek 41e476a2f7 Prevent other user's anon blocks from affecting each other 2022-06-15 14:26:48 +02:00
Karina Kwiatek e660b731d7 Appease the dog overlords 2022-06-15 14:26:48 +02:00
Karina Kwiatek 1e86043750 Add tests for removing anonymous blocks 2022-06-15 14:26:48 +02:00
Karina Kwiatek cd3f1591c9 Add test for creating anonymous blocks 2022-06-15 14:26:48 +02:00
Karina Kwiatek 37c63f0f52 Add tests for direct questions with muted terms or anon blocks 2022-06-15 14:26:48 +02:00
Karina Kwiatek 0db51536c5 Appease the dog overlords 2022-06-13 11:56:34 +02:00
Karina Kwiatek 99bae4a7a7 Add tests for adding blocked users to lists 2022-06-13 11:56:34 +02:00
Karina Kwiatek 6a15a323cf Add tests for reacting to comments while blocked/blocking 2022-06-13 11:56:34 +02:00
Karina Kwiatek 25ed1e4605 Add tests for commenting on answers while blocked 2022-06-13 11:56:34 +02:00
Karina Kwiatek 0eb3f53b45 Add tests for asking questions while blocked 2022-06-13 11:56:34 +02:00
Karina Kwiatek 04243c2ec8 Appease the dog overlords 2022-06-13 11:56:34 +02:00
Karina Kwiatek 9b5fefc661 Update relationship controller tests for blocking-related actions 2022-06-13 11:56:34 +02:00