Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 23 additions & 14 deletions src/test/java/src/BinarioTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

public class BinarioTest {
Binario binario = new Binario();

@Test
public void ImediatoTest() {
binario.setImediato("4");
Expand All @@ -24,7 +24,8 @@ public void AddressTest() {
binario.setAddress("1024");
assertEquals("00000000000000010000000000", binario.getAddress());
}


// Função teste para validar comando Save Word
@Test
public void Sw_Test() throws FileNotFoundException {
MainMemory memory = new MainMemory();
Expand All @@ -44,6 +45,7 @@ public void Sw_Test() throws FileNotFoundException {
assertEquals("Leo", MainMemory.getMemorySlot(1024).getContent());
}

// Função teste para validar equações de multiplicação
@Test
public void Mult_Test() {
Register.SetS0("2");
Expand All @@ -59,6 +61,7 @@ public void Mult_Test() {
assertEquals("4", Register.GetRegisters("lo"));
}

// Função teste para validar equações de subtração
@Test
public void sub_Test() {
Register.SetS0("2");
Expand All @@ -75,6 +78,7 @@ public void sub_Test() {
assertEquals("-1", Register.GetRegisters("s0"));
}

// Função teste para validar equações de adição
@Test
public void add_Test() {
Register.SetS0("2");
Expand All @@ -90,7 +94,7 @@ public void add_Test() {
assertEquals("00000010001100101000000000100000", binario.instruction_fetch());
assertEquals("4", Register.GetRegisters("s0"));
}

// Função teste para validar equações de divisão
@Test
public void div_Test() {
Register.SetS0("2");
Expand All @@ -106,7 +110,8 @@ public void div_Test() {
assertEquals("1", Register.GetRegisters("lo"));
assertEquals("0", Register.GetRegisters("hi"));
}


// Função teste para validar comando AND
@Test
public void and_Test() {
Register.SetS0("2");
Expand All @@ -122,6 +127,7 @@ public void and_Test() {
assertEquals("00000010001100101000000000100100", binario.instruction_fetch());
}

// Função teste para validar comando OR
@Test
public void or_Test() {
String[] registers = { "s0", "s1", "s2" };
Expand All @@ -132,7 +138,8 @@ public void or_Test() {

assertEquals("00000010001100101000000000100101", binario.instruction_fetch());
}


// Função teste para validar instruções do tipo Jump
@Test
public void j_Test() {
binario.setOpcode("j");
Expand All @@ -142,6 +149,7 @@ public void j_Test() {
assertEquals("00001000000000000000010000000000", binario.instruction_fetch());
}

// Função teste para validar instruções do tipo Jump N Link
@Test
public void jal_Test() {
binario.setOpcode("jal");
Expand All @@ -151,6 +159,7 @@ public void jal_Test() {
assertEquals("00001100000000000000010000000000", binario.instruction_fetch());
}

// Função teste para validar equações de adição com apenas um registrador (addi)
@Test
public void addi_Test() {
Register.SetS0("2");
Expand All @@ -165,7 +174,7 @@ public void addi_Test() {
assertEquals("00100010001100000000000000000001", binario.instruction_fetch());
assertEquals("3", Register.GetRegisters("s0"));
}

// Função teste para validar instrução andi
@Test
public void andi_Test() {
Register.SetS0("2");
Expand Down Expand Up @@ -193,7 +202,7 @@ public void ori_Test(){

assertEquals("00110110001100000000000000000001", binario.instruction_fetch());
}

// Função teste para validar instrução slti
@Test
public void slti_Test(){
Register.SetS0("2");
Expand All @@ -207,7 +216,7 @@ public void slti_Test(){

assertEquals("00101010001100000000000000000001", binario.instruction_fetch());
}

// Função teste para validar instrução beq (if)
@Test
public void beq_Test(){
Register.SetS0("2");
Expand All @@ -221,7 +230,7 @@ public void beq_Test(){

assertEquals("00010010001100000000000000000100", binario.instruction_fetch());
}

// Função teste para validar instrução bne (if not)
@Test
public void bne_Test(){
Register.SetS0("2");
Expand All @@ -235,7 +244,7 @@ public void bne_Test(){

assertEquals("00010110001100000000000000000100", binario.instruction_fetch());
}

// Função teste para validar istrução load word
@Test
public void lw_Test(){
Register.SetS0("2");
Expand All @@ -250,7 +259,7 @@ public void lw_Test(){
assertEquals("10001110001100000000000000000100", binario.instruction_fetch());

}

// Função teste para validar instrução xor
@Test
public void xor_Test(){
Register.SetS0("2");
Expand All @@ -265,7 +274,7 @@ public void xor_Test(){

assertEquals("00000010001100101000000000100110", binario.instruction_fetch());
}

// Função teste para validar instrução nor
@Test
public void nor_Test(){
Register.SetS0("2");
Expand All @@ -280,7 +289,7 @@ public void nor_Test(){

assertEquals("00000010001100101000000000100111", binario.instruction_fetch());
}

// Função teste para validar instrução sll
@Test
public void sll_Test(){
Register.SetS0("2");
Expand All @@ -295,7 +304,7 @@ public void sll_Test(){

assertEquals("00000000000100011000000001000000", binario.instruction_fetch());
}

// Função teste para validar instrução slr
@Test
public void srl_Test(){
Register.SetS0("2");
Expand Down