package org.mifos.platform.accounting.tally.message; import java.util.Date; import org.junit.Test; import org.mifos.platform.accounting.AccountingDto; import org.mifos.platform.accounting.VoucherType; public class TallyMessageBuilderTest { @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderWithoutDate() throws TallyMessageBuilderException { new TallyMessageBuilder(VoucherType.JOURNAL, "branch").build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderWithNullDate() throws TallyMessageBuilderException { new TallyMessageBuilder(VoucherType.JOURNAL, "branch").withVoucherDate(null).build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderWithoutVoucherType() throws TallyMessageBuilderException { new TallyMessageBuilder(null, "branch").withVoucherDate(new Date()).build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderWithNullBranch() throws TallyMessageBuilderException { new TallyMessageBuilder(VoucherType.JOURNAL, null).withVoucherDate(new Date()).build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderWithEmptyBranch() throws TallyMessageBuilderException { new TallyMessageBuilder(VoucherType.JOURNAL, "").withVoucherDate(new Date()).build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderNegativeAmountCredit() throws TallyMessageBuilderException { AccountingDto voucherEntry = new AccountingDto("branch", "2010-04-20", "Payment", "4365", "GL CODE NAME", "-4", "-6"); new TallyMessageBuilder(VoucherType.JOURNAL, "branch").withVoucherDate(new Date()).addCreditEntry(voucherEntry) .build(); } @Test(expected = TallyMessageBuilderException.class) public void testTallyMessageBuilderNegativeAmountDebit() throws TallyMessageBuilderException { AccountingDto voucherEntry = new AccountingDto("branch", "2010-04-20", "Payment", "4365", "GL CODE NAME", "-4", "-6"); new TallyMessageBuilder(VoucherType.JOURNAL, "branch").withVoucherDate(new Date()).addDebitEntry(voucherEntry) .build(); } @Test public void testTallyMessageBuilder() throws TallyMessageBuilderException { AccountingDto voucherEntry = new AccountingDto("branch", "2010-04-20", "Payment", "4365", "GL CODE NAME", "4", "6"); new TallyMessageBuilder(VoucherType.JOURNAL, "branch").withVoucherDate(new Date()).addDebitEntry(voucherEntry) .addCreditEntry(voucherEntry).build(); } }