task4/solution02/test/org/apidesign/apifest08/test/ConvertorTest.java
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Sat, 11 Oct 2008 23:38:46 +0200
changeset 61 58ec6da75f6f
parent 45 task3/solution02/test/org/apidesign/apifest08/test/ConvertorTest.java@251d0ed461fb
permissions -rw-r--r--
Copying structure for task4
japod@6
     1
package org.apidesign.apifest08.test;
japod@6
     2
japod@34
     3
import static junit.framework.Assert.assertEquals;
japod@34
     4
import static junit.framework.Assert.assertFalse;
japod@34
     5
import static junit.framework.Assert.assertTrue;
japod@6
     6
import static org.apidesign.apifest08.test.Task1Test.CZK;
japod@34
     7
import static org.apidesign.apifest08.test.Task1Test.SKK;
japod@6
     8
import static org.apidesign.apifest08.test.Task1Test.USD;
japod@6
     9
japod@6
    10
import java.math.BigDecimal;
japod@6
    11
japod@6
    12
import org.apidesign.apifest08.currency.ConvertorFactory;
japod@34
    13
import org.apidesign.apifest08.currency.ExtendedConvertor;
japod@6
    14
import org.apidesign.apifest08.currency.Money;
japod@6
    15
import org.apidesign.apifest08.currency.MoneyImpl;
japod@6
    16
import org.junit.Test;
japod@6
    17
japod@6
    18
japod@6
    19
public class ConvertorTest {
japod@6
    20
japod@34
    21
	private static final ExtendedConvertor CZK_TO_USD_CONVERTOR = ConvertorFactory.createConvertor(new MoneyImpl(17,CZK), new MoneyImpl(1,USD));
japod@6
    22
	@Test
japod@6
    23
	public void testConvertSmall()
japod@6
    24
	{
japod@16
    25
		Money converted = CZK_TO_USD_CONVERTOR.convert(new MoneyImpl(0.17,CZK),USD);
japod@6
    26
		assertEquals(new MoneyImpl(new BigDecimal("0.01"),USD),converted);
japod@6
    27
		assertEquals(USD,converted.getCurrency());
japod@6
    28
	}
japod@6
    29
	@Test
japod@6
    30
	public void testConvertSmallReverse()
japod@6
    31
	{
japod@16
    32
		Money converted = CZK_TO_USD_CONVERTOR.convert(new MoneyImpl(0.01,USD),CZK);
japod@6
    33
		assertEquals(new MoneyImpl(new BigDecimal("0.17"),CZK),converted);
japod@6
    34
	}
japod@34
    35
	@Test
japod@34
    36
	public void testSupports()
japod@34
    37
	{
japod@34
    38
		assertTrue(CZK_TO_USD_CONVERTOR.isConversionSupported(USD,CZK));
japod@34
    39
		assertTrue(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,USD));
japod@34
    40
		assertFalse(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,CZK));
japod@34
    41
		assertFalse(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,SKK));
japod@34
    42
		
japod@34
    43
	}
japod@6
    44
}