public void testAccount() throws RemoteException, OperationApplicationException { Account account, restored = null; Long openingBalance = (long) 100; account = new Account("TestAccount", openingBalance, "Testing with Junit"); account.setCurrency("EUR"); assertEquals("EUR", account.currency.getCurrencyCode()); account.save(); assertTrue(account.getId() > 0); restored = Account.getInstanceFromDb(account.getId()); assertEquals(account, restored); Long trAmount = (long) 100; Transaction op1 = Transaction.getNewInstance(account.getId()); op1.setAmount(new Money(account.currency, trAmount)); op1.comment = "test transaction"; op1.save(); assertEquals(account.getTotalBalance().getAmountMinor().longValue(), openingBalance + trAmount); Account.delete(account.getId()); assertNull( "Account deleted, but can still be retrieved", Account.getInstanceFromDb(account.getId())); assertNull( "Account delete should delete transaction, but operation can still be retrieved", Transaction.getInstanceFromDb(op1.getId())); }
private void insertData() { Transaction op; account1 = new Account("Account 1", openingBalance, "Account 1"); account1.save(); account2 = new Account("Account 2", openingBalance, "Account 2"); account2.save(); catId = Category.write(0, TEST_CAT, null); op = Transaction.getNewInstance(account1.getId()); op.setAmount(new Money(account1.currency, -expense1)); op.crStatus = CrStatus.CLEARED; op.save(); op.setAmount(new Money(account1.currency, -expense2)); op.saveAsNew(); op.setAmount(new Money(account1.currency, income1)); op.saveAsNew(); op.setAmount(new Money(account1.currency, income2)); op.setCatId(catId); op.saveAsNew(); Transfer op1 = Transfer.getNewInstance(account1.getId(), account2.getId()); op1.setAmount(new Money(account1.currency, transferP)); op1.save(); op1.setAmount(new Money(account1.currency, -transferN)); op1.saveAsNew(); }