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

[W4.4b][T09-A4]JOHNNY CHAN JUN XUN #1706

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

Commits on Aug 30, 2016

  1. Update regex for better Name matching

    Fix comment in Address.java (initially it was email for address)
    update tests to validate: new name regex
    okkhoy committed Aug 30, 2016
    Configuration menu
    Copy the full SHA
    db3978d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    730ea58 View commit details
    Browse the repository at this point in the history

Commits on Oct 5, 2016

  1. Configuration menu
    Copy the full SHA
    c3ac0d5 View commit details
    Browse the repository at this point in the history
  2. add more tests to check for dash, dot, qote and unicode characters in…

    … the
    
    name
    update expected.txt to reflect the new changes
    okkhoy committed Oct 5, 2016
    Configuration menu
    Copy the full SHA
    cec9204 View commit details
    Browse the repository at this point in the history
  3. fixed regex to "^[\\p{L}0-9 .'-]+$", the prev one did not have numbers

    hence any name with numeric characer would be rejected.
    okkhoy committed Oct 5, 2016
    Configuration menu
    Copy the full SHA
    adef5c6 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    bf7f6bc View commit details
    Browse the repository at this point in the history

Commits on Oct 6, 2016

  1. Configuration menu
    Copy the full SHA
    8928fef View commit details
    Browse the repository at this point in the history

Commits on Oct 20, 2016

  1. Configuration menu
    Copy the full SHA
    02b59fc View commit details
    Browse the repository at this point in the history

Commits on Oct 21, 2016

  1. Configuration menu
    Copy the full SHA
    c61e65b View commit details
    Browse the repository at this point in the history

Commits on Nov 27, 2016

  1. Add codacy badge

    damithc committed Nov 27, 2016
    Configuration menu
    Copy the full SHA
    2283852 View commit details
    Browse the repository at this point in the history

Commits on Dec 7, 2016

  1. Configuration menu
    Copy the full SHA
    43c506d View commit details
    Browse the repository at this point in the history

Commits on Dec 8, 2016

  1. Configuration menu
    Copy the full SHA
    7518552 View commit details
    Browse the repository at this point in the history

Commits on Dec 10, 2016

  1. Configuration menu
    Copy the full SHA
    f196968 View commit details
    Browse the repository at this point in the history

Commits on Dec 11, 2016

  1. [se-edu#108] Add unit tests for AddCommand class (se-edu#118)

    * [se-edu#108] add unit tests for add command
    
    * renamed methods for consistency
    
    * capitalize todo
    Neurrone authored and pyokagan committed Dec 11, 2016
    Configuration menu
    Copy the full SHA
    88133a6 View commit details
    Browse the repository at this point in the history

Commits on Dec 13, 2016

  1. [se-edu#124] Fix code style violation (se-edu#125)

    * Fix code style violation reported by checkstyle
    
    * Fix checkstyle issues in AddCommandTest
    yamgent authored and pyokagan committed Dec 13, 2016
    Configuration menu
    Copy the full SHA
    7d1de69 View commit details
    Browse the repository at this point in the history

Commits on Dec 22, 2016

  1. [se-edu#107] Add unit tests for Utils class (se-edu#127)

    * Add unit test for Utils class
    
    * Reduce the number of test cases in isAnyNull method
    
    * Reduce number of test cases in elementsAreUnique method
    
    * Change assertAreUnique and assertNotUnique methods to private and remove
    extra spaces
    
    * Remove @before
    
    * Remove try catch clause
    
    * Inline buildTag method
    
    * Change test tag to local variable
    
    * Remove unused import
    
    * Extract createList() method and remove arraylist
    
    * Remove constant
    
    * Rearrange test cases to avoid confusion
    
    * Rename variable
    
    * add test cases to prevent false negative
    
    * Inline createList method
    
    * Rearrange test cases and remove whitespaces
    
    * Add newline at eof
    
    * Added spaces for type casting
    
    * Update comment for UtilsTest
    zzzzwen authored and pyokagan committed Dec 22, 2016
    Configuration menu
    Copy the full SHA
    1a15e66 View commit details
    Browse the repository at this point in the history

Commits on Dec 28, 2016

  1. [se-edu#104] Add unit tests for StorageFile class (se-edu#128)

    * Add unit test for StorageFile class
    
    * Change indentation and add comments
    
    * Make invalid data file more obvious
    
    * Create Utility method getStorage
    
    * Change contains method to equals method
    
    * Style change in StorageFileTest
    
    * Style changes in StorageFileTest
    
    * Inline getStorage method
    
    * Remove unused import
    
    * Revert "Inline getStorage method"
    
    This reverts commit f431d12.
    
    * Re-adjust getStorage() method
    
    * Change assertTrue() to assertEquals
    
    * Move test files to correct folder
    
    * Add test persons and extract to a method
    
    * Rework assertSaveSuccess() method
    
    * Move compareFiles method to TestUtil class
    
    * Minor changes in StorageFile class
    
    * remove trailing whitespaces and unused imports
    
    * remove unused import
    
    * Change to return directly as addressbook
    
    * Rework and rename compareFile() to assertTextFilesEqual()
    
    * Use of temporary folder and minor style issues
    
    * Remove trailing whitespaces
    
    * minor style changes
    
    * Extract temp.txt to constant string
    
    * rework assertSaveSuccess() method
    
    * change of javadoc
    
    * Minor changes
    
    * Javadoc language
    
    * Javadoc change
    
    * Javadoc change
    zzzzwen authored and pyokagan committed Dec 28, 2016
    Configuration menu
    Copy the full SHA
    24335db View commit details
    Browse the repository at this point in the history

Commits on Jan 2, 2017

  1. Configuration menu
    Copy the full SHA
    753fcc1 View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2017

  1. [se-edu#110] Add unit tests for FindCommand class (se-edu#120)

    * Add testutil classes to facilitate testing
    
    * Add TestMain class to facilitate testing of commands
    
    * Add equals() methond in AddressBook, UniquePersonList and UniqueTagList
    
    * Add FindCommandTest and CommandTest
    
    * Fix code style
    
    * Add indentation for equals() method
    
    * Reimplement FindCommandTest without use of TestMain
    
    * Remove duplicate equals() method in UniquePersonList
    
    * Remove TestPerson class
    
    * Refactor FindCommandTest
    
    * Refactor FindCommandTest
    
    * Refactor FindCommandTest
    
    * Remove empty line at top of assertCommandBehavior
    
    * Refactor TypicalPersons.java and shift instantiating a FindCommand in FindCommandTest to asserCommandBehavior method
    
    * Rename assertCommandBehavior to assertFindCommandBehavior
    
    * Remove PersonBuilder and make TypicalPersons fields non-static
    
    * Refactor FindCommandTest by inlining test methods
    
    * Remove unused imports
    
    * Add new test cases
    
    * Remove trailing empty lines
    
    * Fix coding style
    
    * Remove unused imports
    
    * Remove trailing whitespaces
    awhdes authored and pyokagan committed Jan 3, 2017
    Configuration menu
    Copy the full SHA
    a909e09 View commit details
    Browse the repository at this point in the history
  2. [se-edu#130] Change file extension requirement from .txt to .xml (se-…

    …edu#132)
    
    * change file ext requirement from txt to xml
    
    * test script change
    zzzzwen authored and pyokagan committed Jan 3, 2017
    Configuration menu
    Copy the full SHA
    2fdb124 View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2017

  1. [se-edu#117] Names with unicode characters are treated as invalid (se…

    …-edu#138)
    
    This reverts commit c61e65b, reversing
    changes made to 4070eff.
    Neurrone authored and damithc committed Jan 8, 2017
    Configuration menu
    Copy the full SHA
    70f60ba View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    03e0b27 View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2017

  1. Configuration menu
    Copy the full SHA
    9b3434b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    07adaee View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2017

  1. Configuration menu
    Copy the full SHA
    7d0987d View commit details
    Browse the repository at this point in the history
  2. [se-edu#122] Add different levels of comparison to equality methods o…

    …f Person class (se-edu#137)
    
    Sometimes we want to check if 2 persons contain same exact values for all fields, and at other times, just to see if it is the same person (just field values).
    Neurrone authored and damithc committed Jan 15, 2017
    Configuration menu
    Copy the full SHA
    5e55b71 View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2017

  1. [se-edu#111] Add unit tests for ViewAllCommand and ViewCommand classes (

    se-edu#131)
    
    Tests for the `view` and `viewall` commands have been added.
    zzzzwen authored and pyokagan committed Jan 17, 2017
    Configuration menu
    Copy the full SHA
    f92b1d0 View commit details
    Browse the repository at this point in the history

Commits on Jan 21, 2017

  1. Add checkstyle to gradle

    While checkstyle is not covered as a learning objective in level 2, its
    absence makes it harder for maintainers of the repository to ensure that
    the coding standards are followed, as some violations (such as trailing
    whitespaces and redundant imports) can be difficult to spot unless one
    pays a lot of attention to them.
    
    checkstyle.xml is taken from level 4.
    yamgent committed Jan 21, 2017
    Configuration menu
    Copy the full SHA
    8dfc604 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2017

  1. Configuration menu
    Copy the full SHA
    c348297 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a2b49d0 View commit details
    Browse the repository at this point in the history
  3. Generate gradle wrapper

    The gradle wrapper has to be generated as Travis is not able to
    execute the checkstyle tasks without facing the following error:
    
        Execution failed for task ':checkstyleMain'.
            > java.lang.ClassNotFoundException:
            > com.puppycrawl.tools.checkstyle.CheckStyleTask
    
    There were some breaking changes made to checkstyle that causes
    incompatibility with older versions of Gradle, such as Gradle 2.2.1,
    which is used by Travis. (more info about the breaking changes here:
    checkstyle/checkstyle#2107)
    
    Generate the wrapper, which will help to resolve this issue and ensure a
    standard gradle version used by everyone.
    yamgent committed Jan 30, 2017
    Configuration menu
    Copy the full SHA
    15b1751 View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2017

  1. [se-edu#123] Set up checkstyle (se-edu#145)

    While checkstyle is not covered as a learning objective in level 2, its
    absence makes it harder for maintainers of the repository to ensure that
    the coding standards are followed, as some violations (such as trailing
    whitespaces and redundant imports) can be difficult to spot unless one
    pays a lot of attention to them.
    damithc committed Jan 31, 2017
    Configuration menu
    Copy the full SHA
    5810f7c View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2017

  1. Move handling of missing file to normal code path

    As stated in the comments of the original code, handling the missing
    file using an exception is not appropriate, because it is a normal
    situation (e.g. when starting the program for the very first time).
    
    Therefore, handle the logic outside the exception code path to aid
    readability.
    yamgent committed Feb 4, 2017
    Configuration menu
    Copy the full SHA
    2ef44b2 View commit details
    Browse the repository at this point in the history
  2. Remove creating new file on load()

    Saving should not be the job of the load() method. It should have been
    handled by save().
    
    Remove the saving logic in load().
    yamgent committed Feb 4, 2017
    Configuration menu
    Copy the full SHA
    44ceadb View commit details
    Browse the repository at this point in the history
  3. Add unit test for loading non-existent files

    The scenario whereby the storage file does not exist is not unit
    tested.
    
    This unit test also ensures that the non-existent file is not
    immediately created when it tries to load from that file (which should
    not be the behaviour of load()).
    yamgent committed Feb 4, 2017
    Configuration menu
    Copy the full SHA
    adf4aef View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2017

  1. [se-edu#129] StorageFile class: load method should not create a new f…

    …ile (se-edu#142)
    
    load() method creates a new address book xml file if it
    does not exist.
    
    However, the responsibility of load() is to simply read the file,
    not write it. Even if the file does not exist, load() should simply
    treat the situation as if it is loading a blank file, and handle
    accordingly. Creating a new file is redundant anyway if load() does
    not even attempt to read it after creation, and load() will not gain
    any new information by reading it.
    
    Let's remove the saving functionality of load() in order to narrow
    down the responsibility of the method to purely just reading the xml
    files.
    damithc committed Feb 13, 2017
    Configuration menu
    Copy the full SHA
    7492790 View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2017

  1. AddressBook: remove unused addTag()

    AddressBook#addTag() adds a Tag to the master list of Tags in
    AddressBook.
    
    This method is not used anywhere, and can be classified as unused code.
    There are no commands that support the addition of Tags only, and it is
    also not part of any learning objectives. Furthermore,
    AddressBook#syncTagsWithMasterList() already handles the addition of
    Tags from a Person gracefully without using exceptions. It should be
    removed as unused code contributes to maintenance and comprehension
    overheads.
    
    Let's remove AddressBook#addTag().
    PierceAndy committed Feb 15, 2017
    Configuration menu
    Copy the full SHA
    419ec2b View commit details
    Browse the repository at this point in the history
  2. UniqueTagList: remove unused add()

    UniqueTagList#add() adds a Tag to the list of unique Tags, and throws an
    exception if it is a duplicate of an existing Tag in the list.
    
    With the removal of AddressBook#addTag(), this method is not used
    anywhere, and can be classified as unused code. It should be removed as
    unused code contributes to maintenance and comprehension overheads.
    
    Let's remove UniqueTagList#add().
    PierceAndy committed Feb 15, 2017
    Configuration menu
    Copy the full SHA
    84c8535 View commit details
    Browse the repository at this point in the history
  3. AddressBook: remove unused removeTag()

    AddressBook#removeTag() removes a Tag from the master list of Tags and
    from any Person in AddressBook.
    
    This method is not used anywhere, and can be classified as unused code.
    There are no commands that support the removal of Tags only, and it is
    also not part of any learning objectives. It should be removed as unused
    code contributes to maintenance and comprehension overheads.
    
    Let's remove AddressBook#removeTag().
    PierceAndy committed Feb 15, 2017
    Configuration menu
    Copy the full SHA
    fb8863d View commit details
    Browse the repository at this point in the history
  4. UniqueTagList: remove unused remove()

    UniqueTagList#remove() removes a Tag from the list of unique Tags, and
    throws an exception if it is not found in the list.
    
    With the removal of AddressBook#removeTag(), this method is not used
    anywhere, and can be classified as unused code. It should be removed as
    unused code contributes to maintenance and comprehension overheads.
    
    Let's remove UniqueTagList#remove().
    PierceAndy committed Feb 15, 2017
    Configuration menu
    Copy the full SHA
    4e3fac9 View commit details
    Browse the repository at this point in the history
  5. AddressBook: remove unused containsTag()

    AddressBook#containsTag() checks if the master list of Tags contains a
    Tag with the same value as the given Tag.
    
    AddressBook#containsTag() is not used in the production code. While it
    is used in test code, its use can be replaced by
    AddressBookTest#isTagObjectInAddressBookList().
    
    Let's remove AddressBook#containsTag().
    
    Notes:
    * Why not keep AddressBook#containsTag() and remove
    AddressBookTest#isTagObjectInAddressBookList() instead? The former does
    a value equality test while the latter goes further and does a reference
    equality test. The test code requires a reference equality test to
    verify Person objects refer to Tag objects in the common tag list
    instead of keeping its own copies of Tag objects.
    * Why not change AddressBook#containsTag() to use reference equality and
    use that in tests? Doing so will make AddressBook#containsTag()'s
    semantics inconsistent with the rest of our API.
    PierceAndy committed Feb 15, 2017
    Configuration menu
    Copy the full SHA
    a6cc952 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2017

  1. [se-edu#169] Addressbook::addTag() is not used (se-edu#179)

    Let's remove the following methods that are no longer used, 
    including other related code that are made redundant by 
    their removal.
    * Addressbook#addTag()
    * Addressbook#containsTag()
    * Addressbook#removeTag()
    * UniqueTagList#add()
    * UniqueTagList#remove()
    damithc committed Feb 20, 2017
    Configuration menu
    Copy the full SHA
    4f5b987 View commit details
    Browse the repository at this point in the history

Commits on Mar 15, 2017

  1. Configuration menu
    Copy the full SHA
    c3c63de View commit details
    Browse the repository at this point in the history

Commits on Mar 28, 2017

  1. Configuration menu
    Copy the full SHA
    d238818 View commit details
    Browse the repository at this point in the history

Commits on Apr 1, 2017

  1. Configuration menu
    Copy the full SHA
    816c503 View commit details
    Browse the repository at this point in the history

Commits on Apr 7, 2017

  1. [se-edu#146] Run I/O tests in CI (se-edu#189)

    Only JUnit tests are run by Travis.
    
    Let's teach Travis to run I/O tests. Since the default Travis
    build command, which runs the JUnit tests, is being overwritten,
    we have to explicitly run the JUnit tests as well.
    chao1995 authored and damithc committed Apr 7, 2017
    Configuration menu
    Copy the full SHA
    2d5071d View commit details
    Browse the repository at this point in the history

Commits on Apr 14, 2017

  1. [se-edu#191] runtest.sh: fix bug in deleting actual.txt from previous…

    … run (se-edu#192)
    
    There are three issues with the logic of 'runtest.sh' for deleting
    './actual.txt' from previous run:
    
    1. It treats 'actual.txt' as a directory (with "-d").
    2. It tries to delete 'actual.txt' when it does not exist (with "!").
    3. It looks at the wrong directory for 'actual.txt' (with ".."
       instead of ".").
    
    Let's update runtest.sh to fix the above issues.
    chao1995 authored and damithc committed Apr 14, 2017
    Configuration menu
    Copy the full SHA
    1603ad0 View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2017

  1. Configuration menu
    Copy the full SHA
    ae4464f View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2017

  1. [se-edu#202] Remove Eclipse project files (se-edu#203)

    As we are moving to IntelliJ, the Eclipse project files are no longer
    needed.
    
    Let's remove them.
    limmlingg authored and yamgent committed Jul 26, 2017
    Configuration menu
    Copy the full SHA
    08e7bcd View commit details
    Browse the repository at this point in the history

Commits on Aug 28, 2017

  1. [se-edu#205] DeveloperGuide: Improve project setup instructions (se-e…

    …du#206)
    
    If the project is not set up properly, StorageFileTest will fail because
    it cannot find the test data file that it uses.
    
    The instructions in DeveloperGuide are not clear enough, as the
    resolution of this problem is only in the Troubleshooting section, and
    is not mentioned anywhere else.
    
    Let's make the DeveloperGuide instructions clearer by addressing this
    issue directly in the setup section.
    yamgent committed Aug 28, 2017
    Configuration menu
    Copy the full SHA
    e7df84a View commit details
    Browse the repository at this point in the history

Commits on Aug 29, 2017

  1. Configuration menu
    Copy the full SHA
    a8cd67f View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2017

  1. Configuration menu
    Copy the full SHA
    ad71877 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2017

  1. Configuration menu
    Copy the full SHA
    f94fe28 View commit details
    Browse the repository at this point in the history
  2. Command class: make non-abstract

    Command class is abstract.
    
    Abstract classes are not an LO covered at level2.
    
    Let's make Command class non-abstract so that students who haven't
    learned about abstract classes are not confused by it.
    damithc committed Aug 31, 2017
    Configuration menu
    Copy the full SHA
    de7ef4a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2b706ae View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2017

  1. Configuration menu
    Copy the full SHA
    5d095e8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    96597cc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4991eed View commit details
    Browse the repository at this point in the history

Commits on Sep 10, 2017

  1. [se-edu#208] DeveloperGuide: Change setup to use default test configu…

    …ration (se-edu#226)
    
    The working directory needs to be changed for the tests to run properly.
    Therefore, the developer guide instructs the developer to modify the
    generated test configuration.
    
    If the IDE generates another new test configuration, the settings needs
    to be changed again, otherwise the tests will fail again.
    
    Let's change the instructions to ask the developers to modify the
    default test configuration instead of the generated one.
    yamgent committed Sep 10, 2017
    Configuration menu
    Copy the full SHA
    74ec38a View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2017

  1. Configuration menu
    Copy the full SHA
    23644b1 View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2018

  1. Configuration menu
    Copy the full SHA
    3d6645b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5000279 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9a86a6e View commit details
    Browse the repository at this point in the history
  4. Updated User Guide

    johnnychanjx committed Feb 7, 2018
    Configuration menu
    Copy the full SHA
    9193f7e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    44785b1 View commit details
    Browse the repository at this point in the history