I will give you the link to GitHub about the code when you accept this assignment and you can clone the code to your intellij
Follow the recommendations of your TA for which Java IDE to use. Then using git on the command line or Github Desktop to clone the paystation git repository you created in Part I in your local workspace.
Get more information about the project I uploaded: playstation.pdf
Coding Requirements: Make the following modifications to the PayStation:
- All development should follow TDD. Commit to the repository after each test is added and when each test passes. Alternate team members between each task, this should be visible in git commit log. (This is one important goal of this assignment! Many points will be deduced if the git commit log do not show alternating contributions from each team member.)
- Add a method int empty() that returns the total amount of money collected by the paystation since the last call and empties it, setting the total to zero. Note that money is only collected after a call to buy.
- Change the requirements for cancel to the following.
/** Cancel the present transaction. Resets the paystation for a * new transaction. * @return A Map defining the coins returned to the user. * The key is the coin type and the associated value is the * number of these coins that are returned. * The Map object is never null even if no coins are returned. * The Map will only contain only keys for coins to be returned. (If you enter two dimes and a nickle, you should get back two dimes and a nickle, not a quarter.)* The Map will be cleared after a cancel or buy. */ Map<Integer, Integer> cancel();
- There should be the following test cases:
- Call to empty returns the total amount entered.
- Canceled entry does not add to the amount returned by empty.
- Call to empty resets the total to zero.
- Call to cancel returns a map containing one coin entered.
- Call to cancel returns a map containing a mixture of coins entered. ( Entering 10c, 10c and 5c then pressing cancel is returning 2x10c and 1x5c and really not returning 1x25c)
- Call to cancel returns a map that does not contain a key for a coin not entered.
- Call to cancel clears the map.
- Call to buy clears the map.
PART 2 Report,
- this is report template I upload below:
- Title Page: showing the name of the document, authors, url of the git repository, course and section number.
- Document Overview: summarize the purpose and contents of the document. The Test Report is a record that the tests were run and a documentation of their results.
- Test Report narrative. At least two paragraphs of text describing the testing done. Explain in your own word what were the requirements for this work. Did you implement everything that was asked? Did you make additional improvements? Describe any known problems you encoutered. Describe any test in failed status. Explain what tests are missing if any. If more testing was required what kind of test you would propose? (if any tests are failing or missing, explanation are mandatory).
- Copy of the output from the unit test runs. The status of each individual test should visible. (In InteliJ: Export test results to a file (Links to an external site.), open html report in a browser and print to a pdf or copy paste in a Word document)
- Copy of the output of the coverage report. The coverage of each source file should be visible. (In InteliJ: Save coverage data to a file (Links to an external site.), open html report in a browser and print to a pdf or copy paste in a Word document)