From e9e2e9097eed7c217449146613fc4f0445428a96 Mon Sep 17 00:00:00 2001
From: Kevin ZHANG <36391958+GodDeath7th@users.noreply.github.com>
Date: Thu, 13 Sep 2018 18:01:01 +1000
Subject: [PATCH] change

---
 classes/swen90006/machine/BoundaryTests.class | Bin 2590 -> 4033 bytes
 .../swen90006/machine/PartitioningTests.class | Bin 1823 -> 3140 bytes
 classes/swen90006/machine/SimpleDriver.class  | Bin 2097 -> 2109 bytes
 src/swen90006/machine/SimpleDriver.java       |   1 +
 test/swen90006/machine/BoundaryTests.java     | 108 ++++++++++++++----
 test/swen90006/machine/PartitioningTests.java |  75 +++++++++---
 6 files changed, 144 insertions(+), 40 deletions(-)

diff --git a/classes/swen90006/machine/BoundaryTests.class b/classes/swen90006/machine/BoundaryTests.class
index 8cc735a2d9ab7d28119bd13db1a8e979a6cfb1ed..2ba0555264cb67e19f67bce50ede5c9c692d5d05 100644
GIT binary patch
literal 4033
zcmX^0Z`VEs1_l#`HCznl4DlQc30w?`3`txJ$qXs%45?fUX$<LH3>gfW><n3)4A~4h
z91OW!40#OsTnrox1zZf-422vFMO+MK48`mWC0q;w4DleMl$8Mjn7J6r7|J;qDqsRk
z91N8l3{@Nq)i4nj4u%>IhFT7WIu3?<m>??$Lj#P>#=+1CW3zKGG;uIAb1<}UFtl<o
zv~e)Bb1-ypFm!S-ba60rb1?L9F!ZuB^szJaGcvH*Waed-*fBCNYiNcsGO#%3r=&76
z2o$9zrg-KRmlTyImt^MW6*DrZX!v9$mL=-vB<7{-2bUCO=A~O}LWD|7GIR8OGK)*B
z85wwkOA?c_eG>~p5|eUL!M3EbGfZG-n8?nM#mK-JoSB}NSW;S)%E(|rgo!o~8;~uv
z1KE<4Uz(SaSX3F3T3lkt$iU@Vk(^opb*W@fX<kWYZfaO&ab{9Zs$*VWen}!!PQWL>
zC|y6RG%vG6AEX!EEF(q+USzY4(fB54d{Z>O85-Xljc<X*w`64CL$=S*0A0WkUBC!k
zz!+V?1YN)sUBC=oz#Lt`0$l*zrAFv3H9~i(5xPr_jCmL=7%UkXSVKeHbS>B!Ch#y!
zVwlX%FolO<D#J8J1_AUG#?COEhhYZ8Om>D@JPflL<}fk{Bb317oSk7V55qi$`HT!2
zo_S@7IhiR6nRx}JB?@VoIjM>Y8pWU_SyGgkoT`wPpOcecUaZN^uz-hQA;TgbhQ$m^
zco>#4EMsKgORY%EEyzhN)^`ds)GOv;ux7AfWRNT_PtCJ5FfcIF&rM9u$jnRC_l3|r
z49gi-ursXWVOYhm8dbZIUNNeGF}i>Wx_~LVfEl`gIl6!ax_~7}fFIc#1{flS7$RWD
zqUZv<7DWW?Toe(odr?Hd4n`3HyBI|T>|_)X3^yBLxY-E9%|;k*HUhg@9y79>kV=YT
zlqBY#l$DxX!pI;2PEvW9`TEHjiABY!CHl?~nvsDIECny$7#Y~p@{9Zub5j`^^l+D6
zSd6k}WRL`#1(E|LOMSP@oYdgT;*!+dVnzn8^wbiU)U?FXoDxO`84YN;ibbt8vUAbQ
zVPs%WPb~>ZEXiPGu*TxLXw0${-6D`?Ygi^jvA&p*fd^D6IOgQ|Wagz7Gcq_pt$-^7
zYlheX5<?42Y?TFaeg_8yBLj14Q4u49D8!h|eEoo;%)FA|lA_eaT)4wfg&7&x3qXo;
z@)#LJp>9I1FF@5AKUf90Y6=0B1B?t3P?e}=S%Va_q*i2>Ffy=cc!GHBsTHZor6sA1
z48l+?@Z?~v>B-0-fT&O$i;Gi>N*Eb<62T1D!qUW?Vnzm54KFXvFa|{iGX`^TjW5Z-
z2r35|7#XY>7#IW@7#SED7#LW!wlgqp1S?<y6+H}0VCgglW(H8rZY;#KgMrzX(QgL>
zi#GFK2G(s1Y&ts_*!`9>NLsOMV&D|w+Qz^w31V$y;9=Rpz^l7~fsuiOL4rY=frEjO
z!Ipu6L6U*#KZ7&_3p;}yJA*wtg9AH*BLgElgOezOGXnzy6N3u_BZDi0B?B|qZVd(&
z24)5Z1{p0OzU>VBKD!wNBDXUL`s!$JV-RW;VG!QIAPRA@8v_Fa3)nh$1_lN;21W)C
z1_lO322X5eiD5HKoS<1=*vyi|W)@+0d1Et6iafJ?u$d)|%`6#$e)Pp=mK=Fz`C&6l
z9-CQ&!^<C=SqkKt6@bkwMQmm%5e%<DY-XuoGfS1ASwYy$QpaYN20^oev6-cX%`C!x
z48dlWHa4>er>{_KX6cY;Rv0$3bjdR-9Gh8s<e3$L%`AQL%!<TjmH~NYMPW0`kUX=Z
x;by5p%V;SrAtOw)xCo}y7`RDDrM)qxNg@n{b5JZcvrNb{D-N4krsSB#003#UP)h&+

literal 2590
zcmX^0Z`VEs1_l#`7%m1G25WW(8x96rE(SXWdkzK%4hBaK1}6>%XATAz4hB~a1~(1{
zcMb**4hByS1}_c<Zw>|@4hCNi20so4e-4HK4u(Juh9C}xU=D^54u(*6hA?)9a7G3;
zo6Nk-5<5l)W)00SMg|t={FGEi2HvFn(!7+!qRNoe;u1qf1}@i%<kW(a%>2A!c7_N>
z2Fak(ypqh^)UeFr%%q%D$Gp7!l0>jHBZGiXeo?x9R%u>li9SfXHJWioXnbQdz6l!N
z6pe3&#y3afTcGhR85#IcykmeaV2CbYgf3u=E?|N#V2UnahAv=^E?|K!fbLQwbe9^T
zyVMBXrAEd)46+Pzj0^%<iDilUIf;4c`oSednR)4q41B2-iMa(ism1zEVTO9e><p1S
z3{ecxs1inc#i#<t=mI9_0;cE!X6ORu=mHk#0+t{Feq;w4V2BuEh=3i7q6_R=6cMm<
zQAEJ*MG*lz7)1o^ViXaulTk!4+-!v5W+MzY8)3NF2<&G0;_}oyO9KM~GyUAe<c!R`
zRDCC;JXnkpqy9-*smUdb48n*=hG$Sl202Wlf-^x8?^2XmmRiKfz>=Gona9W=rV;If
zFaVNDtTn?J6d9x$WEem|f`Ji~niv=v<QW(k1Q{3^7#SECShcn@Fm43NGcYnJFvu}5
zgQX=ISisV}EPEN4BAJDlgLg2nK$IymFn}eM7?c?p7}yvX8B`b;7#JB;acX8ItXU1G
zW;Vi_)p2TOC#+cmr)Cbqnl*81<|M3H3#Vo-!kV>lYUU=aSqG<P9>SV+acbrztXU7I
zW<J82^>J$EC#=~3r)B}dnhkMk79_0M2&ZNt!kUe7Y8ED}*#xI%5yF~HacUMNtl12w
jW--E=&2efLC#=~5r)CMlnk{i^mL#m%3a4f%LYf%>5@E2f

diff --git a/classes/swen90006/machine/PartitioningTests.class b/classes/swen90006/machine/PartitioningTests.class
index 185cbdc5c0d85810511dafeb9e5684f17ad14be8..b084b43b945ece63ee63632a5d84c0904474e340 100644
GIT binary patch
literal 3140
zcmX^0Z`VEs1_l#`DO?Qt4E`Jp0bC4$3_)BB!3-hn453^MVGQA13=s^G><m$y4ABfR
z91O8s3~>zcTnrox30w@(42c{JNn8wi49V;aDO?N!4E`V@m6ZVkIJp?o7}7ZyGGGGC
z91NKp3|Slu*)S0%4u%{KhFlnzor56{#%ASU$md`v;9w}^U?}2XDCS@&;b16*$+ECB
zl(93EGcvH*Waed-*fBCNYiNcsGO#%3r=&762o$9zrg-KRmlTyImt^MW6*DrZX!v9$
zmL=-vB<7{-2bUCO=A~O}LWD|7GIR8OGK)*B85wwkOA?c_eG>~p5|eUL!M235GgPoM
zRI)QfF*0xlXQt;RmXsEyGBQ{YVWJJh24qX^tQi^j3KEM-GC?j2Ni8lhWMtrStw>HS
z00|T`GDrrM=9OgTriNt}XC~#OI_Bl&mn1^v1bp&~()F`S^D;~HL3%L^GeS4r7+t^w
zUBDDwzzki$99_TyUBHr&fgjaV1{flS7$QcD3<9XSj14h`j4<?>@GuxK7&0=jhK9K5
zTCg)z@Gw*{RI@YG@G#Ue)G;y$phq=3Lp={e14AP_LlX}}GeZj_gD^q~JnY#ST6q}S
z7}^;bG(7Xl5_2+B6f*M)N=p>dGILTD6*P)LX``elF*#KsEk7qGzr0wJouPw=p_8GD
zhoPIHhlin;p^uS)FSQ~uw;(6ASl`vzP_LMW!I;5>kwLP!JT=eKz`(#vKQ}QsBQq~m
z-xosjF!VD_U}u=f!!U_qGOBhXy<$`WV{`!%bOBRz0W)*~b94a<bOB3{06(%f3@}6t
zF+{+Q6-3r$tP56!CI(iAVmjCp%9sHZ0LvzsdFi0kUW^j8{z+M>$t8>o65y!J%gonL
z&PXgOPA$=QhR}=*d|)Yf24`eoPs=azOUzAWWYEK%eX$s2&B!1LHVY&NN)GyNnK`M!
zmBl5gxy6hOT<NJLE~#mWr8y;x3^E$ff(46OYh>r5nZwAyo}O9~kXVwz$Y71db<voG
z3A#lf&DOBQjbeQ<BLfepRCLVA@yX0fEoNkJfLZ}p2G$I*10;qPnAl27<a`DW3PuLz
z)S@Cr22qGHnfdwwMVWae!6ikhiMeoxp$aoHuor+7<>WCkh(g_jTwsFAb$+l4aM>IJ
z%72Uu5>S<>W?6$2v!qsJmM}7~Xn2Bn?5P#0$)zQ!j10n1E%4-Et?9|gAb==P9gB-o
zi%J+7coM-3*TT}ooMJ`>Rt+yN%`gT<20aFSaMdQrzz8aT7#JCh7#J8pJVpiv23D=@
z42&DW3Yb7yo`DH0oyNe-0IIf(g_w3QF#9t4?O<ThX5P!dx{ZNNX9okj-*N^?E0#?R
zoI+gN7`P=ttZfWDEISx@bvH0DGH@_RFi10SFfcNhGB7YmGBEvTkY-?EXE0-DFlT45
zU}vyoU}R^o5@oPvU|?Wkuwh_iuw^i0U<TW*!N9`6%)r1Pqb0<*oq^wHH-kXrb_PLT
z9qnxlLaibU!aEp5AuhIKU|?VYTW8O}z`(}9$l$=hz`)4hh|Mf9Y-WiQG|LH_S(4<L
z<&4cNDQspD_M;0nv!t<^B}34UuGq|yBhM^1Y-Y)0GfRP>yWFvvrG(8aWrAjTz|B&F
zrY|WiAyrJXxCol$iOnQ6a!m4qn}n3+)iF&HVIb^3Z)|31kY|<;+$^N9(!?~2a9H_b
ZGf9gall<T&A%&GTrb!|UIs{^n0RXn3teXG;

literal 1823
zcmX^0Z`VEs1_l!b7cK@725oi*9S#OvE(SdYeGUc#4hBOG1|tpzV-5xr4hB;W1~U!@
za}EXz4hBmO1}hE*YYqk*4hCCx20L~JdqxH}o6Nk-5<5l)W)00SMg|t={FGEi2EKyC
zqLR##%>2BN)Z!9DMg}g|isaM+kU%jzg99UjWKd~dNoH<pSY~l%QckL4US57lB3PP{
zLBJ=!C|y6RG%vG6AEezH-8>_70b_Il6LbMnbOAGT0dsT#3v>ZXMh1RVe;Hti7-EPR
zF)|3C>M}OO6f(llXTrlE${@zbAdr<<mZ+bTn3t{}TvC*om(Iw*ms*jSTac4ltncb<
zs8`I+;K;+^#Ndo7VWd}#DqxH*V1h1SiY{P=E?|x>V1X`R2@>E(cAx=<h#`gu*s+4h
zx{P(fs?fy1>QGDvdqTOmJT=eKz`(#vKQ}QsBQq~mKLC~hGxO3xiKrMQB>j`JQj<#<
z8H5pm3s0bo404#p1!sZ++@&b9EVYP{fh9LFGmnu$Oe5L{VE`m{tTn?J6d8mWL>NFo
zfPoPdiwukm;tUK7f((odj0_A6tXkU{7&n6C85kKP7{nNu!P1fpEMRF~mc0y2k<3EO
z!8;gOAj%{e7{HQJ4AKk?3~UUH3^EK142%r2I5o2p)+~opGaF&e@;EiK6V|MNQ!@u)
z&5AfRa}w69gi|vYVa>`oHFFcztb$WB4`I!!I5qPU)~tq8Gaq5i>Nqv?6V|MOQ?meJ
T&6+qh3li3>g;TQ-A<YZ`uMjz|

diff --git a/classes/swen90006/machine/SimpleDriver.class b/classes/swen90006/machine/SimpleDriver.class
index 5ec33d8d060b554c3f39b6814357650e46541be2..48a6bba6927d7bdb6eb1ade861cf2706744f5b38 100644
GIT binary patch
delta 66
zcmdleuvcKiTQ*K-24)6U1_p-LlfSWTX0)8Virt8XWd{S#<U8zA%w`O1lYg>ni~eCS
XWM?q^#lXy9%)r3F!obKN%)kHuaNQ4n

delta 53
zcmdlhuu)*cTQ*K}24)6U1_p-blfSWTW;C6=irr}P19mB9JqFgvf7!Kp4H=9X7#LU>
J7#V~a7yzAv3}gTR

diff --git a/src/swen90006/machine/SimpleDriver.java b/src/swen90006/machine/SimpleDriver.java
index dbeb3e5..bf288a4 100644
--- a/src/swen90006/machine/SimpleDriver.java
+++ b/src/swen90006/machine/SimpleDriver.java
@@ -45,6 +45,7 @@ public class SimpleDriver {
             if (m != null){
                 System.err.println("Number of instructions executed before exception: " + m.getCount());
             }
+            System.exit(1);
         }
     }
 }
diff --git a/test/swen90006/machine/BoundaryTests.java b/test/swen90006/machine/BoundaryTests.java
index 36649bb..d3a53c0 100644
--- a/test/swen90006/machine/BoundaryTests.java
+++ b/test/swen90006/machine/BoundaryTests.java
@@ -12,96 +12,158 @@ import static org.junit.Assert.*;
 
 public class BoundaryTests
 {
+
+	
+  private List<String> readInstructions(String file)
+  {
+	Charset charset = Charset.forName("UTF-8");
+	List<String> lines = null;
+	try {
+	  lines = Files.readAllLines(FileSystems.getDefault().getPath(file), charset);
+	}
+	catch (Exception e){
+	  System.err.println("Invalid input file! (stacktrace follows)");
+	  e.printStackTrace(System.err);
+	  System.exit(1);
+	}
+	return lines;
+  }
   @Test
   public void boundaryTest1() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV1.s"});
+	  final List<String> lines = readInstructions("examples/BV1.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void boundaryTest2() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV2.s"});
+	  final List<String> lines = readInstructions("examples/BV2.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 2);
   }
   @Test
   public void boundaryTest3() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV3.s"});
+	  final List<String> lines = readInstructions("examples/BV3.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void boundaryTest4() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV4.s"});
+	  final List<String> lines = readInstructions("examples/BV4.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void boundaryTest5() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV5.s"});
+	  final List<String> lines = readInstructions("examples/BV5.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest6() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV6.s"});
+	  final List<String> lines = readInstructions("examples/BV6.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest7() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV7.s"});
+	  final List<String> lines = readInstructions("examples/BV7.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void boundaryTest8() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV8.s"});
+	  final List<String> lines = readInstructions("examples/BV8.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void boundaryTest9() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV9.s"});
+	  final List<String> lines = readInstructions("examples/BV9.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 5);
   }
   @Test
   public void boundaryTest10() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV10.s"});
+	  final List<String> lines = readInstructions("examples/BV10.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 6);
   }
   @Test
   public void boundaryTest11() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV11.s"});
+	  final List<String> lines = readInstructions("examples/BV11.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 7);
   }
   @Test
   public void boundaryTest12() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV12.s"});
+	  final List<String> lines = readInstructions("examples/BV12.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 5);
   }
   @Test
   public void boundaryTest13() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV13.s"});
+	  final List<String> lines = readInstructions("examples/BV13.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest14() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV14.s"});
+	  final List<String> lines = readInstructions("examples/BV14.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest15() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV15.s"});
+	  final List<String> lines = readInstructions("examples/BV15.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest16() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV16.s"});
+	  final List<String> lines = readInstructions("examples/BV16.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest17() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV17.s"});
+	  final List<String> lines = readInstructions("examples/BV17.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest18() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV18.s"});
+	  final List<String> lines = readInstructions("examples/BV18.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest19() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV19.s"});
+	  final List<String> lines = readInstructions("examples/BV19.s");
+	    Machine m = new Machine();
+	   assertEquals(m.execute(lines), 4);
   }
   @Test
   public void boundaryTest20() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV20.s"});
+	  final List<String> lines = readInstructions("examples/BV20.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 1);
   }
   @Test
   public void boundaryTest21() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV21.s"});
