Show
Ignore:
Timestamp:
03/02/08 13:15:14 (9 months ago)
Author:
Christopher Jung <bktheg@web.de>
git-committer:
Christopher Jung <bktheg@web.de> 1204460114 +0100
git-parent:

[37191705f4c8bf1d54efbd9d9aed5e94da379484]

git-author:
Christopher Jung <bktheg@web.de> 1204460114 +0100
Message:

Verlassen einer Flotte gefixt inkl. Tests

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • test/java/net/driftingsouls/ds2/server/ships/ShipFleetTest.java

    r4bf415a r3875a9a  
    7171                assertThat(ok, is(true)); 
    7272                 
     73                db.flush(); 
     74                 
    7375                assertThat(this.fleet1.getOwner(), is(targetOwner)); 
    7476                 
     
    9496                assertThat(ok, is(true)); 
    9597                 
     98                db.flush(); 
     99                 
    96100                assertThat(this.fleet2.getOwner(), is(targetOwner)); 
    97101                 
     
    102106                } 
    103107        } 
     108         
     109        /** 
     110         * Testet das Entfernen eines Schiffes aus einer Flotte  
     111         */ 
     112        @Test 
     113        public void removeShipCleanSession() { 
     114                org.hibernate.Session db = context.getDB(); 
     115                 
     116                // Flotten aus dem Cache entfernen 
     117                db.clear(); 
     118                 
     119                Ship ship = (Ship)db.get(Ship.class, 1); 
     120                ship.getFleet().removeShip(ship); 
     121                 
     122                db.flush(); 
     123                 
     124                assertThat(ship.getFleet(), nullValue()); 
     125                 
     126                ShipFleet fleet = (ShipFleet)db.get(ShipFleet.class, 1); 
     127                assertThat(fleet, not(nullValue())); 
     128                 
     129                ship = (Ship)db.get(Ship.class, 2); 
     130                assertThat(ship.getFleet(), equalTo(fleet)); 
     131        } 
     132         
     133        /** 
     134         * Testet das Entfernen eines Schiffes aus einer Flotte  
     135         */ 
     136        @Test 
     137        public void removeShip() { 
     138                org.hibernate.Session db = context.getDB(); 
     139                 
     140                Ship ship = (Ship)db.get(Ship.class, 1); 
     141                ship.getFleet().removeShip(ship); 
     142                 
     143                db.flush(); 
     144                 
     145                assertThat(ship.getFleet(), nullValue()); 
     146                 
     147                ShipFleet fleet = (ShipFleet)db.get(ShipFleet.class, 1); 
     148                assertThat(fleet, not(nullValue())); 
     149                 
     150                ship = (Ship)db.get(Ship.class, 2); 
     151                assertThat(ship.getFleet(), equalTo(fleet)); 
     152        } 
     153         
     154        /** 
     155         * Testet das Entfernen eines Schiffes aus einer Flotte  
     156         * dessen die Flotte anschliessend zu wenig Schiffe hat 
     157         */ 
     158        @Test 
     159        public void removeShipAndDissolveFleet() { 
     160                org.hibernate.Session db = context.getDB(); 
     161                 
     162                Ship ship = (Ship)db.get(Ship.class, 4); 
     163                ship.getFleet().removeShip(ship); 
     164                 
     165                db.flush(); 
     166                 
     167                assertThat(ship.getFleet(), nullValue()); 
     168                 
     169                ShipFleet fleet = (ShipFleet)db.get(ShipFleet.class, 2); 
     170                assertThat(fleet, nullValue()); 
     171                 
     172                ship = (Ship)db.get(Ship.class, 5); 
     173                assertThat(ship.getFleet(), nullValue()); 
     174        } 
    104175}