Skip to content
This repository has been archived by the owner on Jan 8, 2023. It is now read-only.

Latest commit

 

History

History
40 lines (26 loc) · 1.77 KB

README.md

File metadata and controls

40 lines (26 loc) · 1.77 KB

IVT Spaceship

This is a sample application for the Integration and Verification Techniques course at BME MIT. The application is simplified and deliberately contains bugs.

Getting started

Branch Master

  • The project is implemented in Java 8.
  • The project can be built using Maven.
  • JUnit is used for tests, and Mockito for isolating dependencies.

Clone the repository and execute Maven to build the application:

mvn compile

To compile and run tests also execute:

mvn test

(That will be enough to know for the current exercises. If you are more interested, see this short guide about Maven.)

As this is a really simple project, you can use the command-line build tool and a light-weight IDE like the Atom editor. Just be sure to enable collapsing directories (File / Settings / Packages / tree-view / Collapse directories).

Overview

The project represents an alpha version of a spaceship.

  • The ship (SpaceShip interface) can fire one or more lasers or torpedos.
  • We have only one spaceship as of now (GT4500).
  • Currently two firing modes (FiringMode) are supported: firing only one or all instances of a given weapon type.
  • Lasers are not yet implemented, but the code for torpedo stores are ready (TorpedoStore).
  • For the GT4500 ship the rules for firing torpedoes can be found in the Javadoc comment of method fireTorpedos. They are already partially implemented.
  • There are currently two tests (GT4500Test), but be aware that they are not proper unit tests, as they do not isolate the dependencies of the tested class.

Commit to trigger Travis