MCS-270 Version Control and Test-Driven Development Lab (Spring 2012)

In class March 8, 13, 15, and 16, 2012; due March 19, 2012

In this lab project, you will work in pair-programming fashion on the objectives listed below. I will start by demonstrating the specific technical details using the projection system in Olin 326. For the first part of the objectives, you will be able to just follow along what I'm doing. Then you'll need to finish up the work as a pair, consulting me as needed.

Note: To catch up with what I demonstrated (most of the testing of take and the very start of the TDD of give), you can copy from the following files: MockDisplay.java and TestTransfers.java. Both of these should go within the edu.gac.mcs270.gack.shared.domain package within the tests folder.

  1. Create an account on GitHub.com.

  2. Create, on GitHub, your own fork of my MCS-270 repository.

  3. Import the Gack project from that repository into Eclipse, which will create a local clone of your repository.

  4. Create jUnit tests for the Person class's take method.

  5. Engage in Test-Driven Development (TDD) of a give method for the Person. That is, create a jUnit test that fails, then make the method pass the test; repeat this cycle, each time changing the method to pass the new test plus all the old ones.

  6. Throughout your testing of take and your TDD of give, make use of your repository.

  7. When you are finished and have committed all your work into your repository and pushed it all to GitHub, send me a "pull request" within GitHub as your way of submitting your work.