Commit Graph

410 Commits

Author SHA1 Message Date
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