/*
 * Created on 22.09.2004
 */
package bank;

import junit.framework.TestCase;

/**
 * @author oliver
 * @since 22.09.2004
 */
public class KontoTest extends TestCase {

    /**
     * 
     * @uml.property name="konto"
     * @uml.associationEnd 
     * @uml.property name="konto" multiplicity="(0 1)"
     */
    private Konto konto;

    public static void main(String[] args) {
        junit.textui.TestRunner.run(KontoTest.class);
    }

    /*
     * @see TestCase#setUp()
     */
    protected void setUp() throws Exception {
        konto = new Konto();
        super.setUp();
    }

    public void testAbfragen() {
        assertEquals(0.0, konto.abfragen(), 0.005);
    }

    public void testEinzahlen() {
        konto.einzahlen(1.23);
        assertEquals(1.23, konto.abfragen(), 0.005);
    }

    public void testAbheben() {
        konto.einzahlen(4.50);
        konto.abheben(3.45);
        assertEquals(1.05, konto.abfragen(), 0.005);
    }

    public final void testUeberweisen() {
        Konto schwarzgeldKonto = new Konto();
        konto.einzahlen(5000.00);
        konto.ueberweisen(1000.00, schwarzgeldKonto);
        assertEquals(4000.00, konto.abfragen(), 0.005);
        assertEquals(1000.00, schwarzgeldKonto.abfragen(), 0.005);
    }

}
