japod@6: package org.apidesign.apifest08.test; japod@6: japod@34: import static junit.framework.Assert.assertEquals; japod@34: import static junit.framework.Assert.assertFalse; japod@34: import static junit.framework.Assert.assertTrue; japod@6: import static org.apidesign.apifest08.test.Task1Test.CZK; japod@34: import static org.apidesign.apifest08.test.Task1Test.SKK; japod@6: import static org.apidesign.apifest08.test.Task1Test.USD; japod@6: japod@6: import java.math.BigDecimal; japod@6: japod@6: import org.apidesign.apifest08.currency.ConvertorFactory; japod@34: import org.apidesign.apifest08.currency.ExtendedConvertor; japod@6: import org.apidesign.apifest08.currency.Money; japod@6: import org.apidesign.apifest08.currency.MoneyImpl; japod@6: import org.junit.Test; japod@6: japod@6: japod@6: public class ConvertorTest { japod@6: japod@34: private static final ExtendedConvertor CZK_TO_USD_CONVERTOR = ConvertorFactory.createConvertor(new MoneyImpl(17,CZK), new MoneyImpl(1,USD)); japod@6: @Test japod@6: public void testConvertSmall() japod@6: { japod@16: Money converted = CZK_TO_USD_CONVERTOR.convert(new MoneyImpl(0.17,CZK),USD); japod@6: assertEquals(new MoneyImpl(new BigDecimal("0.01"),USD),converted); japod@6: assertEquals(USD,converted.getCurrency()); japod@6: } japod@6: @Test japod@6: public void testConvertSmallReverse() japod@6: { japod@16: Money converted = CZK_TO_USD_CONVERTOR.convert(new MoneyImpl(0.01,USD),CZK); japod@6: assertEquals(new MoneyImpl(new BigDecimal("0.17"),CZK),converted); japod@6: } japod@34: @Test japod@34: public void testSupports() japod@34: { japod@34: assertTrue(CZK_TO_USD_CONVERTOR.isConversionSupported(USD,CZK)); japod@34: assertTrue(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,USD)); japod@34: assertFalse(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,CZK)); japod@34: assertFalse(CZK_TO_USD_CONVERTOR.isConversionSupported(CZK,SKK)); japod@34: japod@34: } japod@6: }