From 3e46b6f4779caf7a8ca2c4695a418cbadb2dab37 Mon Sep 17 00:00:00 2001 From: Joe Hendricks Date: Wed, 14 Feb 2018 23:09:19 -0500 Subject: [PATCH 1/2] Currency Converter Final Build --- pom.xml | 8 ++- src/main/java/CurrencyExchange.java | 38 +++++++++++ src/main/java/DELETEME | 0 src/test/java/DELETEME | 0 src/test/java/TestingRates.java | 84 ++++++++++++++++++++++++ target/classes/CurrencyExchange$1.class | Bin 0 -> 1061 bytes target/classes/CurrencyExchange.class | Bin 0 -> 919 bytes target/test-classes/TestingRates.class | Bin 0 -> 2645 bytes 8 files changed, 129 insertions(+), 1 deletion(-) create mode 100644 src/main/java/CurrencyExchange.java delete mode 100644 src/main/java/DELETEME delete mode 100644 src/test/java/DELETEME create mode 100644 src/test/java/TestingRates.java create mode 100644 target/classes/CurrencyExchange$1.class create mode 100644 target/classes/CurrencyExchange.class create mode 100644 target/test-classes/TestingRates.class diff --git a/pom.xml b/pom.xml index 682d6db..04ba690 100644 --- a/pom.xml +++ b/pom.xml @@ -9,6 +9,12 @@ 1.0-SNAPSHOT - + + + junit + junit + 4.12 + test + \ No newline at end of file diff --git a/src/main/java/CurrencyExchange.java b/src/main/java/CurrencyExchange.java new file mode 100644 index 0000000..c008a01 --- /dev/null +++ b/src/main/java/CurrencyExchange.java @@ -0,0 +1,38 @@ +import java.math.BigDecimal; +import java.util.HashMap; +import java.util.TreeMap; + +import static javax.swing.UIManager.put; +//Currency converter +public class CurrencyExchange { + + private HashMap currencyMap; + + { + currencyMap = new HashMap() { + { + put("USD", 1.00); //US Dollar + put("EURO", 0.94); //Euro + put("POUND", 0.82); //British Pound + put("RUPEE", 68.32); //Indian Rupee + put("AUD", 1.35); //Australian Dollar + put("CAD", 1.32); //Canadian Dollar + put("SGD", 1.43); //Singapore Dollar + put("FRANC", 1.01); //Swiss Franc + put("RINGGIT", 4.47); //Malaysian Ringgit + put("YEN", 115.84); //Japanese Yen + put("RENMINBI", 6.92);//Chinese Yuan Renminbi + + } + }; + } + + public double conversionFormula (String nation1, String nation2, double amount){ + + double convertedAmount = (currencyMap.get(nation2)) / (currencyMap.get(nation1)) * amount; + + return convertedAmount; + + } + +} diff --git a/src/main/java/DELETEME b/src/main/java/DELETEME deleted file mode 100644 index e69de29..0000000 diff --git a/src/test/java/DELETEME b/src/test/java/DELETEME deleted file mode 100644 index e69de29..0000000 diff --git a/src/test/java/TestingRates.java b/src/test/java/TestingRates.java new file mode 100644 index 0000000..b4bba8b --- /dev/null +++ b/src/test/java/TestingRates.java @@ -0,0 +1,84 @@ +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; +import java.math.BigDecimal; + +import static com.sun.tools.doclint.Entity.delta; + +public class TestingRates { + + CurrencyExchange testRate; + + @Before + public void setUp() { + testRate = new CurrencyExchange(); + } + + @Test + public void testUSDtoEuro() { + double expectedAmount = 0.94; + double actualAmount = testRate.conversionFormula("USD", "EURO", 1.00); + Assert.assertEquals("Convert Dollar to Euro",expectedAmount, actualAmount, 0.1); + } + + @Test + public void testEUROtoUSD() { + double expectedAmount = 53.20; + double actualAmount = testRate.conversionFormula("EURO", "USD", 50.00); + Assert.assertEquals("Convert Euro to US Dollar", expectedAmount, actualAmount, 0.1); + } + + @Test + public void testRUPEEtoCAD () { + double expectedAmount = 1.55; + double actualAmount = testRate.conversionFormula("RUPEE", "CAD", 80.00); + Assert.assertEquals("Convert Rupee to Canadian Dollar", expectedAmount, actualAmount, 0.1); + } + + @Test + public void testPOUNDtoRUPEE () { + double expectedAmount = 2916.10; + double actualAmount = testRate.conversionFormula("POUND", "RUPEE", 35.00); + Assert.assertEquals("Convert British Pound to Indian Rupee", expectedAmount, actualAmount, 0.1); + } + + @Test + public void testCADtoSGD () { + double expectedAmount = 107.25; + double actualAmount = testRate.conversionFormula("CAD", "SGD", 99.00); + Assert.assertEquals( + "Convert Canadian Dollar to Singapore Dollar", expectedAmount, actualAmount, 0.1); + } + + @Test + public void testSGDtoFRANC () { + double expectedAmount = 47.09; + double actualAmount = testRate.conversionFormula("SGD", "FRANC", 66.66); + Assert.assertEquals( + "Convert Singapore Dollar to Swiss Franc",expectedAmount, actualAmount, 0.1); + } + + @Test + public void testFRANCtoRINGGIT () { + double expectedAmount = 4425.75; + double actualAmount = testRate.conversionFormula("FRANC", "RINGGIT", 1000.00); + Assert.assertEquals( + "Convert Swiss Franc to Malaysian Ringgit",expectedAmount, actualAmount, 0.1); + } + + @Test + public void testRINGGITtoYEN () { + double expectedAmount = 259.15; + double actualAmount = testRate.conversionFormula("RINGGIT", "YEN", 10.00); + Assert.assertEquals( + "Convert Malaysian Ringgit to Japanese Yen",expectedAmount, actualAmount, 0.1); + } + + @Test + public void testYENtoRENMINBI () { + double expectedAmount = 2.99; + double actualAmount = testRate.conversionFormula("YEN", "RENMINBI", 50.00); + Assert.assertEquals( + "Convert Japanese Yen to Chinese Yuan Renminb", expectedAmount, actualAmount, 0.1); + } + } \ No newline at end of file diff --git a/target/classes/CurrencyExchange$1.class b/target/classes/CurrencyExchange$1.class new file mode 100644 index 0000000000000000000000000000000000000000..3da87a994e726fb5027453acc7df4f0cc51ff615 GIT binary patch literal 1061 zcmZWoO-~b16g^YQblMdA!4y#ph$-3@rQipG1=`XMrP>c@DaM4&w2X8}ogvd1qQtEW zSMD^rbx-0#B`#dJ^bfdZtBG*~8x!N5QYH?tO2*|NHV4z!Zv31TpQx z818bIabXtsT*SmU%(3y`{N7<^pXV^o#(&Q5y#L{v=di#gR!{jj8$Wt$e(yLWXgz$e z`s>9Aha?+6Hh1nFa#&>Je?mv!UTuUqq}YV-luxsX4U-NXa}e0XkQtrXcVNkZ37d6?$ZPIQgW8lsziln6)VzVg`rBr0lyHcza(qv1O6+xiLWQ9;q zDrwH;jOke_B?~DAj#9Re$z<1veOY+;e){bx@VoMPbXDw%=zY#@n+%zN;* zf?LfvDV_4|iVZ_5J~l5e9q#T8ZQU_+1~Z`!U$MF^)%4CzwwX?WHigUdfXC={GhVOR zD|1C7gfQ6%t^UFe8`(FJ@sD64pJ9vmdprlQe?srWh@a)*uz-_?%K~m5eHQTW@LIsn zqu&An9s?E_1fXI7&v70vF^Jc=i0ia#;G{&{K$H*_+iC^94@?rW(XW5AWpCj&Sv&5~JVC=n JO$w5w?>~+*{T~1T literal 0 HcmV?d00001 diff --git a/target/classes/CurrencyExchange.class b/target/classes/CurrencyExchange.class new file mode 100644 index 0000000000000000000000000000000000000000..dd66d7443783c365b330afc5b88b145c68421f5e GIT binary patch literal 919 zcmZWo+iuf95IvilNotx)36y(VLP^rnkcyWoRV9>Aft12SP$V8V&MI+nY~sTcumb{)hJ9FmD?E3eg9~S_cc#=aF8wNIWNMI|AD|nDY1rH5u=a9i8 z162bx0rREnD!=W>=~PVxR;#Y;j)`477AX8vGaI9cJv4|frvDfEdT^>NiY!-`XQk&}TsmW($Vf3` zdwym!npSOYBr(KWGmK8PFP)IB@;E!#4%X;tLMGuF%KQpk$Bmfq6XOhGmHJntcF&Ri zh0Hk&?d@E8UhUmMdOiJ_aS7-e`Y!=CD0?g7e~Pr`i21d(j+;@<3U1NT(G}dLnj~|Q UxJxTd^d9j9?vqb*>gJ>8FV-~AE&u=k literal 0 HcmV?d00001 diff --git a/target/test-classes/TestingRates.class b/target/test-classes/TestingRates.class new file mode 100644 index 0000000000000000000000000000000000000000..c74e82245ccf4bb2399e2200388d535a7efd8cf8 GIT binary patch literal 2645 zcmbW1Pf#0G9LIkPVY5xs0?UFerI^yzCeR_$)@d!JY)C=~g%I)wOZ~fq1s20@y1Sv^ z$%`isp7rXC2M^A4Ms3v@$D`xuj5p7obv%1={Jxi6!qDWBW!Sv;d%xfJ_j&L4e*4RR z-~UKNQ*;=j8Cnn0qY!n``YF0cZ;G@3C?EWp`AU)KEs5S{3-3tut~mSMr|kJGMDLL% zs*8=8sAeIAN1_dJ_TOLG^P5B!i8e*G`o+&T*(1@Gs3tz-3leRM>Z9Mi@s6lI z{K*>|qMG^mqtWN9e@nD0s`)QxYM=iRlIVR=eVXM?5>-X@6V>zI6V=*{E%r!cis}_^ z29hPJ!M{A6nnaI-WCzI+NOE<@EoiPTki3+v+qQ024$}vf9nIXbmIv*n>o6BUfB~Qnjxz>6*Cs050!w6pK+;TQImlY^f zwCZ+6pEuY^_Ltz`AJ*iqwy%Xrr3A!ImM2X2X%>~?dkC=ogvq74KtoB(+}CY4lCr8* z&5pQMgq>HA_QUjq4sh_k12ePba?$feal8$8^OK19o`rf%*O_ZlGqp`aGn)bYpai<= zyUy8$YdAZRJZiGZLb4_g;1b~F2RPw-pU`9eMQmTIq2$dR-YH-6qfWZ;uqTG&MCNVH ztOyi5Dnj%qrn%1Cm$j;P=&+p>kZ;?-_37p%iunOAc(AZVt)`i}qes?t6aCYy;&ngl zxCe_!?x0&(K%M2%%{{~1z=b+qXH=I}I$lNF#aA|Vaj9_=D!hyi8e-nE_v%$mplEcd z=~#4akWas8NyXSDZZ=TDac~`2Yw$t(G5P~NcCLk3DwT?@(ItHUX7KG0@Q+J|_i2oA z4e_4CERJ8c)-(Q$gr^vEQ4(*F8zo9%9Bw#Jn&vSRD1+cG9(zvJZ}Rp@LZ zza$40>f;1*JAz>lTmZ)iUBn+dwFbfH5y7xWFwlk|--=+MK`Rg$f*1(KK`_w~L7^2vq(Lwwk12GS6I^Xa5C_4l zAeaKd&5j6)tq5Le5RA!Dg<_mwq8-6)5ZnR5>mZo!h@jMp;Ch1~Do-jD=LA#j2xdW` zf*=8cWJd($Rs=U11e5YDg Date: Wed, 14 Feb 2018 23:21:44 -0500 Subject: [PATCH 2/2] Currency Converter Finished Build --- src/test/java/TestingRates.java | 13 ++++++++++--- target/test-classes/TestingRates.class | Bin 2645 -> 2811 bytes 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/test/java/TestingRates.java b/src/test/java/TestingRates.java index b4bba8b..4c2f353 100644 --- a/src/test/java/TestingRates.java +++ b/src/test/java/TestingRates.java @@ -29,9 +29,9 @@ public void testEUROtoUSD() { } @Test - public void testRUPEEtoCAD () { - double expectedAmount = 1.55; - double actualAmount = testRate.conversionFormula("RUPEE", "CAD", 80.00); + public void testEUROtoPOUND () { + double expectedAmount = 21.80; + double actualAmount = testRate.conversionFormula("EURO", "POUND", 25.00); Assert.assertEquals("Convert Rupee to Canadian Dollar", expectedAmount, actualAmount, 0.1); } @@ -42,6 +42,13 @@ public void testPOUNDtoRUPEE () { Assert.assertEquals("Convert British Pound to Indian Rupee", expectedAmount, actualAmount, 0.1); } + @Test + public void testRUPEEtoCAD () { + double expectedAmount = 1.55; + double actualAmount = testRate.conversionFormula("RUPEE", "CAD", 80.00); + Assert.assertEquals("Convert Rupee to Canadian Dollar", expectedAmount, actualAmount, 0.1); + } + @Test public void testCADtoSGD () { double expectedAmount = 107.25; diff --git a/target/test-classes/TestingRates.class b/target/test-classes/TestingRates.class index c74e82245ccf4bb2399e2200388d535a7efd8cf8..6abbfb7ac49aad05dd04d6f5d0c19a7448c9c56d 100644 GIT binary patch literal 2811 zcmbW1Pf#0G9LIl4!e&cTD9ggoLNT>i2u0JEsMRGbuo!mJ-3^8M zXS{gw;90NEc<|s%XVg}maXdPX&Uo|eS;w;{$M1XDB@9hGVMw$ssyBXN<5!7xMD><0H^ixbeEF_KZ;R@3RVAvQ|8$)VQH_7VMG}=nb^SMQ zz9*`yKYDXhRMQ`QIPmoDUlLiOy7a{><6WZ`s?i-3qeDru8k$W;ACQZ6Tj@tyIOf z5LrJc>qS@JjPF?pC6JI5D6AFTidOPPXO9J99DbNoA-CvS2!`#ju+{a_Vj&AjJCo!J zOR1D=CE^gAWdg2rEiOkMCW6wn@@d}%GuN8Q#j^?Qfa&=hE}3jPomuwccq`XhOJxP> zWOkUrDwSQxWT!I%wdJjfUDRg`R@=^H82IITX;<6V!jz;Gf}Lzwn5GGt1AJFOwxci| z(j$R-5|+8I+ioOjl}ef&ajgieV2Iuc)4TK@THzZoF;f@vo-Nwt6(!=^W&^+(@or{S{Fxsx8oMfBe8?~!yGCsmu~JE<^~Sb@jj!wtkba)E@EtPV;9F9C!xsO z=-`UXSoU6}qzN=UJYO@+yEe!to|Pn{>=4(kRNQfJ9N1;ylhgy;7~HzvI>D03WORit z;*E^sH4*TSLxyh{a~wl_XRwOlm+4wZo{;bulNL(jD{`SkvzRjn7*K}h@GH=(aBktw zw<*AN;gRpDW$g(CzNTO;278K$+UYcP9E%h7;><(GvMlhJ*`t_S6hbbdeuY|RN4}z< z9FnDuZ|KyV+%^BDe{Hmq9QNg4<0ItkxqKsS;e4 zM-_UJ6T})3OoCtv1S$xon<7}NM{u=DFe;BJbe$92Xhbjrf;0$bK`_@8!FoM{n^l4_ zd0e4eoM566K^6pyAXoxHt|@}o>Ji+j5{%1}{(CUhh+qW-_du`;g7u~dUdJ2KLT~&B DTyzQO literal 2645 zcmbW1Pf#0G9LIkPVY5xs0?UFerI^yzCeR_$)@d!JY)C=~g%I)wOZ~fq1s20@y1Sv^ z$%`isp7rXC2M^A4Ms3v@$D`xuj5p7obv%1={Jxi6!qDWBW!Sv;d%xfJ_j&L4e*4RR z-~UKNQ*;=j8Cnn0qY!n``YF0cZ;G@3C?EWp`AU)KEs5S{3-3tut~mSMr|kJGMDLL% zs*8=8sAeIAN1_dJ_TOLG^P5B!i8e*G`o+&T*(1@Gs3tz-3leRM>Z9Mi@s6lI z{K*>|qMG^mqtWN9e@nD0s`)QxYM=iRlIVR=eVXM?5>-X@6V>zI6V=*{E%r!cis}_^ z29hPJ!M{A6nnaI-WCzI+NOE<@EoiPTki3+v+qQ024$}vf9nIXbmIv*n>o6BUfB~Qnjxz>6*Cs050!w6pK+;TQImlY^f zwCZ+6pEuY^_Ltz`AJ*iqwy%Xrr3A!ImM2X2X%>~?dkC=ogvq74KtoB(+}CY4lCr8* z&5pQMgq>HA_QUjq4sh_k12ePba?$feal8$8^OK19o`rf%*O_ZlGqp`aGn)bYpai<= zyUy8$YdAZRJZiGZLb4_g;1b~F2RPw-pU`9eMQmTIq2$dR-YH-6qfWZ;uqTG&MCNVH ztOyi5Dnj%qrn%1Cm$j;P=&+p>kZ;?-_37p%iunOAc(AZVt)`i}qes?t6aCYy;&ngl zxCe_!?x0&(K%M2%%{{~1z=b+qXH=I}I$lNF#aA|Vaj9_=D!hyi8e-nE_v%$mplEcd z=~#4akWas8NyXSDZZ=TDac~`2Yw$t(G5P~NcCLk3DwT?@(ItHUX7KG0@Q+J|_i2oA z4e_4CERJ8c)-(Q$gr^vEQ4(*F8zo9%9Bw#Jn&vSRD1+cG9(zvJZ}Rp@LZ zza$40>f;1*JAz>lTmZ)iUBn+dwFbfH5y7xWFwlk|--=+MK`Rg$f*1(KK`_w~L7^2vq(Lwwk12GS6I^Xa5C_4l zAeaKd&5j6)tq5Le5RA!Dg<_mwq8-6)5ZnR5>mZo!h@jMp;Ch1~Do-jD=LA#j2xdW` zf*=8cWJd($Rs=U11e5YDg