forked from ftsrg-edu/ivt-lab
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
36 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,36 @@ | ||
# ivt-lab | ||
Integráció és ellenőrzési technikák tantárgy laborgyakorlatai | ||
# IVT Spaceship | ||
|
||
This is a sample application for the [Integration and Verification Techniques](http://www.mit.bme.hu/oktatas/targyak/vimiac04) course at BME MIT. The application is simplified and deliberately contains bugs. | ||
|
||
## Getting started | ||
|
||
- The project is implemented in Java 8. | ||
- The project can be built using [Maven](https://maven.apache.org/). | ||
- [Junit](http://junit.org/junit4/) is used for tests, and [Mockito](http://site.mockito.org/) 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](https://github.com/FTSRG/swsv/wiki/0-Maven) 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](https://atom.io/) 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, 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. |