Attempt to stabilize FileTreeIterator test on Windows

My guess is that the higher resolution of timestamps provided by Java on
Windows causes this test to occasionally fail.

Bug: 396662
Change-Id: Ia10d76e95fe6156c7ad05972619160e461606805
This commit is contained in:
Robin Rosenberg 2013-01-23 07:55:13 +01:00
parent 910a69d4c8
commit db34152794
1 changed files with 3 additions and 1 deletions

View File

@ -253,14 +253,16 @@ public void testIsModifiedFileSmudged() throws Exception {
// Hopefully fsTick will make sure our entry gets smudged
fsTick(f);
writeTrashFile("file", "content");
long lastModified = f.lastModified();
git.add().addFilepattern("file").call();
writeTrashFile("file", "conten2");
f.setLastModified(lastModified);
DirCacheEntry dce = db.readDirCache().getEntry("file");
FileTreeIterator fti = new FileTreeIterator(trash, db.getFS(), db
.getConfig().get(WorkingTreeOptions.KEY));
while (!fti.getEntryPathString().equals("file"))
fti.next(1);
// If the fsTick trick does not work we could skip the compareMetaData
// If the rounding trick does not work we could skip the compareMetaData
// test and hope that we are usually testing the intended code path.
assertEquals(MetadataDiff.SMUDGED, fti.compareMetadata(dce));
assertTrue(fti.isModified(dce, false));