def test_FindEmptyLocation_CalledWithMultipleValues_ReturnsFirstLargeEnoughEntry(self): logs = {(1,2) : "log1", (4,5) : "log2", (8,10) : "log3"} logbuff = LogBuffer(mock.Mock(iosize=10), logs) self.assertEquals(logbuff.getunallocated(), [(0, 1), (2, 4), (5, 8)]) self.assertEquals(logbuff.find_empty_location(1), 0) self.assertEquals(logbuff.find_empty_location(2), 2) self.assertEquals(logbuff.find_empty_location(3), 5)
def test_FindEmptyLocation_CalledWithMultipleValues_ReturnsFirstLargeEnoughEntry( self): logs = {(1, 2): "log1", (4, 5): "log2", (8, 10): "log3"} logbuff = LogBuffer(mock.Mock(iosize=10), logs) self.assertEquals(logbuff.getunallocated(), [(0, 1), (2, 4), (5, 8)]) self.assertEquals(logbuff.find_empty_location(1), 0) self.assertEquals(logbuff.find_empty_location(2), 2) self.assertEquals(logbuff.find_empty_location(3), 5)
def test_getunallocated_WithMultipleLogs_ReturnsSpaceBetweenLogs(self): logs = {(10,20) : "log1", (30,40) : "log2", (70,99) : "log3"} logbuff = LogBuffer(mock.Mock(iosize=100), logs) self.assertEquals(logbuff.getunallocated(), [(0, 10), (20, 30), (40, 70), (99, 100)])
def test_getunallocated_WithTwoLogsWithSpaceInbetween_ReturnsSpaceBetweenLogs(self): logs = {(0,1) : "log1", (2,3) : "log2"} logbuff = LogBuffer(mock.Mock(iosize=3), logs) self.assertEquals(logbuff.getunallocated(), [(1, 2)])
def test_getunallocated_WithTwoLogsTakingAllSpace_ReturnsEmpty(self): logs = {(0,1) : "log1", (1,2) : "log2"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [])
def test_getunallocated_WithOneLogEndingAtBufferSize_ReturnsOnlyOneRangeAtTheBeginning(self): logs = {(1,2) : "log1"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [(0, 1)])
def test_getunallocated_WithOneLogStartingAtBegining_ReturnsOnlyOneRangeAtTheEnd(self): logs = {(0,1) : "log1"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [(1, 2)])
def test_getunallocated_WithEmptyWriteLogs_ReturnsZeroToBufferSize(self): writelogs = {} logbuff = LogBuffer(mock.Mock(iosize=100), writelogs) self.assertEquals(logbuff.getunallocated(), [(0, 100)])
def test_getunallocated_WithMultipleLogs_ReturnsSpaceBetweenLogs(self): logs = {(10, 20): "log1", (30, 40): "log2", (70, 99): "log3"} logbuff = LogBuffer(mock.Mock(iosize=100), logs) self.assertEquals(logbuff.getunallocated(), [(0, 10), (20, 30), (40, 70), (99, 100)])
def test_getunallocated_WithTwoLogsWithSpaceInbetween_ReturnsSpaceBetweenLogs( self): logs = {(0, 1): "log1", (2, 3): "log2"} logbuff = LogBuffer(mock.Mock(iosize=3), logs) self.assertEquals(logbuff.getunallocated(), [(1, 2)])
def test_getunallocated_WithTwoLogsTakingAllSpace_ReturnsEmpty(self): logs = {(0, 1): "log1", (1, 2): "log2"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [])
def test_getunallocated_WithOneLogEndingAtBufferSize_ReturnsOnlyOneRangeAtTheBeginning( self): logs = {(1, 2): "log1"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [(0, 1)])
def test_getunallocated_WithOneLogStartingAtBegining_ReturnsOnlyOneRangeAtTheEnd( self): logs = {(0, 1): "log1"} logbuff = LogBuffer(mock.Mock(iosize=2), logs) self.assertEquals(logbuff.getunallocated(), [(1, 2)])