Commit Graph

146 Commits

Author SHA1 Message Date
Artemy 7aa1b1831a Improve friends search and error handling in API
Refactored FriendsController to provide more precise error responses and input validation. Enhanced FriendsService to handle new exception types and improved user search logic. Added tests for user search, updated repository to throw on empty search results, and implemented User equality override. Cleaned up Program.cs controller JSON options.
2025-06-30 12:47:53 +07:00
Artemy 9bfcc1980d Update RegistrationRequest.cs 2025-06-30 11:54:00 +07:00
Artemy 26dc4ccc1f client 2025-06-27 21:50:23 +07:00
Artemy 05298c004c FriendsController 2025-06-27 19:12:31 +07:00
Artemy ec44347bbe Add username validation and initial friends feature
Introduced a UsernameValidator with Cyrillic and length checks, integrated into AuthService and registration flow. Added InvalidUsernameException and related interface. Updated User model to support friend requests, added FriendsController (stub), and configured Friendship entity in EF Core. Adjusted UserValidator max name length and removed navigation properties from PrivateChat.
2025-06-27 16:36:56 +07:00
Artemy 9b9cd73a96 Add friendship feature with models, repository, and tests
Introduces Friendship and PrivateChat models, repository interfaces, and implementations for managing friendships. Adds validators and comprehensive unit and integration tests for friendship logic. Updates InviteUserController with new endpoints and restricts access to admin role. Removes unnecessary project references from Govor.API.csproj and registers new DbSets in GovorDbContext.
2025-06-27 15:09:28 +07:00
Artemy 4f3f4ec066 Refactor to introduce Govor.Application and Govor.Contracts layers
Moved service implementations and interfaces from Govor.API and Govor.Core to new Govor.Application and Govor.Contracts projects. Updated namespaces and references throughout the solution. Added custom exception classes for authentication and invite services. Adjusted dependency injection and project references to use the new structure. This refactor improves separation of concerns and prepares the codebase for better maintainability and scalability.
2025-06-25 15:16:14 +07:00
Artemy 5693190b1c Add unit tests for InvitationGenerator and JwtService
Introduces unit tests for the InvitationGenerator and JwtService classes. The tests cover invitation code generation, repository interaction, code uniqueness, and JWT token generation and validation.
2025-06-25 14:33:41 +07:00
Artemy e40489db40 AuthControllerTests 2025-06-25 14:08:54 +07:00
Artemy 06cee5caae rename dtos to requests 2025-06-24 21:43:35 +07:00
Artemy 76094af15b Invitation globale work
+ tests
+ new services
+ InvitationDto and IInvitationReqest
2025-06-24 21:20:43 +07:00
Artemy f99ec0b17b InvitesRepositoryTests
+ other reworks
2025-06-24 19:17:27 +07:00
Artemy 80e2ec30c6 ConfigurationProgramExtensions 2025-06-24 18:16:34 +07:00
Artemy 9893013bcc Invitation Validator Tests 2025-06-24 15:33:36 +07:00
Artemy 6e856a65db InvitationValidator 2025-06-24 15:24:14 +07:00
Artemy 672fc95823 Admins Repository
+ tests
2025-06-24 15:14:45 +07:00
Artemy ce013eae49 Registration rework
+ InvitesRepository
+ AdminsRepository
+ rework jwt
2025-06-24 14:27:08 +07:00
Artemy 410a1ce1cc Admin stuff init
UserController
2025-06-22 21:34:04 +07:00
Artemy e7b7c402e1 Finished MediaAttachments
the functionality and tests are completed
2025-06-22 16:05:36 +07:00
Artemy 4956a175c5 MediaAttachmentsTests init 2025-06-22 15:37:20 +07:00
Artemy 64a06c0d1c MediaAttachments first init 2025-06-22 15:10:10 +07:00
Artemy b75c0d3f5a Finished MessageRepository
+ Tests
2025-06-22 14:32:01 +07:00
Artemy 972b4fb83c more tests and fichers for MessagesRepository 2025-06-22 12:48:48 +07:00
Artemy b1c0a4b0e2 MessageRepositoryTests
+ Given_ValidSenderId_When_FindBySenderIdAsync_Then_ReturnMessages
+ Given_InvalidSenderId_When_FindBySenderId_Should_Throw_NotFoundByKeyException
2025-06-22 12:21:27 +07:00
Artemy 203bb5e5a4 MessageRepository + Tests
+ GetAllAsync rework
+ FindByIdAsync
+ rework FindBySenderAndReceiverIdAsync
2025-06-22 12:07:06 +07:00
Artemy a6e8ba1a65 Update models Messages 2025-06-22 11:45:25 +07:00
Artemy c9aad0c466 LocalStorageServiceTsts finished 2025-06-21 15:25:11 +07:00
Artemy 7831e4838a rework messages
+ addition LocalStorageService
+ tests
2025-06-21 14:53:15 +07:00
Artemy 3f1c050149 Addition Tests for MessageRepository
+ MessagesValidator tests
2025-06-20 14:02:08 +07:00
Artemy 3526cde06f Messages first init 2025-06-20 13:32:29 +07:00
Artemy efcd970e90 Chat client 2025-06-19 19:42:42 +07:00
Artemy d18ad19f80 Auth Tests 2025-06-19 09:51:55 +07:00
Artemy 7d518c0882 AuthController work 2025-06-18 16:55:19 +07:00
Artemy 2c2c2b805c AuthSystem 2025-06-18 12:08:21 +07:00
Artemy de8d97e5bf Adding postfix Async 2025-06-17 21:27:16 +07:00
Artemy 22de0e9630 UserValidatorTests 2025-06-17 21:24:54 +07:00
Artemy d5a4d9141b Update UsersRepositoryTests.cs 2025-06-17 21:09:36 +07:00
Artemy e860abce40 work 2025-06-17 18:42:31 +07:00
Artemy 7810cafb4e Update UsersRepositoryTests.cs 2025-06-17 18:07:07 +07:00
Artemy 70e46e7648 more tests for user rep 2025-06-17 17:37:10 +07:00
Artemy b4b6d33432 Create LICENSE 2025-06-17 15:40:54 +07:00
Artemy 694750e25d Working on the UserRepository functionality
+ Tests
+ QueryableExtensions. It is an add-on that allows you to implement exceptions if the returned List would be empty.
2025-06-17 13:11:56 +07:00
Artemy 568b09ba81 I'm working on the UsersRepository
userValidotor has been added and tests are being developed
2025-06-17 11:57:57 +07:00
Artemy 5747f26421 github actions 2025-06-17 10:47:29 +07:00
Artemy d62c38db51 DbGovor init 2025-06-16 22:31:45 +07:00
Artemy c7c778ceb1 created git 2025-06-16 16:52:58 +07:00