A fix for some incorrect behaviors in AVMSyncService.flatten() brought

on by some incorrect cacheing and the lack of some necessary flushes.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@3910 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Britt Park
2006-09-24 22:43:54 +00:00
parent e843fd0d8f
commit 76bd8a310d
7 changed files with 57 additions and 32 deletions

View File

@@ -63,6 +63,37 @@ import org.alfresco.util.GUID;
*/
public class AVMServiceTest extends AVMServiceTestBase
{
/**
* Test partial flatten.
*/
public void testPartialFlatten()
{
try
{
setupBasicTree();
fService.createAVMStore("layer");
fService.createLayeredDirectory("main:/a", "layer:/", "a");
fService.getFileOutputStream("layer:/a/b/c/foo").close();
fService.createFile("layer:/a/b", "bing").close();
List<AVMDifference> diffs = new ArrayList<AVMDifference>();
diffs.add(new AVMDifference(-1, "layer:/a/b/c/foo",
-1, "main:/a/b/c/foo",
AVMDifference.NEWER));
fSyncService.update(diffs, false, false, false, false);
fSyncService.flatten("layer:/a", "main:/a");
AVMNodeDescriptor b = fService.lookup(-1, "layer:/a/b");
assertTrue(b.isLayeredDirectory());
AVMNodeDescriptor c = fService.lookup(-1, "layer:/a/b/c");
assertTrue(c.isPlainDirectory());
}
catch (Exception e)
{
e.printStackTrace(System.err);
fail();
}
}
/**
* Test getIndirection.
*/