diff test/org/tmatesoft/hg/test/TestCheckout.java @ 623:fedc54356091

Update tests for Windows; TestCommit: use copy of a repo (not clone) to preserve old timestamps
author Artem Tikhomirov <tikhomirov.artem@gmail.com>
date Mon, 20 May 2013 18:35:13 +0200
parents e1b29756f901
children
line wrap: on
line diff
--- a/test/org/tmatesoft/hg/test/TestCheckout.java	Mon May 20 16:56:40 2013 +0200
+++ b/test/org/tmatesoft/hg/test/TestCheckout.java	Mon May 20 18:35:13 2013 +0200
@@ -28,12 +28,15 @@
 import org.junit.Test;
 import org.tmatesoft.hg.core.HgCheckoutCommand;
 import org.tmatesoft.hg.core.Nodeid;
+import org.tmatesoft.hg.internal.Internals;
+import org.tmatesoft.hg.internal.RelativePathRewrite;
 import org.tmatesoft.hg.repo.HgLookup;
 import org.tmatesoft.hg.repo.HgRepository;
 import org.tmatesoft.hg.util.FileInfo;
 import org.tmatesoft.hg.util.FileWalker;
 import org.tmatesoft.hg.util.Pair;
 import org.tmatesoft.hg.util.Path;
+import org.tmatesoft.hg.util.PathRewrite;
 
 /**
  * 
@@ -123,8 +126,9 @@
 		File testRepoLoc = cloneRepoToTempLocation("test-flags", "test-checkout-flags", true);
 		repo = new HgLookup().detect(testRepoLoc);
 		new HgCheckoutCommand(repo).clean(true).changeset(0).execute();
-		
-		FileWalker fw = new FileWalker(repo, testRepoLoc, new Path.SimpleSource(), null);
+
+		Path.Source pathSrc = new Path.SimpleSource(new PathRewrite.Composite(new RelativePathRewrite(testRepoLoc), repo.getToRepoPathHelper()));
+		FileWalker fw = new FileWalker(repo, testRepoLoc, pathSrc, null);
 		int execFound, linkFound, regularFound;
 		execFound = linkFound = regularFound = 0;
 		while(fw.hasNext()) {
@@ -142,10 +146,16 @@
 				regularFound++;
 			}
 		}
-		// TODO alter expected values to pass on Windows 
-		errorCollector.assertEquals("Executable files", 1, execFound);
-		errorCollector.assertEquals("Symlink files", 1, linkFound);
-		errorCollector.assertEquals("Regular files", 1, regularFound);
+		final int expectedExec, expectedLink, expectedRegular;
+		if (Internals.runningOnWindows()) {
+			expectedExec = expectedLink = 0;
+			expectedRegular = 2;
+		} else {
+			expectedExec = expectedLink = expectedRegular = 1;
+		}
+		errorCollector.assertEquals("Executable files", expectedExec, execFound);
+		errorCollector.assertEquals("Symlink files", expectedLink, linkFound);
+		errorCollector.assertEquals("Regular files", expectedRegular, regularFound);
 	}
 
 	private static final class FilesOnlyFilter implements FileFilter {