+	  final List<String> lines = readInstructions("examples/BV21.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 6);
   }
   @Test
   public void boundaryTest22() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV22.s"});
+	  final List<String> lines = readInstructions("examples/BV22.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 6);
   }
   @Test
   public void boundaryTest23() throws Exception {
-    SimpleDriver.main(new String[]{"examples/BV23.s"});
+	  final List<String> lines = readInstructions("examples/BV23.s");
+	    Machine m = new Machine();
+	     assertEquals(m.execute(lines), 6);
   }
 }
diff --git a/test/swen90006/machine/PartitioningTests.java b/test/swen90006/machine/PartitioningTests.java
index 33c35fe..d7e2d2f 100644
--- a/test/swen90006/machine/PartitioningTests.java
+++ b/test/swen90006/machine/PartitioningTests.java
@@ -12,79 +12,120 @@ import static org.junit.Assert.*;
 
 public class PartitioningTests
 {
+  private List<String> readInstructions(String file){
+   Charset charset = Charset.forName("UTF-8");
+   List<String> lines = null;
+	try {
+		 lines = Files.readAllLines(FileSystems.getDefault().getPath(file), charset);
+	}
+	catch (Exception e){
+		 System.err.println("Invalid input file! (stacktrace follows)");
+		  e.printStackTrace(System.err);
+		  System.exit(1);
+		}
+		return lines;
+	 }
   @Test
   public void partitionTest1() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC1.s"});
+	  final List<String> lines = readInstructions("examples/EC1.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 9);
     
   }
   @Test
   public void partitionTest2() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC2.s"});
+	  final List<String> lines = readInstructions("examples/EC2.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
 
   }
   @Test
   public void partitionTest3() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC3.s"});
-
+	  final List<String> lines = readInstructions("examples/EC3.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 3);
   }
   @Test
   public void partitionTest4() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC4.s"});
+	  final List<String> lines = readInstructions("examples/EC4.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 9);
 
   }
   @Test
   public void partitionTest5() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC5.s"});
+	  final List<String> lines = readInstructions("examples/EC5.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 2);
 
   }
   @Test
   public void partitionTest6() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC6.s"});
+	  final List<String> lines = readInstructions("examples/EC6.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 2);
 
   }
   @Test
   public void partitionTest7() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC7.s"});
+	  final List<String> lines = readInstructions("examples/EC7.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 7);
 
   }
   @Test
   public void partitionTest8() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC8.s"});
+	  final List<String> lines = readInstructions("examples/EC8.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 5);
 
   }
   @Test
   public void partitionTest9() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC9.s"});
+	  final List<String> lines = readInstructions("examples/EC9.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 1);
 
   }
   @Test
   public void partitionTest10() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC10.s"});
+	  final List<String> lines = readInstructions("examples/EC10.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 1);
 
   }
   @Test
   public void partitionTest11() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC11.s"});
-
+	  final List<String> lines = readInstructions("examples/EC11.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 5);
   }
   @Test
   public void partitionTest12() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC12.s"});
+	  final List<String> lines = readInstructions("examples/EC12.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 5);
 
   }
   @Test
   public void partitionTest131() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC13-1.s"});
+	  final List<String> lines = readInstructions("examples/EC13-1.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 1);
 
   }
   @Test
   public void partitionTest132() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC13-2.s"});
+	  final List<String> lines = readInstructions("examples/EC13-2.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 1);
 
   }
   @Test
   public void partitionTest14() throws Exception{
-    SimpleDriver.main(new String[]{"examples/EC14.s"});
+	  final List<String> lines = readInstructions("examples/EC14.s");
+	    Machine m = new Machine();
+	    assertEquals(m.execute(lines), 4);
 
   }
 }
-- 
GitLab