Lines 13-19
Link Here
|
13 |
import java.io.ByteArrayInputStream; |
13 |
import java.io.ByteArrayInputStream; |
14 |
import java.io.File; |
14 |
import java.io.File; |
15 |
import java.io.IOException; |
15 |
import java.io.IOException; |
16 |
import java.io.UnsupportedEncodingException; |
|
|
17 |
import java.util.ArrayList; |
16 |
import java.util.ArrayList; |
18 |
import java.util.HashMap; |
17 |
import java.util.HashMap; |
19 |
import java.util.HashSet; |
18 |
import java.util.HashSet; |
Lines 30-35
Link Here
|
30 |
import org.eclipse.core.resources.IResource; |
29 |
import org.eclipse.core.resources.IResource; |
31 |
import org.eclipse.core.runtime.CoreException; |
30 |
import org.eclipse.core.runtime.CoreException; |
32 |
import org.eclipse.core.runtime.IPath; |
31 |
import org.eclipse.core.runtime.IPath; |
|
|
32 |
import org.eclipse.core.runtime.IStatus; |
33 |
import org.eclipse.core.runtime.Path; |
33 |
import org.eclipse.core.runtime.Path; |
34 |
import org.eclipse.team.core.TeamException; |
34 |
import org.eclipse.team.core.TeamException; |
35 |
import org.eclipse.team.internal.ccvs.core.CVSException; |
35 |
import org.eclipse.team.internal.ccvs.core.CVSException; |
Lines 357-363
Link Here
|
357 |
project.getFile("folder2/a.txt").copy(project.getFile("folder1/a.txt").getFullPath(), false, DEFAULT_MONITOR); |
357 |
project.getFile("folder2/a.txt").copy(project.getFile("folder1/a.txt").getFullPath(), false, DEFAULT_MONITOR); |
358 |
assertModificationState(project, new String[] {".", "folder2/", "folder2/a.txt"}, true); |
358 |
assertModificationState(project, new String[] {".", "folder2/", "folder2/a.txt"}, true); |
359 |
addResources(new IResource[] {project.getFile("folder2/a.txt")}); |
359 |
addResources(new IResource[] {project.getFile("folder2/a.txt")}); |
360 |
commitProject(project); |
360 |
try { |
|
|
361 |
commitProject(project); |
362 |
} catch (CVSException e) { |
363 |
// Some CVS servers return info about resetting date |
364 |
if (e.getStatus().getSeverity() == IStatus.ERROR) { |
365 |
throw e; |
366 |
} |
367 |
} |
361 |
assertModificationState(project, null, true); |
368 |
assertModificationState(project, null, true); |
362 |
} |
369 |
} |
363 |
|
370 |
|
Lines 493-499
Link Here
|
493 |
project.getFolder("folder2/folder3/").copy(project.getFolder("folder1/folder3").getFullPath(), false, DEFAULT_MONITOR); |
500 |
project.getFolder("folder2/folder3/").copy(project.getFolder("folder1/folder3").getFullPath(), false, DEFAULT_MONITOR); |
494 |
assertModificationState(project, new String[] {".", "folder2/", "folder2/folder3/", "folder2/folder3/file.txt"}, true); |
501 |
assertModificationState(project, new String[] {".", "folder2/", "folder2/folder3/", "folder2/folder3/file.txt"}, true); |
495 |
addResources(new IResource[] {project.getFolder("folder2/folder3/")}); |
502 |
addResources(new IResource[] {project.getFolder("folder2/folder3/")}); |
496 |
commitProject(project); |
503 |
try { |
|
|
504 |
commitProject(project); |
505 |
} catch (CVSException e) { |
506 |
// Some CVS servers return info about resetting date |
507 |
if (e.getStatus().getSeverity() == IStatus.ERROR) { |
508 |
throw e; |
509 |
} |
510 |
} |
497 |
assertModificationState(project, null, true); |
511 |
assertModificationState(project, null, true); |
498 |
} |
512 |
} |
499 |
|
513 |
|
Lines 565-593
Link Here
|
565 |
assertModificationState(copy, null, true); |
579 |
assertModificationState(copy, null, true); |
566 |
} |
580 |
} |
567 |
|
581 |
|
568 |
public void testBug62547() throws TeamException, CoreException, |
582 |
public void testBug62547() throws TeamException, CoreException { |
569 |
UnsupportedEncodingException { |
|
|
570 |
IProject project = createProject("testBug62547Project", new String[] { |
583 |
IProject project = createProject("testBug62547Project", new String[] { |
571 |
"file1.txt", "file2.txt" }); |
584 |
"file1.txt", "file2.txt" }); |
572 |
|
585 |
|
573 |
project.getFile("file1.txt").setContents( |
586 |
setContentsAndEnsureModified(project.getFile("file1.txt")); |
574 |
new ByteArrayInputStream("Sample text 1".getBytes("UTF-8")), |
587 |
setContentsAndEnsureModified(project.getFile("file2.txt")); |
575 |
true, true, getMonitor()); |
|
|
576 |
project.getFile("file2.txt").setContents( |
577 |
new ByteArrayInputStream("Sample text 2".getBytes("UTF-8")), |
578 |
true, true, getMonitor()); |
579 |
long currentTime = System.currentTimeMillis(); |
580 |
new File(project.getFile("file1.txt").getLocationURI()) |
581 |
.setLastModified(currentTime); |
582 |
project.getFile("file1.txt").refreshLocal(1, getMonitor()); |
583 |
|
588 |
|
584 |
assertEquals(currentTime, project.getFile("file1.txt") |
589 |
File file2 = new File(project.getFile("file2.txt").getLocationURI()); |
|
|
590 |
file2.setLastModified(project.getFile("file1.txt") |
585 |
.getLocalTimeStamp()); |
591 |
.getLocalTimeStamp()); |
586 |
|
|
|
587 |
new File(project.getFile("file2.txt").getLocationURI()) |
588 |
.setLastModified(currentTime); |
589 |
project.getFile("file2.txt").refreshLocal(1, getMonitor()); |
592 |
project.getFile("file2.txt").refreshLocal(1, getMonitor()); |
590 |
assertEquals(currentTime, project.getFile("file2.txt") |
593 |
assertEquals(project.getFile("file1.txt") |
|
|
594 |
.getLocalTimeStamp(), project.getFile("file2.txt") |
591 |
.getLocalTimeStamp()); |
595 |
.getLocalTimeStamp()); |
592 |
|
596 |
|
593 |
commitResources(project, new String[] { "file1.txt", "file2.txt" }); |
597 |
commitResources(project, new String[] { "file1.txt", "file2.txt" }); |