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

[CS2103T-W16-3] Fine$$e #83

Open
wants to merge 174 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
174 commits
Select commit Hold shift + click to select a range
a1b7313
Add draft user guide (#1)
wltan Sep 15, 2020
ca73778
Update Gradle to 6.6.1 (#3)
wltan Sep 18, 2020
82b9df8
Add PIT mutation testing (#6)
wltan Sep 21, 2020
ffb4d68
Update 'About Us' information for Ian (#10)
ianyong Sep 21, 2020
bcb7d10
Update information for Wei Liang (#11)
wltan Sep 21, 2020
789460a
Add Git pre-push hook (#7)
ianyong Sep 21, 2020
1e70ae1
Update Developer Guide User Stories, Use Cases section (#13)
zhaojj2209 Sep 21, 2020
dc4776c
Update 'About Us' information for Siddarth (#12)
siddarth2824 Sep 22, 2020
2032dd5
Update information for Jingjing (#15)
zhaojj2209 Sep 22, 2020
255ac6b
Update 'About Us' information for Yong Ping (#16)
yongping827 Sep 22, 2020
ff9df40
Update Developer Guide: NFR, Glossary (#14)
yongping827 Sep 23, 2020
c69c23f
Add meeting minutes to GitHub Pages (#18)
ianyong Sep 24, 2020
9c34ddc
Achieve parity between pre-push hook and CI job (#23)
ianyong Sep 25, 2020
a16427d
Add 2020-09-25 minutes (#36)
zhaojj2209 Sep 25, 2020
a009319
Update README (#29)
siddarth2824 Sep 25, 2020
aa5158c
Rename seedu.address.model classes (#39)
yongping827 Oct 1, 2020
2eaa613
Refactor tag and person package to category and transaction respectiv…
zhaojj2209 Oct 1, 2020
1c5decb
Remove 'address' field from 'person' model (#48)
ianyong Oct 2, 2020
9874ce6
Add additional menu to the menubar (#49)
siddarth2824 Oct 2, 2020
33c4f8e
Add skeleton classes for Expense and Income (#50)
zhaojj2209 Oct 2, 2020
5800c0f
Add 2020-10-02 minutes (#51)
yongping827 Oct 2, 2020
55b850a
Rename seedu.address (#52)
zhaojj2209 Oct 2, 2020
41cc669
Add Gantt chart (#58)
ianyong Oct 4, 2020
1f3b243
Add income commands (#56)
wltan Oct 4, 2020
de5fcfc
Change 'category' prefix (#66)
ianyong Oct 4, 2020
529d128
Fix meeting minutes titles (#65)
ianyong Oct 4, 2020
72bff12
Add expense commands (#63)
ianyong Oct 4, 2020
f5a8c54
Rename 'name' field to 'title' (#67)
ianyong Oct 4, 2020
6ff22cd
Rename AddressBook and relevant fields (#70)
zhaojj2209 Oct 6, 2020
e640da7
Remove duplicate checks (#72)
zhaojj2209 Oct 6, 2020
7bc60c5
Rework model validation rules (#73)
wltan Oct 6, 2020
3e647c1
Add meeting minutes for 6 October 2020 (#74)
ianyong Oct 6, 2020
6ff9bd6
Update UI to match project UI mockup (#75)
siddarth2824 Oct 7, 2020
2de446a
Modify storage to handle expense and income (#76)
yongping827 Oct 8, 2020
2ab9a1e
Modify Logic and Model to handle expense and income (#77)
yongping827 Oct 9, 2020
6a4047a
Fix input validation for category (#79)
ianyong Oct 10, 2020
53b4dfe
Refactor IncomePanel and ExpensePanel to display incomes and expenses…
siddarth2824 Oct 11, 2020
8ff9fc5
Refactor logic to allow for UI-dependent behaviour (#83)
ianyong Oct 11, 2020
5375042
Add 2020-10-10 minutes (#87)
wltan Oct 11, 2020
862b9de
Add 'tab' command (#90)
ianyong Oct 11, 2020
7557d02
Modify 'delete' command to depend on UI state (#93)
wltan Oct 11, 2020
381cfbc
Fix delete command messages (#96)
wltan Oct 11, 2020
ebd349d
Modify user guide link in help window (#97)
zhaojj2209 Oct 11, 2020
ad2cbda
Modify 'find' command to depend on UI state (#94)
zhaojj2209 Oct 11, 2020
9c8d933
Modify 'list' command to depend on UI state (#100)
ianyong Oct 12, 2020
cc0c703
Fix list commands (#102)
zhaojj2209 Oct 12, 2020
93c66d2
Modify getTypicalFinanceTracker (#103)
yongping827 Oct 12, 2020
a1db477
Remove trailing whitespace from minutes 2020-10-10 (#105)
yongping827 Oct 12, 2020
c7bc783
Modify 'add' command to depend on UI state (#106)
wltan Oct 12, 2020
a162fa5
Update UI styling to match UI mockup (#101)
siddarth2824 Oct 13, 2020
6b3aa2b
Modify 'edit' command to depend on UI state (#107)
ianyong Oct 13, 2020
c6e4604
Fix error while loading custom fonts (#109)
ianyong Oct 13, 2020
e2a9125
Fix 'tab' command not working with TabPane (#113)
ianyong Oct 14, 2020
e79374b
Add meeting minutes for 16 October 2020 (#118)
siddarth2824 Oct 17, 2020
97dc2ad
Add tests to increase code coverage for 'logic' components (#119)
ianyong Oct 17, 2020
9179219
Standardise date format and add validation (#122)
wltan Oct 17, 2020
c3fbf80
Modify implementation of transaction, expense and income lists (#123)
yongping827 Oct 17, 2020
5d39950
Standardise amount format (#124)
wltan Oct 17, 2020
01b39c9
Delete ExpenseList, IncomeList and JsonAdaptedTransaction (#127)
zhaojj2209 Oct 17, 2020
989cfaf
Update user guide (#114)
zhaojj2209 Oct 18, 2020
b636dd9
Update 'title' and 'category' validation (#130)
ianyong Oct 18, 2020
1a702c7
Add tests to increase code coverage for 'model' components (#132)
ianyong Oct 18, 2020
5a0d0b1
Enable assertions (#134)
ianyong Oct 18, 2020
86df6cc
Make Transaction abstract (#135)
zhaojj2209 Oct 19, 2020
db4b795
Fix jarfile name (#138)
wltan Oct 19, 2020
7089d6f
Update developer guide (#120)
zhaojj2209 Oct 20, 2020
deb2819
Update Developer guide and DevOps guide (#140)
wltan Oct 20, 2020
f710333
Add implementation details of programmatic tab switching to Developer…
ianyong Oct 20, 2020
3220d2f
Update Developer Guide (#142)
siddarth2824 Oct 20, 2020
ce3f825
Update Model and Storage sections in Developer Guide (#143)
yongping827 Oct 20, 2020
aa310fc
Add missing image, minor developer guide fixes (#144)
zhaojj2209 Oct 21, 2020
289b954
Add frequent expense feature (#136)
siddarth2824 Oct 21, 2020
6f82c27
Siddarth/fix ui bug (#147)
siddarth2824 Oct 22, 2020
f8d2a2e
Add command to add frequent incomes (#148)
siddarth2824 Oct 23, 2020
f2cfef6
Update trailing whitespace check (#152)
ianyong Oct 23, 2020
ed88fc4
Set monthly expense limit (#150)
zhaojj2209 Oct 23, 2020
fb63b27
Refactor tabs (#161)
ianyong Oct 23, 2020
10b03bb
Add meeting minutes for 23 October 2020 (#163)
wltan Oct 23, 2020
402c809
Set monthly savings goal (#165)
zhaojj2209 Oct 24, 2020
87d169b
Fix expense and income lists to update automatically (#168)
wltan Oct 24, 2020
cf7d40e
Standardize parse exception precedence across commands (#173)
wltan Oct 24, 2020
c0c2896
Update layout of user guide (#169)
siddarth2824 Oct 24, 2020
b4f65da
Add additional commands for Frequent Income feature (#166)
siddarth2824 Oct 24, 2020
d7fbd22
Add calculations of budget and savings (#172)
zhaojj2209 Oct 24, 2020
6f98875
Make UI resizable (#174)
ianyong Oct 24, 2020
5c4fdfe
Partially update user guide (#176)
zhaojj2209 Oct 24, 2020
bf40ae2
Partially update user guide (#178)
wltan Oct 24, 2020
68ffac1
Partially update user guide (#179)
ianyong Oct 24, 2020
b3bf081
Partially update user guide (#180)
yongping827 Oct 25, 2020
09cdfdc
Partially update user guide (#181)
siddarth2824 Oct 25, 2020
190a895
Add content to Analytics tab (#177)
yongping827 Oct 25, 2020
78cb1fd
Refactor add command for frequent expense and frequent income (#183)
siddarth2824 Oct 26, 2020
c793615
Refactor Ui to display dates of transactions (#188)
siddarth2824 Oct 26, 2020
cdfc568
Fix CSS for ordered lists (#190)
ianyong Oct 26, 2020
898e64e
Refactor all instances of frequent to bookmark (#191)
siddarth2824 Oct 26, 2020
0e28a4a
Expand find command functionality (#194)
zhaojj2209 Oct 27, 2020
b16be64
Add 'No External Site' page (#198)
ianyong Oct 27, 2020
3a679f2
Add amount prefix to set expense limit/savings goal commands (#197)
zhaojj2209 Oct 27, 2020
3326bbc
Restrict users from using certain commands for Bookmark Transactions …
wltan Oct 27, 2020
8a570be
Add restrictions to command inputs (#201)
zhaojj2209 Oct 27, 2020
fd19491
Add user guide to application (#199)
ianyong Oct 27, 2020
35dec7b
Add application icon and website favicon (#203)
ianyong Oct 28, 2020
e8b4f82
Use relative_url for favicon path (#205)
ianyong Oct 28, 2020
0f8dcc6
Fix user guide bugs (#206)
wltan Oct 28, 2020
1978ed8
Change instructions for set commands (#209)
zhaojj2209 Oct 29, 2020
9b07dd9
Load macOS default system font using its internal name (#212)
ianyong Oct 29, 2020
d7dd615
Fix crash on startup (#215)
ianyong Oct 29, 2020
5098406
Make model data attributes private (#213)
wltan Oct 29, 2020
a5ab63f
Refactor parsing logic to make date input optional (#211)
siddarth2824 Oct 29, 2020
f9e28f7
Fix transaction list to update on clear command (#219)
wltan Oct 29, 2020
7e151a5
Modify savings goal panel (#207)
yongping827 Oct 29, 2020
c0b7970
Add duplicate restrictions to edit transaction and add bookmark comma…
zhaojj2209 Oct 29, 2020
61fbcb3
Update User Guide (#224)
siddarth2824 Oct 29, 2020
d217fd1
Fix analytics charts to update with the transaction list (#225)
wltan Oct 29, 2020
b34b326
Disable scrolling of tabs using arrow keys (#231)
ianyong Oct 29, 2020
fccf804
Modify duplicate check for bookmark expenses and incomes lists (#228)
yongping827 Oct 29, 2020
50c66b7
Improve UI scalability (#226)
ianyong Oct 29, 2020
e8a7ae5
Update user guide (#232)
zhaojj2209 Oct 29, 2020
694932d
Limit Amount to 8 digits (#234)
wltan Oct 29, 2020
2685d4e
Update user guide screenshots (#235)
ianyong Oct 30, 2020
0c7585b
Add command history (#253)
ianyong Oct 31, 2020
a22d7ea
Add screenshots for bookmark commands (#252)
siddarth2824 Oct 31, 2020
9e37a56
Explicitly list out printable ASCII characters (#257)
ianyong Oct 31, 2020
ca42d1f
Add additional parser method for parsing title (#254)
siddarth2824 Oct 31, 2020
8122569
Fix inaccurate date validation (#260)
wltan Oct 31, 2020
1e3a4e9
Update user guide (#258)
yongping827 Oct 31, 2020
4f99068
Fix categories ScrollPane consuming all ScrollEvents (#261)
ianyong Oct 31, 2020
73f4e3f
Add image caption style (#263)
ianyong Oct 31, 2020
7dcaa22
Add meeting minutes for 31 October 2020 (#264)
yongping827 Oct 31, 2020
ae20d85
Replace non-breaking spaces with regular spaces (#268)
ianyong Nov 2, 2020
cb919f4
Refactor editing of bookmark transactions (#267)
siddarth2824 Nov 2, 2020
0adb55c
Modify search rules for find by title keyphrase (#265)
zhaojj2209 Nov 3, 2020
512bb7e
Add clear command confirmation (#266)
wltan Nov 3, 2020
be814c7
Update PPP for Jingjing (#273)
zhaojj2209 Nov 3, 2020
0515e9b
Update PPP for Wei Liang (#275)
wltan Nov 3, 2020
ac0f1f3
Update PPP for Siddarth (#274)
siddarth2824 Nov 3, 2020
9afbbab
Add draft PPP (#276)
yongping827 Nov 3, 2020
d2564e5
Add PPP draft for Ian (#277)
ianyong Nov 3, 2020
5a6a02a
Add tests for FinanceTrackerParser (#272)
siddarth2824 Nov 4, 2020
dbdc2fc
Modify base commands to throw exception on execute (#269)
yongping827 Nov 4, 2020
7e106fb
Enforce no arguments for single-word commands (#281)
ianyong Nov 5, 2020
a264c35
Add method in Date to return current date (#283)
siddarth2824 Nov 5, 2020
6e556f7
Repair broken abstraction - Amount (#284)
wltan Nov 6, 2020
412f667
Exclude UI from test coverage (#287)
wltan Nov 6, 2020
d726aac
Add empty argument error checks (#285)
zhaojj2209 Nov 7, 2020
20cabd7
Improve abstraction within classes related to bookmark transactions f…
siddarth2824 Nov 7, 2020
ac8f2b8
Fix coding standard violation (#294)
wltan Nov 7, 2020
8e535b6
Ban time travel (#289)
ianyong Nov 7, 2020
9312955
Add switching of tabs when executing add and budget commands (#288)
zhaojj2209 Nov 7, 2020
3861174
Add MonthlyBudget tests (#295)
zhaojj2209 Nov 7, 2020
b4fd6b6
Add Pitest as CI with artifact (#296)
wltan Nov 7, 2020
fea4360
Add tests for CalculatedAmount (#298)
wltan Nov 8, 2020
05f9885
Remove duplicate BookmarkTransactionBuilder (#301)
siddarth2824 Nov 8, 2020
3870aa4
Increase code coverage for parsers (#303)
ianyong Nov 8, 2020
1fc8d67
Set background colour of BorderPane (#306)
ianyong Nov 8, 2020
d517596
Rewrite MonthlyBudget calculations (#304)
wltan Nov 8, 2020
0e5409c
Increase code coverage for commands (#309)
ianyong Nov 9, 2020
f61ee26
Update developer guide for model, find feature and budget feature (#299)
zhaojj2209 Nov 9, 2020
29c44c4
Add '+' and '-' signs to amounts displayed on Overview tab (#311)
ianyong Nov 9, 2020
48b3e46
Modify parsing of prefixes (#308)
yongping827 Nov 9, 2020
8aa45fd
Fix budget month order (#313)
wltan Nov 9, 2020
de35559
Update developer guide (#317)
yongping827 Nov 9, 2020
3211587
Update developer guide (#314)
wltan Nov 9, 2020
e4131e3
Update developer guide (#318)
ianyong Nov 9, 2020
307abd8
Update index page and README (#320)
yongping827 Nov 9, 2020
28deb54
Update developer guide for bookmark transaction feature (#315)
siddarth2824 Nov 9, 2020
6de2df4
Finalise user guide (#322)
zhaojj2209 Nov 9, 2020
5e77b5b
Update PPP for Jingjing (#321)
zhaojj2209 Nov 9, 2020
9519669
Update PPP for Wei Liang (#323)
wltan Nov 9, 2020
7ed2a38
Update PPP for Yong Ping (#325)
yongping827 Nov 9, 2020
ae492c3
Finalise PPP for Ian (#326)
ianyong Nov 9, 2020
5456686
Update screenshots for User Guide (#324)
siddarth2824 Nov 9, 2020
d586624
Update PPP for Siddarth (#327)
siddarth2824 Nov 9, 2020
b54a7d2
Finalise developer guide (#328)
zhaojj2209 Nov 9, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .github/check-eof-newline.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#!/bin/sh
# Checks that all text files end with a newline.
echo "Checking for newline at EOF..."

ret=0

Expand Down
1 change: 1 addition & 0 deletions .github/check-line-endings.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/bin/sh
# Checks for prohibited line endings.
# Prohibited line endings: \r\n
echo "Checking for prohibited line endings..."

git grep --cached -I -n --no-color -P '\r$' -- ':/' |
awk '
Expand Down
13 changes: 3 additions & 10 deletions .github/check-trailing-whitespace.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#!/bin/sh
# Checks for trailing whitespace
echo "Checking for trailing whitespace..."

git grep --cached -I -n --no-color -P '[ \t]+$' -- ':/' |
awk '
Expand All @@ -9,16 +10,8 @@ awk '
ret = 0
}
{
# Only warn for markdown files (*.md) to accomodate text editors
# which do not properly handle trailing whitespace.
# (e.g. GitHub web editor)
if ($1 ~ /\.md$/) {
severity = "WARN"
} else {
severity = "ERROR"
ret = 1
}
print severity, $1, $2, " trailing whitespace."
ret = 1
print "ERROR", $1, $2, " trailing whitespace."
}
END {
exit ret
Expand Down
1 change: 1 addition & 0 deletions .github/run-checks.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/bin/sh
# Runs all check-* scripts, and returns a non-zero exit code if any of them fail.

echo "Running formatting checks..."
dir=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) &&
ret=0 &&
for checkscript in "$dir"/check-*; do
Expand Down
49 changes: 49 additions & 0 deletions .github/workflows/build-jekyll.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Build and Deploy to GitHub Pages

on:
push:
branches:
- master

defaults:
run:
working-directory: docs

jobs:
build_and_deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2

# Set up Ruby
- uses: actions/setup-ruby@v1
with:
ruby-version: '2.7'

# Cache dependencies on server
- uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-

# Install dependencies
- name: Install dependencies
run: |
gem install bundler
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3

# Build Jekyll site
- name: Build
env:
JEKYLL_ENV: production
run: bundle exec jekyll build --baseurl /${{ github.event.repository.name }} # Set the repo name as the base URL

# Deploy to GitHub Pages
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./docs/_site
38 changes: 38 additions & 0 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,41 @@ jobs:
with:
file: ${{ github.workspace }}/build/reports/jacoco/coverage/coverage.xml
fail_ci_if_error: true

pitest:
runs-on: ubuntu-latest

steps:
- name: Set up repository
uses: actions/checkout@master

- name: Set up repository
uses: actions/checkout@master
with:
ref: master

- name: Merge to master
run: git checkout --progress --force ${{ github.sha }}

- name: Run repository-wide tests
if: runner.os == 'Linux'
working-directory: ${{ github.workspace }}/.github
run: ./run-checks.sh

- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1

- name: Setup JDK 11
uses: actions/setup-java@v1
with:
java-version: '11'
java-package: jdk+fx

- name: Run Pitest
run: ./gradlew pitest

- name: Upload Pitest report
uses: actions/upload-artifact@v2
with:
name: pitest
path: build/reports/pitest/
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ src/main/resources/docs/
/.idea/
/out/
/*.iml
src/main/main.iml

# Storage/log files
/data/
Expand All @@ -20,3 +21,4 @@ src/test/data/sandbox/
# MacOS custom attributes files created by Finder
.DS_Store
docs/_site/
docs/.sass-cache/
34 changes: 23 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
[![CI Status](https://github.com/se-edu/addressbook-level3/workflows/Java%20CI/badge.svg)](https://github.com/se-edu/addressbook-level3/actions)
[![CI Status](https://github.com/AY2021S1-CS2103T-W16-3/tp/workflows/Java%20CI/badge.svg)](https://github.com/AY2021S1-CS2103T-W16-3/tp/actions)
[![codecov](https://codecov.io/gh/AY2021S1-CS2103T-W16-3/tp/branch/master/graph/badge.svg)](https://codecov.io/gh/AY2021S1-CS2103T-W16-3/tp)

![Ui](docs/images/Ui.png)

* This is **a sample project for Software Engineering (SE) students**.<br>
Example usages:
* as a starting point of a course project (as opposed to writing everything from scratch)
* as a case study
* The project simulates an ongoing software project for a desktop application (called _AddressBook_) used for managing contact details.
* It is **written in OOP fashion**. It provides a **reasonably well-written** code base **bigger** (around 6 KLoC) than what students usually write in beginner-level SE modules, without being overwhelmingly big.
* It comes with a **reasonable level of user and developer documentation**.
* It is named `AddressBook Level 3` (`AB3` for short) because it was initially created as a part of a series of `AddressBook` projects (`Level 1`, `Level 2`, `Level 3` ...).
* For the detailed documentation of this project, see the **[Address Book Product Website](https://se-education.org/addressbook-level3)**.
* This project is a **part of the se-education.org** initiative. If you would like to contribute code to this project, see [se-education.org](https://se-education.org#https://se-education.org/#contributing) for more info.
* Fine$$e is a desktop app for **managing finances, optimized for use via a Command Line Interface (CLI)** while still having the benefits of a Graphical User Interface (GUI). If you can type fast, Fine\$\$e can track and help you cultivate good financial habits faster than traditional GUI apps.

Site Map
==

* [User Guide](https://ay2021s1-cs2103t-w16-3.github.io/tp/UserGuide.html)
* [Developer Guide](https://ay2021s1-cs2103t-w16-3.github.io/tp/DeveloperGuide.html)
* [About Us](https://ay2021s1-cs2103t-w16-3.github.io/tp/AboutUs.html)

Acknowledgments
==

* This project is based on the AddressBook-Level3 project created by the [SE-EDU initiative](https://se-education.org).
* Libraries used:
* [Git Hooks Gradle Plugin](https://plugins.gradle.org/plugin/com.github.jakemarsden.git-hooks) *(licensed under the [MIT License](https://github.com/jakemarsden/git-hooks-gradle-plugin/blob/master/LICENSE))*
* [Gradle plugin for PIT Mutation Testing](https://plugins.gradle.org/plugin/info.solidsoft.pitest)
* [JavaFX](https://openjfx.io/)
* [Jackson](https://github.com/FasterXML/jackson)
* [Jekyll Spaceship](https://rubygems.org/gems/jekyll-spaceship) *(licensed under the [MIT License](https://github.com/jakemarsden/git-hooks-gradle-plugin/blob/master/LICENSE))*
* [JUnit5](https://github.com/junit-team/junit5)
* [PlantUML](https://plantuml.com/)
38 changes: 33 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ plugins {
id 'com.github.johnrengelman.shadow' version '4.0.4'
id 'application'
id 'jacoco'
id 'info.solidsoft.pitest' version '1.5.2'
id 'com.github.jakemarsden.git-hooks' version '0.0.2'
}

mainClassName = 'seedu.address.Main'
mainClassName = 'ay2021s1_cs2103_w16_3.finesse.Main'

sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
Expand All @@ -30,16 +32,32 @@ task coverage(type: JacocoReport) {
classDirectories.from files(sourceSets.main.output)
executionData.from files(jacocoTestReport.executionData)
afterEvaluate {
classDirectories.from files(classDirectories.files.collect {
fileTree(dir: it, exclude: ['**/*.jar'])
})
classDirectories.setFrom(files(classDirectories.files.collect {
fileTree(dir: it, exclude: ['ay2021s1_cs2103_w16_3/finesse/ui/**/*', '**/*.jar'])
}))
}
reports {
html.enabled = true
xml.enabled = true
}
}

pitest {
targetClasses = ['ay2021s1_cs2103_w16_3.finesse.*']
junit5PluginVersion = '0.12'
threads = 4
excludedClasses = ['ay2021s1_cs2103_w16_3.finesse.ui.*']
}

gitHooks {
hooksDirectory = file('.git/hooks')
gradleCommand = './gradlew'
hooks = [
// Git hooks run in a bash environment regardless of OS.
'pre-push': 'clean check && .github/run-checks.sh'
]
}

dependencies {
String jUnitVersion = '5.4.0'
String javaFxVersion = '11'
Expand All @@ -56,6 +74,12 @@ dependencies {
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-graphics', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-media', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-media', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-media', version: javaFxVersion, classifier: 'linux'
implementation group: 'org.openjfx', name: 'javafx-web', version: javaFxVersion, classifier: 'win'
implementation group: 'org.openjfx', name: 'javafx-web', version: javaFxVersion, classifier: 'mac'
implementation group: 'org.openjfx', name: 'javafx-web', version: javaFxVersion, classifier: 'linux'

implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.7.0'
implementation group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.7.4'
Expand All @@ -66,7 +90,11 @@ dependencies {
}

shadowJar {
archiveName = 'addressbook.jar'
archiveFileName = 'finesse.jar'
}

run {
enableAssertions = true
}

defaultTasks 'clean', 'test'
2 changes: 1 addition & 1 deletion config/checkstyle/checkstyle.xml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@

<module name="PackageName">
<!-- Validates identifiers for package names against the supplied expression. -->
<property name="format" value="^[a-z]+(\.[a-z][a-z0-9]{1,})*$"/>
<property name="format" value="^[a-z0-9_]+(\.[a-z][a-z0-9]{1,})*$"/>
<property name="severity" value="warning"/>
</module>

Expand Down
18 changes: 0 additions & 18 deletions config/travis/check-eof-newline.sh

This file was deleted.

19 changes: 0 additions & 19 deletions config/travis/check-line-endings.sh

This file was deleted.

26 changes: 0 additions & 26 deletions config/travis/check-trailing-whitespace.sh

This file was deleted.

11 changes: 0 additions & 11 deletions config/travis/run-checks.sh

This file was deleted.

Loading