Skip to content
Snippets Groups Projects
Commit 35227431 authored by pkupczyk's avatar pkupczyk
Browse files

SP-1240 / BIS-677 : Data Set Size Filling Maintenance Task - more tests

SVN: 31154
parent 04754356
No related branches found
No related tags found
No related merge requests found
...@@ -177,7 +177,6 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTask impl ...@@ -177,7 +177,6 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTask impl
if (false == dataSets.isEmpty()) if (false == dataSets.isEmpty())
{ {
Set<String> codes = new HashSet<String>(); Set<String> codes = new HashSet<String>();
Set<String> fixedCodes = new HashSet<String>();
for (SimpleDataSetInformationDTO dataSet : dataSets) for (SimpleDataSetInformationDTO dataSet : dataSets)
{ {
...@@ -192,10 +191,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTask impl ...@@ -192,10 +191,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTask impl
if (false == sizeMap.isEmpty()) if (false == sizeMap.isEmpty())
{ {
service.updatePhysicalDataSetsSize(sizeMap); service.updatePhysicalDataSetsSize(sizeMap);
fixedCodes.addAll(sizeMap.keySet());
} }
fixedAllDataSets = fixedAllDataSets && codes.equals(fixedCodes); fixedAllDataSets = fixedAllDataSets && codes.equals(sizeMap.keySet());
LastSeenDataSetFileContent newLastSeenContent = new LastSeenDataSetFileContent(); LastSeenDataSetFileContent newLastSeenContent = new LastSeenDataSetFileContent();
newLastSeenContent.setFileCreationTime(currentLastSeenContent.getFileCreationTime()); newLastSeenContent.setFileCreationTime(currentLastSeenContent.getFileCreationTime());
......
...@@ -304,6 +304,54 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest ...@@ -304,6 +304,54 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest
assertLogThatSomeDataSetsHaveNotBeenFixedYet(); assertLogThatSomeDataSetsHaveNotBeenFixedYet();
} }
@Test
public void testExecuteWithSomeChunkFailing()
{
final File lastSeenFile = new File(getStoreRoot(), "lastSeenWithSomeChunkFailing");
final int chunkSize = 1;
context.checking(new Expectations()
{
{
allowing(timeProvider).getTimeInMilliseconds();
will(returnValue(0L));
one(service).listPhysicalDataSetsWithUnknownSize(chunkSize, null);
will(returnValue(Arrays.asList(dataSet1)));
one(dao).listDataSetsSize(new String[] { dataSet1.getDataSetCode() });
will(returnValue(Arrays.asList(entry1)));
Map<String, Long> sizeMap = new HashedMap<String, Long>();
sizeMap.put(dataSet1.getDataSetCode(), entry1.getSizeInBytes());
one(service).updatePhysicalDataSetsSize(sizeMap);
one(service).listPhysicalDataSetsWithUnknownSize(chunkSize, dataSet1.getDataSetCode());
will(returnValue(Arrays.asList(dataSet4)));
one(dao).listDataSetsSize(new String[] { dataSet4.getDataSetCode() });
will(throwException(new RuntimeException("Test exception")));
}
});
LastSeenDataSetFileContent lastSeenContent = LastSeenDataSetFileContent.readFromFile(lastSeenFile);
Assert.assertNull(lastSeenContent);
try
{
execute(null, chunkSize, lastSeenFile, null);
Assert.fail();
} catch (Exception e)
{
Assert.assertEquals(e.getClass(), RuntimeException.class);
Assert.assertEquals(e.getMessage(), "Test exception");
}
lastSeenContent = LastSeenDataSetFileContent.readFromFile(lastSeenFile);
Assert.assertEquals(lastSeenContent.getLastSeenDataSetCode(), dataSet1.getDataSetCode());
}
@Test @Test
public void testExecuteWithTimeLimit() public void testExecuteWithTimeLimit()
{ {
...@@ -388,11 +436,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest ...@@ -388,11 +436,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest
@Test @Test
public void testExecuteWithUpToDateLastSeenDataSetFile() public void testExecuteWithUpToDateLastSeenDataSetFile()
{ {
TestResources resources = new TestResources(getClass());
final long lastSeenCreationTime = System.currentTimeMillis(); final long lastSeenCreationTime = System.currentTimeMillis();
final long deleteLastSeenFileInterval = 100L; final long deleteLastSeenFileInterval = 100L;
final File lastSeenFile = resources.getResourceFile("upToDateLastSeenFile"); final File lastSeenFile = new File(getStoreRoot(), "upToDateLastSeenFile");
LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent(); LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent();
lastSeenContent.setFileCreationTime(lastSeenCreationTime); lastSeenContent.setFileCreationTime(lastSeenCreationTime);
...@@ -428,11 +474,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest ...@@ -428,11 +474,9 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest
@Test @Test
public void testExecuteWithOutOfDateLastSeenDataSetFile() public void testExecuteWithOutOfDateLastSeenDataSetFile()
{ {
TestResources resources = new TestResources(getClass());
final long lastSeenCreationTime = System.currentTimeMillis(); final long lastSeenCreationTime = System.currentTimeMillis();
final long deleteLastSeenFileInterval = 100L; final long deleteLastSeenFileInterval = 100L;
final File lastSeenFile = resources.getResourceFile("outOfDateLastSeenFile"); final File lastSeenFile = new File(getStoreRoot(), "outOfDateLastSeenFile");
LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent(); LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent();
lastSeenContent.setFileCreationTime(lastSeenCreationTime); lastSeenContent.setFileCreationTime(lastSeenCreationTime);
...@@ -564,10 +608,8 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest ...@@ -564,10 +608,8 @@ public class FillUnknownDataSetSizeInOpenbisDBFromPathInfoDBMaintenanceTaskTest
@Test @Test
public void testExecuteWhenAllDataSetsGetFixedStartingFromTheLastSeen() public void testExecuteWhenAllDataSetsGetFixedStartingFromTheLastSeen()
{ {
TestResources resources = new TestResources(getClass());
final long lastSeenCreationTime = System.currentTimeMillis(); final long lastSeenCreationTime = System.currentTimeMillis();
final File lastSeenFile = resources.getResourceFile("correctLastSeenFile"); final File lastSeenFile = new File(getStoreRoot(), "correctLastSeenFile");
LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent(); LastSeenDataSetFileContent lastSeenContent = new LastSeenDataSetFileContent();
lastSeenContent.setFileCreationTime(lastSeenCreationTime); lastSeenContent.setFileCreationTime(lastSeenCreationTime);
......
{"last-seen-data-set-code":"DS_3","file-creation-time":1394788798114}
\ No newline at end of file
{"last-seen-data-set-code":"DS_3","file-creation-time":1394788797945}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment