Commit Graph

479 Commits

Author SHA1 Message Date
Karina Kwiatek 16b9262bed Remove warning in WebPush controller test 2023-01-03 18:12:13 +01:00
Karina Kwiatek cc1c262256
Merge pull request #678 from Retrospring/feature/webpush
WebPush support
2023-01-02 11:57:34 +00:00
Karina Kwiatek b3a7cf388a Add tests for mute rule use cases 2023-01-02 12:45:35 +01:00
Karina Kwiatek 5a3f2966dd Add tests for subscription check endpoint 2023-01-02 11:52:02 +01:00
Karina Kwiatek 22a84ab818 Appease the dog overlords 2023-01-02 11:51:45 +01:00
Karina Kwiatek 3eafa5e335 Add tests for subscription management 2023-01-02 11:50:48 +01:00
Karina Kwiatek 44112c5449 Test for sending notifications for new questions 2023-01-02 11:50:48 +01:00
Karina Kwiatek ca39d42e18
Merge pull request #891 from Retrospring/revoke-twitter-on-unauthorized
Revoke Twitter connection when the token is revoked
2023-01-02 09:08:17 +00:00
Karina Kwiatek 873d6a2c88 Fix typo in share worker 2023-01-02 09:46:55 +01:00
Karina Kwiatek 7766c9bd5e Add tests for services settings page 2023-01-02 09:34:08 +01:00
Karina Kwiatek f80d4ce935 Move create test into a describe block 2023-01-02 09:34:08 +01:00
Karina Kwiatek 0f01177c67 Reformat services controller spec 2023-01-02 09:34:08 +01:00
Georg Gadinger 9d38292d4a question/create_followers: fix incrementing asked_count 2023-01-02 09:20:59 +01:00
Karina Kwiatek 9d1e77aeba Revoke Twitter connection when the token is revoked 2023-01-01 23:46:10 +01:00
Andreas Nedbal 9b5470cfd3 Appease the dog overlords 2023-01-01 22:43:24 +01:00
Andreas Nedbal a74f40ecfc Add test for answer uniqueness 2023-01-01 22:43:24 +01:00
Andreas Nedbal 00959a8645 add exporting of mute relationships 2023-01-01 22:42:50 +01:00
Andreas Nedbal 6a03d3587a Appease the dog overlords 2023-01-01 22:42:50 +01:00
Andreas Nedbal 7afff7884e Add tests for mute relationship and notification behaviour 2023-01-01 22:42:50 +01:00
Georg Gadinger 2a9111de61 add spec that eager loads the application 2022-12-29 20:57:28 +01:00
Georg Gadinger 55f60bc5a7 remove requires for exporter
handled by Zeitwerk now
2022-12-29 20:57:28 +01:00
Georg Gadinger fb07eda972 remove errors 2022-12-29 20:57:28 +01:00
Georg Gadinger 9413d23a02 let Zeitwerk autoload the `lib/` directory
this also allows the UseCase classes to be hot reloaded in dev 🎉

- remove use_case requires (except for the exporter as Zeitwerk
  doesn't know about the subclasses)
- move version.rb to lib/retrospring so that Zeitwerk knows where
  to find Retrospring::Version
2022-12-29 20:57:28 +01:00
Georg Gadinger 447d1f7e6d
Merge pull request #886 from Retrospring/bugfix/questionable-user-questions
fix display conditions of profile questions
2022-12-27 23:15:58 +00:00
Andreas Nedbal 8c73636311 Appease the dog overlords 2022-12-28 00:10:59 +01:00
Andreas Nedbal 6df07bb377 Add tests for user-tracked anonymous blocks 2022-12-28 00:10:59 +01:00
Andreas Nedbal 37f4b78f66 Silently fail in share worker if user account is suspended 2022-12-27 23:51:41 +01:00
Georg Gadinger 3524809e21 fix display conditions of profile questions 2022-12-27 22:07:21 +00:00
Georg Gadinger d52529c840 mark dataexported notifications as read when visiting export page 2022-12-10 15:56:07 +01:00
Georg Gadinger 3e143954e3 data_export: yeet inbox_entries 2022-12-10 15:47:54 +01:00
Georg Gadinger e1bdb1324f make the export worker create a *real* notification and add specs for it 2022-12-10 04:25:08 +01:00
Georg Gadinger 2b3e7ab609 add specs for new exporters 2022-12-10 03:28:17 +01:00
Karina Kwiatek 854b2fd5c6 Use `Rails.public_path.join` 2022-12-04 23:48:21 +01:00
Karina Kwiatek cb61db02eb
Merge pull request #824 from Retrospring/feature/anonymous-block-tuuuuuuurbo
Migrate anonymous blocks to Turbo Streams
2022-12-04 23:23:19 +01:00
Karina Kwiatek 63436d3464 Remove `ios_web_app?` helper 2022-12-04 23:11:59 +01:00
Andreas Nedbal 1c4993df3f Fix lints 2022-11-21 23:07:18 +01:00
Andreas Nedbal d9991f5fa7 Add tests 2022-11-21 23:05:04 +01:00
Andreas Nedbal 5f2b044d80 Add tests for mute rules 2022-11-21 20:26:19 +01:00
Andreas Nedbal 9048a3e7d8 Remove AJAX Mute Rules code 2022-11-21 20:26:19 +01:00
Andreas Nedbal 930e16bbda Add tests for `Admin::DashboardController` 2022-11-21 20:26:01 +01:00
Andreas Nedbal 54e157ec76 `AnnouncementController` -> `Admin::AnnouncementController` 2022-11-21 20:26:01 +01:00
Andreas Nedbal 78df5af040 Add tests for InboxController 2022-11-18 23:35:38 +01:00
Andreas Nedbal 44c0136c9e Remove AJAX question generation code 2022-11-18 23:35:38 +01:00
Andreas Nedbal 23dafb5bcb
Merge branch 'main' into feature/privacy-noindex 2022-11-18 23:23:01 +01:00
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