Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CS2103-T17-2] ContactSwift #177

Open
wants to merge 380 commits into
base: master
Choose a base branch
from

Conversation

shayaansultan
Copy link

ContactSwift streamlines contact management with its intuitive interface, offering quick access to contact details and seamless integration with productivity tools, ideal for busy professionals seeking efficiency in their daily tasks.

Copy link

codecov bot commented Mar 8, 2024

Codecov Report

Attention: Patch coverage is 84.57944% with 99 lines in your changes are missing coverage. Please review.

Project coverage is 78.99%. Comparing base (b896eb0) to head (e4fcc06).

❗ Current head e4fcc06 differs from pull request most recent head bbac842. Consider uploading reports for the commit bbac842 to get more accurate results

Files Patch % Lines
...in/java/seedu/address/model/employee/UniqueId.java 62.50% 9 Missing and 6 partials ⚠️
...eedu/address/logic/commands/DeleteTaskCommand.java 60.00% 5 Missing and 7 partials ⚠️
src/main/java/seedu/address/ui/EmployeeCard.java 0.00% 12 Missing ⚠️
...a/seedu/address/logic/commands/AddTaskCommand.java 68.75% 4 Missing and 6 partials ⚠️
src/main/java/seedu/address/model/task/Task.java 78.94% 3 Missing and 5 partials ⚠️
...va/seedu/address/logic/commands/DeleteCommand.java 90.00% 0 Missing and 5 partials ⚠️
...eedu/address/logic/parser/DeleteCommandParser.java 87.50% 2 Missing and 2 partials ⚠️
...va/seedu/address/logic/commands/FilterCommand.java 85.00% 1 Missing and 2 partials ⚠️
...eedu/address/logic/commands/UnmarkTaskCommand.java 84.21% 3 Missing ⚠️
...in/java/seedu/address/model/employee/Employee.java 94.00% 0 Missing and 3 partials ⚠️
... and 14 more
Additional details and impacted files
@@             Coverage Diff              @@
##             master     #177      +/-   ##
============================================
+ Coverage     75.26%   78.99%   +3.73%     
- Complexity      419      645     +226     
============================================
  Files            71       89      +18     
  Lines          1338     1966     +628     
  Branches        126      223      +97     
============================================
+ Hits           1007     1553     +546     
- Misses          301      333      +32     
- Partials         30       80      +50     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

hjungwoo01 and others added 29 commits March 28, 2024 12:38
Previously there were a few lines that were partially
covered by tests. This commit fixes that by adding tests
for those lines.
Fix bug regarding name-based deletion
Updated the Developer Guide to include comprehensive documentation for the
Filter and ShowAll commands. This enhancement outlines the implementation
details, rationale, and design considerations for these features.

- The Filter Command section explains its parsing and execution process,
  highlighting the use of predicates for dynamic employee filtering based on
  specified criteria like name, role, team, and tags.
- The ShowAll Command section describes its functionality to reset and display
  the complete list of employees, detailing its integration with the model to
  clear any active filters.

This documentation provides clarity on the features' workings, assisting
developers in understanding and maintaining the codebase. The choice of
implementation for each command is justified with a focus on flexibility,
user experience, and adherence to the application's architectural standards.

The detailed documentation ensures that future enhancements or modifications
to these features can be made efficiently and with a thorough understanding
of their initial design and purpose.
Updated the Developer Guide to include comprehensive documentation for the
Filter and ShowAll commands. This enhancement outlines the implementation
details, rationale, and design considerations for these features.

- The Filter Command section explains its parsing and execution process,
  highlighting the use of predicates for dynamic employee filtering based on
  specified criteria like name, role, team, and tags.
- The ShowAll Command section describes its functionality to reset and display
  the complete list of employees, detailing its integration with the model to
  clear any active filters.

This documentation provides clarity on the features' workings, assisting
developers in understanding and maintaining the codebase. The choice of
implementation for each command is justified with a focus on flexibility,
user experience, and adherence to the application's architectural standards.

The detailed documentation ensures that future enhancements or modifications
to these features can be made efficiently and with a thorough understanding
of their initial design and purpose.
The Developer Guide has been updated to include details about the
implementation of the delete command. This includes the handling of
deletion by name in case of duplicate names and deletion by unique id.
This information provides clarity on how these features are implemented
and can assist other developers in understanding the codebase.
Update Developer Guide with delete command details
update DG to include AddCommand implementation
This commit introduces a new Description class in the task package.
The Description class represents a Task's description in the address
book. It includes validation checks to ensure that the description
is not blank.

The class includes methods for constructing a Description object,
validating a description string, and overriding the toString, equals,
and hashCode methods.

This new class provides a structured way to handle task descriptions,
improving code readability and maintainability.
This commit introduces a new Task class in the task package. The Task
class represents a task with a Description and a boolean status
indicating if the task is done.

The class includes methods for constructing a Task object, marking
and unmarking a task as done, and overriding the toString, equals,
and hashCode methods.

This new class provides a structured way to handle tasks, improving
code readability and maintainability.
This commit introduces a new TodoList class in the todoList package.
The TodoList class represents a list of tasks for each employee.

The class includes methods for adding, removing, marking, and
unmarking tasks, and overriding the toString method.

This new class provides a structured way to manage tasks, improving
code readability and maintainability.
This commit adds unit tests for the Description, Task, and TodoList
classes in the task and todoList packages.

The tests cover the main functionalities of these classes, including
validating descriptions, checking task equality, and managing tasks
in a todo list.

These tests help ensure the correctness of the code and facilitate
future refactoring and enhancement.
The application currently lacks a way to add tasks to an employee's
todo list. This is a crucial feature for task management in a team.

To address this, the AddTaskCommand class was added. This class extends
the Command class and implements the functionality to add a task to an
employee's todo list. The command takes a unique employee id and a task
description as input, and adds a new task with the given description to
the todo list of the corresponding employee.

This addition improves the application's task management capabilities
and allows users to assign tasks to employees.
The Description class previously allowed any string to be used as a
task description. This could lead to undesired behavior, such as
descriptions with special characters or blank descriptions.

To improve data integrity, the Description class has been modified to
only allow alphanumeric characters and spaces in descriptions. In
addition, descriptions cannot be blank, null, or consist only of
whitespace.

This change ensures that all task descriptions adhere to the defined
format and improves the robustness of the application.
The application currently lacks a way to parse user input for the
addTask command. This is a crucial feature for task management in a team.

To address this, the AddTaskCommandParser class was added. This class
implements the Parser interface and provides a parse method that creates
an instance of the AddTaskCommand class from a given user input string.

In addition, the AddressBookParser class was updated to handle the
addTask command. The parseCommand method of this class was modified to
recognize the addTask command word and call the AddTaskCommandParser.

These changes improve the application's task management capabilities
and allow users to assign tasks to employees using the addTask command.
hjungwoo01 and others added 30 commits April 15, 2024 16:48
Add data archive section, update ug, fix hyperlinks
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.

4 participants