diff --git a/test/swen90006/machine/BoundaryTests.java b/test/swen90006/machine/BoundaryTests.java deleted file mode 100644 index 09e71f52d305a2045b7ccf727b675e10f8acaee5..0000000000000000000000000000000000000000 --- a/test/swen90006/machine/BoundaryTests.java +++ /dev/null @@ -1,837 +0,0 @@ -package swen90006.machine; - -import java.util.List; -import java.util.ArrayList; -import java.nio.charset.Charset; -import java.nio.file.Path; -import java.nio.file.Files; -import java.nio.file.FileSystems; - -import org.junit.*; -import static org.junit.Assert.*; -import org.junit.Rule; -import org.junit.rules.ExpectedException; -import org.omg.CosNaming.NamingContextExtPackage.InvalidAddress; - -public class BoundaryTests -{ - //Any method annotated with "@Before" will be executed before each test, - //allowing the tester to set up some shared resources. - @Before public void setUp() - { - } - - //Any method annotated with "@After" will be executed after each test, - //allowing the tester to release any shared resources used in the setup. - @After public void tearDown() - { - } - - //Any method annotation with "@Test" is executed as a test. -@Rule -public ExpectedException thrown= ExpectedException.none(); - -//ADD R0 R-1 R0;(Off point) -@Test public void Add_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("add r0 r-1 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//ADD R0 R32 R0;(Off point) -@Test public void Add_Regsiter_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("add r0 r32 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//ADD R0 R0 R31;(On point) -@Test -public void Add_Regsiter_Boundary3(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("add r0 r31 r0;"); - list.add("ret r0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void ADD_Value_Boundary1() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(3, m.execute(list)); -} -@Test public void ADD_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("ADD R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//SUB R0 R32 R0;(Off point) -@Test public void Sub_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("sub r0 r32 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//SUB R0 R-1 R0;(Off point) -@Test public void Sub_Regsiter_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Sub r0 r-1 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//SUB R0 R0 R31;(On point) -@Test public void Sub_Regsiter_Boundary3(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("sub r0 r31 r0;"); - list.add("ret r0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void Sub_Value_Boundary1() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("SUB R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(1, m.execute(list)); -} -@Test public void SUB_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("SUB R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//Mul R0 R32 R0;(Off point) -@Test public void Mul_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Mul r0 r32 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//SUB R0 R-1 R0;(Off point) -@Test public void Mul_Regsiter_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Mul r0 r-1 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//SUB R0 R0 R31;(On point) -@Test public void Mul_Regsiter_Boundary3(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Mul r0 r31 r0;"); - list.add("ret r0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void Mul_Value_Boundary1() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("Mul R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(2, m.execute(list)); -} -@Test public void MUL_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MUL R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//Div R0 R32 R0;(Off point) -@Test public void Div_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Div r0 r32 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//Div R0 R-1 R0;(Off point) -@Test public void Div_Regsiter_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("Div r0 r-1 r0;"); - list.add("ret r0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//DIV R0 R0 R31;(On point) -@Test public void Div_Regsiter_Boundary3(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov r0 2;"); - list.add("div r0 r31 r0;"); - list.add("ret r0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException | InvalidDivisorException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void Div_Value_Boundary1() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 4;"); - list.add("MOV R2 2;"); - list.add("DIV R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(2, m.execute(list)); -} -@Test public void Div_Value_Boundary2() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 4;"); - list.add("MOV R2 2;"); - list.add("DIV R1 R1 R0;"); - list.add("RET R1;"); - assertEquals(4, m.execute(list)); -} -@Test public void div_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("DIV R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//RET R-1;(Off point) -@Test public void Ret_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("ret r-1;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//RET R32;(Off point) -@Test public void Ret_Regsiter_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("ret r32;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//RET R0;(On point) -@Test public void Ret_Regsiter_Boundary3(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("ret r0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//RET R31;(On point) -@Test public void Ret_Regsiter_Boundary4(){ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("ret r31;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void MOVE_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//MOV R-1 65535;(Off point) -@Test public void Mov_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R-1 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//MOV R0 65535;(On point) -@Test public void Mov_Regsiter_Boundary2() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 65535;"); - list.add("Ret R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//MOV R31 65535;(On point) -@Test public void Mov_Regsiter_Boundary3() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R31 65535;"); - list.add("Ret R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//MOV R32 65535;(Off point) -@Test public void Mov_Regsiter_Boundary4() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R32 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//MOV R0 65536;(Off point) -@Test public void Mov_Value_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 65536;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//MOV R0 -65536;(Off point) -@Test public void Mov_Value_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 -65536;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//MOV R0 -65535;(On point) -@Test public void Mov_Value_Boundary3() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 -65535;"); - list.add("Ret R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//LDR R1 R-1 65535;(Off point) -@Test public void LDR_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("LDR R1 R-1 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//LDR R1 R0 65535;(On point) -@Test public void LDR_Regsiter_Boundary2() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("LDR R1 R0 65535;"); - list.add("Ret R1;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//LDR R1 R31 65535;(On point) -@Test public void LDR_Regsiter_Boundary3() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("LDR R1 R31 65535;"); - list.add("Ret R1;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//LDR R1 R32 65535;(Off point) -@Test public void LDR_Regsiter_Boundary4() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("LDR R1 R32 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//LDR R1 R0 -65536;(Off point) -@Test public void LDR_Value_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("R1 R0 -65536;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//LDR R1 R0 -65535;(On point) -@Test public void LDR_Value_Boundary2() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 -65535;"); - list.add("Ret R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//LDR R1 R0 65536;(On point) -@Test public void LDR_Value_Boundary3() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("R1 R0 65536;"); - list.add("Ret R1;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//b+val<0 -@Test public void LDR_Value_Boundary4() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R31 1;"); - list.add("LDR R0 R31 -2;"); - list.add("RET R0;"); - thrown.expect(InvalidAddressException.class); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//b+val=0 -@Test public void LDR_Value_Boundary5() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R31 1;"); - list.add("LDR R0 R31 -1;"); - list.add("RET R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -// b+val=65535 -@Test public void LDR_Value_Boundary6() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R31 0;"); - list.add("LDR R0 R31 65535;"); - list.add("RET R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -// b+val=65536 -@Test public void LDR_Value_Boundary7() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R31 1;"); - list.add("LDR R0 R31 65535;"); - list.add("RET R0;"); - thrown.expect(InvalidAddressException.class); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void LDR_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("LDR R0 1;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JMP -65536;(Off point) -@Test public void Jmp_Value_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JMP -65536;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JMP -65535;(On point) -@Test public void JMP_Value_Boundary2() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JMP -65535;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JMP 65535(On point) -@Test public void JMP_Value_Boundary3() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JMP 65535;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JMP 65536;(Off point) -@Test public void Jmp_Value_Boundary4() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JMP 65536;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JMP pc+val = -1;(Off point) -@Test public void JMP_Value_Boundary5() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("JMP -2;"); - list.add("RET R0;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JMP pc+val = progLength;(On point) -@Test public void JMP_Value_Boundary6() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("JMP 1;"); - list.add("RET R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//JMP pc+val = progLength+1;(Off point) -@Test public void JMP_Value_Boundary7() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("JMP 2;"); - list.add("RET R0;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//jmp 0 - @Test(timeout = 3000) public void JMP_0() - { - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("jmp 0;"); - m.execute(list); - } - @Test public void JMP_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JMP R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JZ R-1 65535;(Off point) -@Test public void JZ_Regsiter_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JZ R-1 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JZ R0 65535;(On point) -@Test public void JZ_Regsiter_Boundary2() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R0 1;"); - list.add("JZ R0 65535;"); - list.add("RET R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void JZ_Regsiter_Boundary3() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R0 0;"); - list.add("JZ R0 65535;"); - list.add("RET R0;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JZ R31 65535;(On point) -@Test public void JZ_Regsiter_Boundary4() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R31 1;"); - list.add("JZ R31 65535;"); - list.add("RET R31;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void JZ_Regsiter_Boundary5() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R31 0;"); - list.add("JZ R31 65535;"); - list.add("RET R31;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JZ R32 65535;(Off point) -@Test public void JZ_Regsiter_Boundary6() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JZ R32 65535;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JZ R0 65536;(Off point) -@Test public void JZ_Value_Boundary1() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("JZ R0 65536;"); - list.add("RET R31;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JZ R0 -65535 -@Test public void JZ_Value_Boundary2() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R31 1;"); - list.add("JZ R31 -65535;"); - list.add("RET R31;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -@Test public void JZ_Value_Boundary3() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("mov R31 0;"); - list.add("JZ R31 -65535;"); - list.add("RET R31;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JZ R0 -65536;(Off point) -@Test public void JZ_Value_Boundary4() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("JZ R0 -65536;"); - list.add("RET R31;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -//JZ R0 pc+val = -1;(Off point) -@Test public void JZ_Value_Boundary5() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("JZ R0 -2;"); - list.add("RET R0;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -//JZ R0 pc+val = -1;(Off point) -@Test public void JZ_Value_Boundary6() -{ - try{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("JZ R0 -2;"); - list.add("RET R0;"); - m.execute(list); - } - catch(InvalidInstructionException | NoReturnValueException e){ - fail("Should not have thrown any exception"); - } -} -//JMP pc+val = progLength;(On point) -@Test public void JZ_Value_Boundary7() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 2;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(3, m.execute(list)); - -} -@Test public void JZ_Value_Boundary8() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 2;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(2, m.execute(list)); - -} -//JMP pc+val = progLength+1;(Off point) -@Test public void JZ_Value_Boundary9() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 3;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - thrown.expect(NoReturnValueException.class); - m.execute(list); -} -@Test public void JZ_Value_Boundary10() -{ - //execute code that you expect not to throw Exceptions. - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 3;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - assertEquals(3, m.execute(list)); -} - @Test(timeout = 3000) public void JZ_R0_0() - { - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 1;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 0;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - m.execute(list); - } -@Test(timeout = 3000) public void JZ_R0_0_2() - { - List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("MOV R0 0;"); - list.add("MOV R1 2;"); - list.add("MOV R2 1;"); - list.add("JZ R0 0;"); - list.add("ADD R1 R1 R2;"); - list.add("RET R1;"); - m.execute(list); - } -@Test public void JZ_X() -{ List<String> list = new ArrayList<>(); - Machine m =new Machine(); - list.add("JZ R0;"); - thrown.expect(InvalidInstructionException.class); - m.execute(list); -} -}