public void Write_FIFO_WriteThroughNoAssign_SecondSameFail() { var cache = new FIFO <int>(4, new WriteAlgorithm(WriteAlgorithms.WriteThroughWithoutAssignementOnWrite)); cache.Write(0, 5); var result = cache.Write(0, 0); Assert.False(result.success); Assert.False(result.replacedNode); }
public void Write_FIFO_CopyBack_SecondSameSuccess() { var cache = new FIFO <int>(4, new WriteAlgorithm(WriteAlgorithms.CopyBack)); cache.Write(0, 5); var result = cache.Write(0, 0); Assert.True(result.success); Assert.False(result.replacedNode); }
public void Write_FIFO_WriteThroughNoAssign_DontReplaceFirst() { var cache = new FIFO <int>(2, new WriteAlgorithm(WriteAlgorithms.WriteThroughWithoutAssignementOnWrite)); cache.Write(1, 5); cache.Write(2, 6); var result = cache.Write(0, 0); Assert.False(result.success); Assert.False(result.replacedNode); }
public void Write_FIFO_WriteThroughAssign_ReplaceFirst() { var cache = new FIFO <int>(2, new WriteAlgorithm(WriteAlgorithms.WriteThroughWithAssignementOnWrite)); cache.Write(1, 5); cache.Write(2, 6); var result = cache.Write(0, 0); Assert.False(result.success); Assert.True(result.replacedNode); Assert.Equal(1U, result.replacedNodeTag); Assert.Equal(0U, result.block.Tag); Assert.Equal(0, result.block.Val); }
public void Write_FIFO_CopyBack_ReplaceFirst() { var cache = new FIFO <int>(2, new WriteAlgorithm(WriteAlgorithms.CopyBack)); cache.Write(1, 5); cache.Write(2, 6); var result = cache.Write(0, 0); Assert.False(result.success); Assert.True(result.replacedNode); Assert.Equal(1U, result.replacedNodeTag); Assert.Equal(0U, result.block.Tag); Assert.Equal(0, result.block.Val); }
public void Write_FIFO_CopyBack_FirstFail() { var cache = new FIFO <int>(4, new WriteAlgorithm(WriteAlgorithms.CopyBack)); var result = cache.Write(0, 0); Assert.False(result.success); Assert.False(result.replacedNode); }
public void Write_FIFO_WriteThroughNoAssign_SecondSuccess() { var cache = new FIFO <int>(4, new WriteAlgorithm(WriteAlgorithms.WriteThroughWithoutAssignementOnWrite)); cache.Read(0, 5); var result = cache.Write(0, 0); Assert.True(result.success); Assert.False(result.replacedNode); Assert.Equal(0U, result.block.Tag); Assert.Equal(0, result.block.Val); }
public void ReadWrite_FIFO_CopyBack_SecondSuccess() { var cache = new FIFO <int>(4, new WriteAlgorithm(WriteAlgorithms.CopyBack)); cache.Read(0, 5); var result = cache.Write(0, 0); Assert.True(result.success); Assert.False(result.replacedNode); Assert.Equal(0U, result.block.Tag); Assert.Equal(0, result.block.Val); }