From cb88b74d56457eccc3b7de7bda1e077ad12f70af Mon Sep 17 00:00:00 2001 From: Elisabeth Berg Date: Tue, 10 Mar 2026 20:54:33 +0100 Subject: [PATCH] Added ShareTest class --- src/test/java/ShareTest.java | 71 ++++++++++++++++++++++++ target/classes/PurchaseCalculator.class | Bin 1119 -> 1148 bytes 2 files changed, 71 insertions(+) create mode 100644 src/test/java/ShareTest.java diff --git a/src/test/java/ShareTest.java b/src/test/java/ShareTest.java new file mode 100644 index 0000000..ba6dc76 --- /dev/null +++ b/src/test/java/ShareTest.java @@ -0,0 +1,71 @@ +import static org.junit.jupiter.api.Assertions.*; + +import org.junit.jupiter.api.Test; +import java.math.BigDecimal; + + +public class ShareTest { + + @Test + void testShareConstructor() { + + Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150")); + BigDecimal quantity = new BigDecimal("10"); + BigDecimal purchasePrice = new BigDecimal("140"); + + Share share = new Share(stock, quantity, purchasePrice); + assertNotNull(share); + } + + @Test + void testGetStock() { + + Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150")); + Share share = new Share(stock, new BigDecimal("10"), new BigDecimal("140")); + + Stock result = share.getStock(); + + assertEquals(stock, result); + } + + @Test + void testGetQuantity() { + + Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150")); + Share share = new Share(stock, new BigDecimal("10"), new BigDecimal("140")); + + BigDecimal result = share.getQuantity(); + + assertEquals(new BigDecimal("10"), result); + } + + @Test + void testGetPurchasePrice() { + + Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150")); + Share share = new Share(stock, new BigDecimal("10"), new BigDecimal("140")); + + BigDecimal result = share.getPurchasePrice(); + + assertEquals(new BigDecimal("140"), result); + } + + @Test + void testNullStock() { + + Share share = new Share(null, new BigDecimal("10"), new BigDecimal("100")); + + assertNull(share.getStock()); + } + + @Test + void testNegativePrice() { + + Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150")); + Share share = new Share(stock, new BigDecimal("10"), new BigDecimal("-50")); + + assertEquals(new BigDecimal("-50"), share.getPurchasePrice()); + } + + +} diff --git a/target/classes/PurchaseCalculator.class b/target/classes/PurchaseCalculator.class index c50d57d26ecf38e8436e7d23e259422b041ad3ed..bab65f2784f8620746c271bbe1ef0ba7f9736df1 100644 GIT binary patch literal 1148 zcmZ{iYflqF7=_RD!j@&YwX~pkLq*%7ZM}dOZfc2suu%+^#E-+WX@_igad&F)Uugm* z(ZnC%k21cq3~duJ&F*w|=6&Xz^Um)-KYjsN$4d(dhU|7XblM_v>%w!oo=`z(A;mCt zAijvIC;V3R{oaA=C<`MD`DQ5mNH|Ic{-A(i{LoOgL+Q8-g+^T75vpB%C0kprBRj%d zWypN)3SUX}m0@H}`ciE$*u}<9TZHavX_p~Y5B6OfNlb9qm}E#6OS?9vk+YCxNXI)l zW{@Y1Emxh(HwVuZOBWwK3Wiw@3mFZ&#Bo^@#)$C2DAGHwaEv0uFxim4`>xyBbHk?C z^T<)Q5jeuz6`|B~^D(8`GGdr%oU0gQLSEC6cEw;BdkhnVh(mVYgh3S9Sj1fmcZhIN zTpUG|D6&r1Q}WQG$STE)&HcwSL#}^dJ?L~~6j9$YxJTM*m0E3C3#jOvtJGSGq4)9Nr|IjgUvt*Pgg(VC?l^=TIE>NhLU1` zU$1O%JknfyC!pKozLq-Y*?*&~=y0$=6-j#1NYIb^NS8RFyG3J~zS|h1H>cUhcn6R# zpJKec)Wg&X3VNJ7!Tk5Q>?*ypNYR@vJ0W!2X9#hPz7(jOig6t`Xw?4}aFftXr(lj) zp*@V&c=?#n$C&To_BWa*pvfcg+IURkXZs9|=`0N6E!oj0<$hxEQ+DYT_Z#INYNT@r zWyf2lNm_PDT+ZNZlKqh6YjG5%0dE;FkHL>McxfQ+j94Jz>=2Rni3zM2;*&mc-Pp}( cf%H7>;W-WKGz`FJuIGnbpUY&}jI(+17cTwRtN;K2 literal 1119 zcmZ{kdruQV6vfY!zFdY^3oVFmeDtAheSi-hCPMTN8^wSm{yCIQJ7n9%-KoKEr3sWo z6F-0-%6RWGElsRx+S%Q?_jk`Zv+3_YKYjsN$IBFA0-5b@&}ga9-Bezq>nY<0DZ~Y) z57ie{^;D->eZPO`HjKc;kuBX0bi)-Q02;x~;rbf%NCD>KJXl3MAKb zN1F`+r%>N%slZ(=?g_*<{R7v*7^FlR69Qv};+}&k%%m_akccWJGRTsUrfd2d?cn)B zarEd*5SWulAjz=2#5@zmiSWTH;)=@>DI^7^>bm2;>$dmZU{~#XRAC%v69`p_vxS9DgiCTJ%OK0b%;K1LP5TN;)^T5tw-#0u32+LNUdLZ4uvhg;w1 zJ_aTyqrHiUCeQ0EO>h#H@s`Z+r0h>DeaaNiP_CDHsF2PfloOTAkhIK@xU9uFB)b-k z6C9)kZ&|R6z>gSQz7Tg#%n>m^M3e(!3{Na^c|csZcC##yzAHUEqh*zr3-Gz?#Ua;y LnS%aMIGc^X_PEX!