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

[euchangxian] iP #520

Open
wants to merge 120 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 97 commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
28ad2b8
Add Gradle support
May 24, 2020
ed6d4d2
Bump gradle and lib version
Eclipse-Dominator Aug 5, 2023
4b0f973
Rename chatbot to Changoose and add dividers
euchangxian Aug 24, 2023
4d0555f
Add Duke::startParse and Duke::echo
euchangxian Aug 24, 2023
6cb6190
Replace usage of System.out.println with echo()
euchangxian Aug 24, 2023
dc4d576
Add indentLeft() and indent echo's output
euchangxian Aug 27, 2023
8fc0b5c
Add botName and scanner as Duke instance variables
euchangxian Aug 27, 2023
19b3d6d
Add getter for Duke botName
euchangxian Aug 27, 2023
8a29887
Change startParse() and echo() to instance methods
euchangxian Aug 27, 2023
8101159
Add taskList field
euchangxian Aug 27, 2023
6acaa3f
Update startParse() to add input into taskList
euchangxian Aug 27, 2023
a7c17e3
Update echo() output text
euchangxian Aug 27, 2023
d85ffb3
Update echo() to take in a prefix
euchangxian Aug 27, 2023
7647a56
Add printTasks() method
euchangxian Aug 27, 2023
5122a40
Add line breaks in between methods
euchangxian Aug 27, 2023
4e7bd85
Update echo() to handle a list of strings
euchangxian Aug 27, 2023
da290a2
Fix printing of dividers between every task
euchangxian Aug 27, 2023
87fd0f1
Add switch case to handle list command
euchangxian Aug 27, 2023
2071d57
Add Task class
euchangxian Aug 27, 2023
d60dcc2
Update fields and methods to use Task class
euchangxian Aug 27, 2023
82ce6a1
Remove useless scanner field
euchangxian Aug 27, 2023
a882d89
Add markTask() and unmarkTask()
euchangxian Aug 27, 2023
c78a6b4
Add cases for mark and unmark
euchangxian Aug 27, 2023
6804017
Add getters for taskName and isDone in Task
euchangxian Aug 27, 2023
28ee5f5
Extract print methods to OutputService
euchangxian Aug 27, 2023
814e1e1
Remove Duke field in OutputService
euchangxian Aug 27, 2023
4623a32
Change entry point of program to CliParserService
euchangxian Aug 27, 2023
cc457e3
Add custom Exceptions
euchangxian Aug 27, 2023
612ae9a
Add TaskType enum
euchangxian Aug 27, 2023
7a2e15b
Add variants of Tasks
euchangxian Aug 27, 2023
c4bd922
Add cases for variants of Task
euchangxian Aug 27, 2023
98972ec
Move main method back to Duke
euchangxian Aug 27, 2023
54dba68
Update text-ui-test test case
euchangxian Aug 27, 2023
d3d7e5d
Personalize error messages
euchangxian Aug 27, 2023
01e88b3
Add delete functionality
euchangxian Aug 27, 2023
c277987
Add getNumberOfTasks()
euchangxian Aug 28, 2023
987d942
Change Task to abstract class
euchangxian Aug 28, 2023
20db7ec
Change certain Duke methods to return an Optional
euchangxian Aug 28, 2023
e72c0b9
Add handleDelete()
euchangxian Aug 28, 2023
ff58386
Refactor createTask()
euchangxian Aug 28, 2023
aab8095
Fix dependency injection
euchangxian Aug 28, 2023
736608e
Change DukeException to a Checked Exception
euchangxian Aug 31, 2023
58ece4e
Update display message when there are no tasks left
euchangxian Aug 31, 2023
461913c
Implement Serializable interface for Task
euchangxian Aug 31, 2023
7357425
Change DukeException to a Checked Exception
euchangxian Aug 31, 2023
90a9d62
Add FileCorruptedException
euchangxian Aug 31, 2023
6f4deae
Add StorageService class
euchangxian Aug 31, 2023
3bb7235
Update StorageService thrown exceptions
euchangxian Aug 31, 2023
1087444
Update gitignore to ignore storage file
euchangxian Aug 31, 2023
4df571b
Remove caching of taskList
euchangxian Aug 31, 2023
ecafb5b
Fix taskList not loading from storage
euchangxian Aug 31, 2023
64f6c6a
Merge branch 'branch-Level-7'
euchangxian Aug 31, 2023
543c90e
Rework parseTaskCommand() and createTask()
euchangxian Sep 1, 2023
b02026c
Add TimeUtilException
euchangxian Sep 1, 2023
84e404b
Add TimeUtil class
euchangxian Sep 1, 2023
a3c1d94
Update Tasks to take in LocalDate
euchangxian Sep 1, 2023
98aeb3d
Update LocalDateTime display format
euchangxian Sep 1, 2023
cd71218
Improve error message for invalid date inputs
euchangxian Sep 1, 2023
28fe2e2
Fix TimeUtil::parseDateTimeString
euchangxian Sep 1, 2023
9e7beb1
Merge branch 'branch-Level-8'
euchangxian Sep 1, 2023
eba9ed2
Add UiService class.
euchangxian Sep 2, 2023
dc2ac5b
Replace usage of OutputService to UiService
euchangxian Sep 2, 2023
245be67
Add TaskList class
euchangxian Sep 2, 2023
bd76b79
Move Task and related subclasses to package tasks
euchangxian Sep 2, 2023
690a5eb
Update parsing of special strings into dates
euchangxian Sep 2, 2023
3a2a64b
Merge branch 'branch-A-MoreOOP'
euchangxian Sep 2, 2023
bda2ff2
Separate classes into respective packages
euchangxian Sep 2, 2023
31592e9
Merge branch 'branch-A-Packages'
euchangxian Sep 2, 2023
3548287
Fix wrong display strings
euchangxian Sep 2, 2023
3fffbef
Remove support for yyyy MM date formats
euchangxian Sep 2, 2023
3f07d63
Add more specific Exceptions
euchangxian Sep 2, 2023
ebdbb39
Add abstract Command and subclasses
euchangxian Sep 2, 2023
3119228
Update parsing logic to support Command Pattern
euchangxian Sep 2, 2023
69ded70
Remove unused fields and methods
euchangxian Sep 2, 2023
3372a29
Merge branch 'add-gradle-support' into branch-A-Gradle
euchangxian Sep 2, 2023
1457f3a
Merge branch 'branch-A-Gradle'
euchangxian Sep 2, 2023
ef8d5fc
Add TimeUtil tests
euchangxian Sep 2, 2023
ea799b3
Extract out parsing of input to its own method
euchangxian Sep 2, 2023
8c67cdc
Move responsiblity of trimming input
euchangxian Sep 2, 2023
b3962bb
Convert parsed commandType to lower case
euchangxian Sep 2, 2023
30f3268
Add CliParserServiceTest
euchangxian Sep 2, 2023
d90de50
Merge branch 'branch-A-JUnit'
euchangxian Sep 2, 2023
78de089
Add JavaDocs to methods and classes
euchangxian Sep 2, 2023
65374d2
Merge branch 'branch-A-JavaDoc'
euchangxian Sep 2, 2023
b65918e
Add checkstyle to Gradle
euchangxian Sep 2, 2023
50b44b0
Reformat code based on checkstyle
euchangxian Sep 2, 2023
6949e33
Fix checkstyle violations
euchangxian Sep 2, 2023
1abc3bc
Merge branch 'branch-A-CodingStandard'
euchangxian Sep 2, 2023
bc6cae4
Add printFoundTasks in UiService
euchangxian Sep 2, 2023
670cd85
Add find command
euchangxian Sep 2, 2023
0c5578c
Merge branch 'branch-Level-9'
euchangxian Sep 2, 2023
61ae94e
Add JavaDocs for methods invoked by find command
euchangxian Sep 3, 2023
3c89a10
Merge branch 'branch-A-CheckStyle'
euchangxian Sep 5, 2023
55ea565
Extract main method from Duke to Main class
euchangxian Sep 5, 2023
877ec10
Refactor Duke class
euchangxian Sep 6, 2023
f0ad6c2
Add JavaFX GUI
euchangxian Sep 6, 2023
2ab6853
Merge branch 'branch-Level-10'
euchangxian Sep 6, 2023
3aa9508
Add assert statements to TaskList
euchangxian Sep 15, 2023
dbfbd5c
Add final modifier to ParseResult fields
euchangxian Sep 15, 2023
44f797d
Fix UnmarkTaskCommand calling wrong UiService method
euchangxian Sep 15, 2023
4178a85
Change formatTaskList to use Streams
euchangxian Sep 15, 2023
86a595e
Add unit test for formatTaskList
euchangxian Sep 15, 2023
e2f88dd
Remove unused import
euchangxian Sep 15, 2023
e135e8e
Reorganize imports in OutputServiceTest
euchangxian Sep 15, 2023
0d25470
Add java_ci.yml file to ensure code quality
euchangxian Sep 15, 2023
a9d312f
Merge pull request #3 from euchangxian/branch-A-Assertions
euchangxian Sep 15, 2023
418fb96
Merge pull request #2 from euchangxian/branch-A-Streams
euchangxian Sep 15, 2023
ac9b0fd
Merge pull request #1 from euchangxian/branch-A-CI
euchangxian Sep 15, 2023
8382d84
Fix checkstyle violations
euchangxian Sep 15, 2023
64a92fb
Merge pull request #5 from euchangxian/branch-A-CodeQuality
euchangxian Sep 15, 2023
60f35f8
Add more strings that can be understood as dates
euchangxian Sep 15, 2023
ef21747
Add test for days of week string input
euchangxian Sep 15, 2023
4086743
Merge pull request #6 from euchangxian/branch-C-NaturalDates
euchangxian Sep 15, 2023
e41a0f7
Update Event Task date arguments logic
euchangxian Sep 18, 2023
34135b7
Merge branch 'branch-A-MoreErrorHandling'
euchangxian Sep 22, 2023
36e88d0
Add Ui.png
euchangxian Sep 22, 2023
7322b31
Update README.md
euchangxian Sep 22, 2023
430035b
Merge branch 'branch-A-UserGuide'
euchangxian Sep 22, 2023
5d6f200
Add JavaFX dependencies in build.gradle
euchangxian Sep 22, 2023
9e8d6ad
Update javaFX dependencies
euchangxian Sep 23, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,4 @@ bin/

/text-ui-test/ACTUAL.TXT
text-ui-test/EXPECTED-UNIX.TXT
/data
53 changes: 53 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
plugins {
id 'java'
id 'application'
id 'com.github.johnrengelman.shadow' version '7.1.2'
id 'checkstyle'
id 'org.openjfx.javafxplugin' version '0.0.13'
}

repositories {
mavenCentral()
}

dependencies {
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.10.0'
testRuntimeOnly group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.10.0'
}

javafx {
version = '17'
modules = [ 'javafx.controls', 'javafx.fxml' ]
}

test {
useJUnitPlatform()

testLogging {
events "passed", "skipped", "failed"

showExceptions true
exceptionFormat "full"
showCauses true
showStackTraces true
showStandardStreams = false
}
}

application {
mainClass.set("duke.Launcher")
}

shadowJar {
archiveBaseName = "duke"
archiveClassifier = null
dependsOn("distZip", "distTar")
}

run {
standardInput = System.in
}

checkstyle {
toolVersion = '10.2'
}
Loading