001/* 002 * jDTAUS Banking Messages 003 * Copyright (C) 2005 Christian Schulte 004 * <cs@schulte.it> 005 * 006 * This library is free software; you can redistribute it and/or 007 * modify it under the terms of the GNU Lesser General Public 008 * License as published by the Free Software Foundation; either 009 * version 2.1 of the License, or any later version. 010 * 011 * This library is distributed in the hope that it will be useful, 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 014 * Lesser General Public License for more details. 015 * 016 * You should have received a copy of the GNU Lesser General Public 017 * License along with this library; if not, write to the Free Software 018 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 019 * 020 */ 021package org.jdtaus.banking.messages.test; 022 023import java.math.BigInteger; 024import java.util.Date; 025import java.util.Locale; 026import junit.framework.Assert; 027import junit.framework.TestCase; 028import org.jdtaus.banking.Bankleitzahl; 029import org.jdtaus.banking.BankleitzahlInfo; 030import org.jdtaus.banking.Textschluessel; 031import org.jdtaus.banking.dtaus.Checksum; 032import org.jdtaus.banking.dtaus.LogicalFileType; 033import org.jdtaus.banking.messages.AnalysesFileMessage; 034import org.jdtaus.banking.messages.BankleitzahlExpirationMessage; 035import org.jdtaus.banking.messages.BankleitzahlReplacementMessage; 036import org.jdtaus.banking.messages.ChecksumErrorMessage; 037import org.jdtaus.banking.messages.ChecksumsFileMessage; 038import org.jdtaus.banking.messages.CurrencyConstraintMessage; 039import org.jdtaus.banking.messages.IllegalAmountMessage; 040import org.jdtaus.banking.messages.IllegalCurrencyMessage; 041import org.jdtaus.banking.messages.IllegalDataMessage; 042import org.jdtaus.banking.messages.IllegalDateMessage; 043import org.jdtaus.banking.messages.IllegalDescriptionCountMessage; 044import org.jdtaus.banking.messages.IllegalFileLengthMessage; 045import org.jdtaus.banking.messages.IllegalScheduleMessage; 046import org.jdtaus.banking.messages.OutdatedBankleitzahlenVerzeichnisMessage; 047import org.jdtaus.banking.messages.ReadsBankleitzahlenDateiMessage; 048import org.jdtaus.banking.messages.ReadsCurrenciesMessage; 049import org.jdtaus.banking.messages.ReadsTextschluesselMessage; 050import org.jdtaus.banking.messages.SearchesBankleitzahlInfosMessage; 051import org.jdtaus.banking.messages.SearchesCurrenciesMessage; 052import org.jdtaus.banking.messages.SearchesTextschluesselMessage; 053import org.jdtaus.banking.messages.TextschluesselConstraintMessage; 054import org.jdtaus.banking.messages.UnknownBankleitzahlMessage; 055import org.jdtaus.banking.messages.UpdatesBankleitzahlenDateiMessage; 056import org.jdtaus.core.text.Message; 057 058/** 059 * Unit tests for banking application messages. 060 * 061 * @author <a href="mailto:cs@schulte.it">Christian Schulte</a> 062 * @version $JDTAUS: MessagesTest.java 8661 2012-09-27 11:29:58Z schulte $ 063 */ 064public class MessagesTest extends TestCase 065{ 066 067 /** 068 * Tests instantiation of each core application message and for non-null texts for the current default locale. 069 */ 070 public void testMessages() throws Exception 071 { 072 final Checksum c1 = new Checksum(); 073 final Checksum c2 = new Checksum(); 074 c2.setTransactionCount( 1 ); 075 076 this.assertNotNull( new AnalysesFileMessage() ); 077 this.assertNotNull( new ChecksumErrorMessage( c1, c2, 0L ) ); 078 this.assertNotNull( new ChecksumsFileMessage() ); 079 this.assertNotNull( new CurrencyConstraintMessage( "DEM", new Date() ) ); 080 this.assertNotNull( new IllegalAmountMessage( new BigInteger( "10" ) ) ); 081 this.assertNotNull( new IllegalCurrencyMessage( "DEM", new Date() ) ); 082 this.assertNotNull( new IllegalDataMessage( 0xA1, IllegalDataMessage.TYPE_CONSTANT, 0L, "TEST" ) ); 083 this.assertNotNull( new IllegalDateMessage( new Date(), new Date(), new Date() ) ); 084 this.assertNotNull( new IllegalDescriptionCountMessage( 0, 1 ) ); 085 this.assertNotNull( new IllegalFileLengthMessage( 1, 3 ) ); 086 this.assertNotNull( new IllegalScheduleMessage( new Date(), new Date(), 0 ) ); 087 this.assertNotNull( new OutdatedBankleitzahlenVerzeichnisMessage( new Date() ) ); 088 this.assertNotNull( new TextschluesselConstraintMessage( LogicalFileType.GB, new Textschluessel() ) ); 089 this.assertNotNull( new UpdatesBankleitzahlenDateiMessage() ); 090 this.assertNotNull( new ReadsBankleitzahlenDateiMessage() ); 091 this.assertNotNull( new UnknownBankleitzahlMessage( Bankleitzahl.valueOf( "88888888" ) ) ); 092 final BankleitzahlInfo testInfo = new BankleitzahlInfo(); 093 testInfo.setBankCode( Bankleitzahl.valueOf( "88888888" ) ); 094 this.assertNotNull( new BankleitzahlExpirationMessage( testInfo ) ); 095 this.assertNotNull( new BankleitzahlReplacementMessage( testInfo ) ); 096 this.assertNotNull( new SearchesBankleitzahlInfosMessage() ); 097 this.assertNotNull( new SearchesCurrenciesMessage() ); 098 this.assertNotNull( new SearchesTextschluesselMessage() ); 099 this.assertNotNull( new ReadsCurrenciesMessage() ); 100 this.assertNotNull( new ReadsTextschluesselMessage() ); 101 } 102 103 private void assertNotNull( final Message message ) 104 { 105 Assert.assertNotNull( message.getText( Locale.getDefault() ) ); 106 System.out.println( message.getText( Locale.getDefault() ) ); 107 } 108 109}