Commit graph

499 commits

Author SHA1 Message Date
Andreas Nedbal
527f3fc3f5 Add tests for new theme helper functionality 2023-01-12 21:03:44 +01:00
Karina Kwiatek
c919b4913f
Merge branch 'main' into feature/long-questions 2023-01-11 22:24:58 +01:00
Georg Gadinger
1ef9fadf69 add specs for version bump rake task 2023-01-11 21:18:07 +01:00
Georg Gadinger
0ed4b2ac90 add spec to verify that generating test locales works 2023-01-11 21:18:07 +01:00
Karina Kwiatek
4e78efcae7 Add tests for sending long questions with question worker 2023-01-08 19:22:00 +01:00
Karina Kwiatek
e3254cba42 Remove trailing comma 2023-01-08 17:14:56 +01:00
Karina Kwiatek
7aacb1a364 Test creating question when recipient allows long questions 2023-01-08 14:51:37 +01:00
Karina Kwiatek
3a6814b908 Respect allow long questions setting 2023-01-08 14:03:54 +01:00
Karina Kwiatek
e2f6284982 Update user exporter spec to include allow_long_questions field 2023-01-08 14:00:16 +01:00
Andreas Nedbal
6a7f63e671 Remove Webpacker references in test suite 2023-01-08 12:19:45 +01:00
Georg Gadinger
3fca4a75d0
Merge pull request #933 from Retrospring/rspec-deprecation-warnings
get rid of a RSpec deprecation warning, enable some QoL RSpec options
2023-01-06 14:58:47 +00:00
Georg Gadinger
04f1793058
Merge pull request #932 from Retrospring/om@nom.nom
typoed_email_validator: add new endings to the typo list
2023-01-06 14:55:25 +00:00
Georg Gadinger
e8a5bd50b2 enable some RSpec options (randomised tests and some other QoL things) 2023-01-06 13:59:57 +01:00
Georg Gadinger
5c4ab05d4e get rid of RSpec deprecation warning
Using `should_not` from rspec-expectations' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` with `config.expect_with(:rspec) { |c| c.syntax = :should }` instead. Called from /Users/foxy/src/Retrospring/retrospring/spec/controllers/well_known/node_info_controller_spec.rb:84:in `block (4 levels) in <top (required)>'.
2023-01-06 13:53:32 +01:00
Georg Gadinger
5b8e34aa1d add integration specs for changing locales 2023-01-06 13:37:22 +01:00
Georg Gadinger
b81bbc2483 typoed_email_validator: add new endings to the typo list 2023-01-06 10:26:32 +01:00
Andreas Nedbal
176a79c0df Fix bootstrap helper specs 2023-01-05 10:35:52 +01:00
Karina Kwiatek
e13933626f
Fix typo in context label
Co-authored-by: Georg Gadinger <nilsding@nilsding.org>
2023-01-04 18:42:44 +01:00
Karina Kwiatek
63d1709878 Appease the dog overlords 2023-01-04 17:10:29 +01:00
Karina Kwiatek
b35108e9d0 Implement NodeInfo
Closes #902
2023-01-04 17:08:05 +01:00
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