/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.openehealth.coala.converter; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import java.util.ResourceBundle; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import org.openehealth.coala.util.PXSDateConverter; import org.springframework.beans.factory.annotation.Autowired; /** * Tests the converter for correctness. This Test assumes the default pattern. * If this is changed, please update the test accordingly * * @author kmaerz * */ public class PXSDateConverterTest { private String longPattern; private String shortPattern; private Date referenceDateLong; private Date referenceDateShort; private String referenceStringLong = "20110115033650"; private String referenceStringShort = "20110115"; @Autowired private PXSDateConverter pxsDateConverter; /** * @throws java.lang.Exception */ @Before public void setUp() throws Exception { ResourceBundle properties = ResourceBundle.getBundle("coala-document"); longPattern = properties.getString("coala.consent.longdatepattern"); shortPattern = properties.getString("coala.consent.shortdatepattern"); GregorianCalendar cal = new GregorianCalendar(); cal.set(Calendar.YEAR, 2011); cal.set(Calendar.MONTH, Calendar.JANUARY); cal.set(Calendar.DAY_OF_MONTH, 15); cal.set(Calendar.HOUR, 3); cal.set(Calendar.MINUTE, 36); cal.set(Calendar.SECOND, 50); cal.set(Calendar.MILLISECOND, 0); referenceDateLong = cal.getTime(); cal = new GregorianCalendar(); cal.set(Calendar.YEAR, 2011); cal.set(Calendar.MONTH, Calendar.JANUARY); cal.set(Calendar.DAY_OF_MONTH, 15); cal.set(Calendar.HOUR, 0); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.SECOND, 0); cal.set(Calendar.MILLISECOND, 0); referenceDateShort = cal.getTime(); } /** * Make sure the pattern is stored in the config correctly */ @Test public void testConfig(){ assertTrue(longPattern != null); assertFalse(longPattern.equals("")); assertTrue(shortPattern != null); assertFalse(shortPattern.equals("")); } /** * Tests for correct conversion from String to Date * Test method for {@link org.openehealth.coala.util.PXSDateConverter#stringToDate(java.lang.String)}. */ @Test @Ignore public void testStringToDate() { Date pxsDate = pxsDateConverter.stringToDate(referenceStringLong); assertTrue (pxsDate.getTime() == referenceDateLong.getTime()); pxsDate = pxsDateConverter.stringToDate(referenceStringShort); assertTrue (pxsDate.equals(referenceDateShort)); } /** * Tests for correct conversion from Date to String * Test method for {@link org.openehealth.coala.util.PXSDateConverter#DateToString(java.util.Date)}. */ @Test @Ignore public void testDateToString() { String s = pxsDateConverter.DateToString(referenceDateLong); assertTrue (s.equals(referenceStringLong)); } /** * Tests for correct conversion from Date to String * Test method for {@link org.openehealth.coala.util.PXSDateConverter#DateToString(java.util.Date)}. */ @Test @Ignore public void testDateToShortString() { String s = pxsDateConverter.DateToShortString(referenceDateLong); assertTrue (s.equals(referenceStringShort)); } }