Skip to content

93 task refactor project structure for modular and readable command organization#94

Merged
Aravinda-HWK merged 6 commits intomainfrom
93-task-refactor-project-structure-for-modular-and-readable-command-organization
Nov 11, 2025
Merged

93 task refactor project structure for modular and readable command organization#94
Aravinda-HWK merged 6 commits intomainfrom
93-task-refactor-project-structure-for-modular-and-readable-command-organization

Conversation

@Aravinda-HWK
Copy link
Copy Markdown
Collaborator

📌 Description

This PR is to refactor the codebase for more readability.


🔍 Changes Made

  • Move test files into their respective folders
  • Update the naming convention in the internal/server folder.
  • Update Makefile and ci.yaml file

✅ Checklist (Email System)

  • Core IMAP commands tested (LOGIN, CAPABILITY, LIST, SELECT, FETCH, LOGOUT).
  • Authentication is tested.
  • Docker build & run validated.
  • Configuration loading verified for default and custom paths.
  • Persistent storage with Docker volume verified.
  • Error handling and logging verified
  • Documentation updated (README, config samples).

🧪 Testing Instructions

To test the server, use the instructions in the README in the test directory.


📷 Screenshots / Logs (if applicable)


⚠️ Notes for Reviewers

…lity

- Implemented unit tests for the config package, covering default configuration, loading from file, and validation scenarios.
- Added tests for the parser package to validate email message parsing, recipient extraction, and command handling.
- Developed extensive tests for the SASL server, including authentication mechanisms, connection handling, and error scenarios.
- Included benchmarks for performance evaluation of authentication and base64 encoding/decoding.
- Updated all instances of GetDatabaseFromServer(server) to GetDatabaseFromServer(srv) in the following test files:
  - handler_message_expunge_test.go
  - handler_message_fetch_test.go
  - handler_message_search_test.go
  - handler_message_store_test.go
  - handler_selection_close_test.go
  - handler_uid_test.go

This change ensures consistency in the test setup and improves readability.
@Aravinda-HWK Aravinda-HWK merged commit cb74046 into main Nov 11, 2025
3 checks passed
@Aravinda-HWK Aravinda-HWK deleted the 93-task-refactor-project-structure-for-modular-and-readable-command-organization branch November 11, 2025 05:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[TASK] Refactor Project Structure for Modular and Readable Command Organization

2 participants