Lines 17-22
Link Here
|
17 |
import org.eclipse.core.runtime.IProgressMonitor; |
17 |
import org.eclipse.core.runtime.IProgressMonitor; |
18 |
import org.eclipse.core.runtime.QualifiedName; |
18 |
import org.eclipse.core.runtime.QualifiedName; |
19 |
import org.eclipse.jdt.core.*; |
19 |
import org.eclipse.jdt.core.*; |
|
|
20 |
import org.eclipse.jdt.internal.core.util.Util; |
20 |
|
21 |
|
21 |
public class CopyMoveResourcesTests extends CopyMoveTests { |
22 |
public class CopyMoveResourcesTests extends CopyMoveTests { |
22 |
/** |
23 |
/** |
Lines 329-335
Link Here
|
329 |
"public class X {\n" + |
330 |
"public class X {\n" + |
330 |
"}" |
331 |
"}" |
331 |
); |
332 |
); |
332 |
setReadOnly(file, true); |
333 |
Util.setReadOnly(file, true); |
333 |
ICompilationUnit cuSource = getCompilationUnit("/P/src/p1/X.java"); |
334 |
ICompilationUnit cuSource = getCompilationUnit("/P/src/p1/X.java"); |
334 |
|
335 |
|
335 |
this.createFolder("/P/src/p2"); |
336 |
this.createFolder("/P/src/p2"); |
Lines 341-350
Link Here
|
341 |
assertTrue("Destination cu should be read-only", file2.isReadOnly()); |
342 |
assertTrue("Destination cu should be read-only", file2.isReadOnly()); |
342 |
} finally { |
343 |
} finally { |
343 |
if (file != null) { |
344 |
if (file != null) { |
344 |
setReadOnly(file, false); |
345 |
Util.setReadOnly(file, false); |
345 |
} |
346 |
} |
346 |
if (file2 != null) { |
347 |
if (file2 != null) { |
347 |
setReadOnly(file2, false); |
348 |
Util.setReadOnly(file2, false); |
348 |
} |
349 |
} |
349 |
deleteFolder("/P/src/p1"); |
350 |
deleteFolder("/P/src/p1"); |
350 |
deleteFolder("/P/src/p2"); |
351 |
deleteFolder("/P/src/p2"); |
Lines 486-491
Link Here
|
486 |
* Ensures that a package fragment can be copied to a different package fragment root. |
487 |
* Ensures that a package fragment can be copied to a different package fragment root. |
487 |
*/ |
488 |
*/ |
488 |
public void testCopyReadOnlyPackageFragment() throws CoreException { |
489 |
public void testCopyReadOnlyPackageFragment() throws CoreException { |
|
|
490 |
if (!Util.isReadOnlySupported()) { |
491 |
// Do not test if file system does not support read-only attribute |
492 |
return; |
493 |
} |
489 |
IPackageFragment pkgSource = null; |
494 |
IPackageFragment pkgSource = null; |
490 |
IPackageFragment pkg2 = null; |
495 |
IPackageFragment pkg2 = null; |
491 |
try { |
496 |
try { |
Lines 496-537
Link Here
|
496 |
"public class X {\n" + |
501 |
"public class X {\n" + |
497 |
"}" |
502 |
"}" |
498 |
); |
503 |
); |
499 |
setReadOnly(getFile("/P/src/p1/p2/p3/X.java"), true); |
504 |
Util.setReadOnly(getFile("/P/src/p1/p2/p3/X.java"), true); |
500 |
pkgSource = getPackage("/P/src/p1"); |
505 |
pkgSource = getPackage("/P/src/p1"); |
501 |
setReadOnly(pkgSource.getResource(), true); |
506 |
Util.setReadOnly(pkgSource.getResource(), true); |
502 |
pkg2 = getPackage("/P/src/p1/p2/p3"); |
507 |
pkg2 = getPackage("/P/src/p1/p2/p3"); |
503 |
setReadOnly(pkg2.getResource(), true); |
508 |
Util.setReadOnly(pkg2.getResource(), true); |
504 |
|
509 |
|
505 |
IPackageFragmentRoot rootDest= getPackageFragmentRoot("P", "src2"); |
510 |
IPackageFragmentRoot rootDest= getPackageFragmentRoot("P", "src2"); |
506 |
|
511 |
|
507 |
copyPositive(pkg2, rootDest, null, null, false); |
512 |
copyPositive(pkg2, rootDest, null, null, false); |
508 |
|
513 |
|
509 |
assertTrue("Not readOnly", isReadOnly(getPackage("/P/src2/p1").getResource())); |
514 |
assertTrue("Not readOnly", Util.isReadOnly(getPackage("/P/src2/p1").getResource())); |
510 |
assertTrue("Is readOnly", !isReadOnly(getPackage("/P/src2/p1/p2").getResource())); |
515 |
assertTrue("Is readOnly", !Util.isReadOnly(getPackage("/P/src2/p1/p2").getResource())); |
511 |
assertTrue("Not readOnly", isReadOnly(getPackage("/P/src2/p1/p2/p3").getResource())); |
516 |
assertTrue("Not readOnly", Util.isReadOnly(getPackage("/P/src2/p1/p2/p3").getResource())); |
512 |
assertTrue("Is readOnly", isReadOnly(getFile("/P/src2/p1/p2/p3/X.java"))); |
517 |
assertTrue("Is readOnly", Util.isReadOnly(getFile("/P/src2/p1/p2/p3/X.java"))); |
513 |
} finally { |
518 |
} finally { |
514 |
IFile xSrcFile = getFile("/P/src/p1/p2/p3/X.java"); |
519 |
IFile xSrcFile = getFile("/P/src/p1/p2/p3/X.java"); |
515 |
if (xSrcFile != null) { |
520 |
if (xSrcFile != null) { |
516 |
setReadOnly(xSrcFile, false); |
521 |
Util.setReadOnly(xSrcFile, false); |
517 |
} |
522 |
} |
518 |
if (pkg2 != null) { |
523 |
if (pkg2 != null) { |
519 |
setReadOnly(pkg2.getResource(), false); |
524 |
Util.setReadOnly(pkg2.getResource(), false); |
520 |
} |
525 |
} |
521 |
if (pkgSource != null) { |
526 |
if (pkgSource != null) { |
522 |
setReadOnly(pkgSource.getResource(), false); |
527 |
Util.setReadOnly(pkgSource.getResource(), false); |
523 |
} |
528 |
} |
524 |
IPackageFragment p1Fragment = getPackage("/P/src2/p1"); |
529 |
IPackageFragment p1Fragment = getPackage("/P/src2/p1"); |
525 |
if (p1Fragment != null) { |
530 |
if (p1Fragment != null) { |
526 |
setReadOnly(p1Fragment.getResource(), false); |
531 |
Util.setReadOnly(p1Fragment.getResource(), false); |
527 |
} |
532 |
} |
528 |
IPackageFragment p3Fragment = getPackage("/P/src2/p1/p2/p3"); |
533 |
IPackageFragment p3Fragment = getPackage("/P/src2/p1/p2/p3"); |
529 |
if (p3Fragment != null) { |
534 |
if (p3Fragment != null) { |
530 |
setReadOnly(p3Fragment.getResource(), false); |
535 |
Util.setReadOnly(p3Fragment.getResource(), false); |
531 |
} |
536 |
} |
532 |
IFile xFile = getFile("/P/src2/p1/p2/p3/X.java"); |
537 |
IFile xFile = getFile("/P/src2/p1/p2/p3/X.java"); |
533 |
if (xFile != null) { |
538 |
if (xFile != null) { |
534 |
setReadOnly(xFile, false); |
539 |
Util.setReadOnly(xFile, false); |
535 |
} |
540 |
} |
536 |
deleteFolder("/P/src/p1"); |
541 |
deleteFolder("/P/src/p1"); |
537 |
} |
542 |
} |
Lines 924-929
Link Here
|
924 |
* Ensures that a package fragment can be copied to a different package fragment root. |
929 |
* Ensures that a package fragment can be copied to a different package fragment root. |
925 |
*/ |
930 |
*/ |
926 |
public void testMoveReadOnlyPackageFragment() throws CoreException { |
931 |
public void testMoveReadOnlyPackageFragment() throws CoreException { |
|
|
932 |
if (!Util.isReadOnlySupported()) { |
933 |
// Do not test if file system does not support read-only attribute |
934 |
return; |
935 |
} |
927 |
IPackageFragment pkgSource = null; |
936 |
IPackageFragment pkgSource = null; |
928 |
IPackageFragment pkg2 = null; |
937 |
IPackageFragment pkg2 = null; |
929 |
try { |
938 |
try { |
Lines 934-975
Link Here
|
934 |
"public class X {\n" + |
943 |
"public class X {\n" + |
935 |
"}" |
944 |
"}" |
936 |
); |
945 |
); |
937 |
setReadOnly(getFile("/P/src/p1/p2/p3/X.java"), true); |
946 |
Util.setReadOnly(getFile("/P/src/p1/p2/p3/X.java"), true); |
938 |
pkgSource = getPackage("/P/src/p1"); |
947 |
pkgSource = getPackage("/P/src/p1"); |
939 |
setReadOnly(pkgSource.getResource(), true); |
948 |
Util.setReadOnly(pkgSource.getResource(), true); |
940 |
pkg2 = getPackage("/P/src/p1/p2/p3"); |
949 |
pkg2 = getPackage("/P/src/p1/p2/p3"); |
941 |
setReadOnly(pkg2.getResource(), true); |
950 |
Util.setReadOnly(pkg2.getResource(), true); |
942 |
|
951 |
|
943 |
IPackageFragmentRoot rootDest= getPackageFragmentRoot("P", "src2"); |
952 |
IPackageFragmentRoot rootDest= getPackageFragmentRoot("P", "src2"); |
944 |
|
953 |
|
945 |
movePositive(pkg2, rootDest, null, null, false); |
954 |
movePositive(pkg2, rootDest, null, null, false); |
946 |
|
955 |
|
947 |
assertTrue("Not readOnly", isReadOnly(getPackage("/P/src2/p1").getResource())); |
956 |
assertTrue("Not readOnly", Util.isReadOnly(getPackage("/P/src2/p1").getResource())); |
948 |
assertTrue("Is readOnly", !isReadOnly(getPackage("/P/src2/p1/p2").getResource())); |
957 |
assertTrue("Is readOnly", !Util.isReadOnly(getPackage("/P/src2/p1/p2").getResource())); |
949 |
assertTrue("Not readOnly", isReadOnly(getPackage("/P/src2/p1/p2/p3").getResource())); |
958 |
assertTrue("Not readOnly", Util.isReadOnly(getPackage("/P/src2/p1/p2/p3").getResource())); |
950 |
assertTrue("Is readOnly", isReadOnly(getFile("/P/src2/p1/p2/p3/X.java"))); |
959 |
assertTrue("Is readOnly", Util.isReadOnly(getFile("/P/src2/p1/p2/p3/X.java"))); |
951 |
} finally { |
960 |
} finally { |
952 |
IFile xSrcFile = getFile("/P/src/p1/p2/p3/X.java"); |
961 |
IFile xSrcFile = getFile("/P/src/p1/p2/p3/X.java"); |
953 |
if (xSrcFile != null) { |
962 |
if (xSrcFile != null) { |
954 |
setReadOnly(xSrcFile, false); |
963 |
Util.setReadOnly(xSrcFile, false); |
955 |
} |
964 |
} |
956 |
if (pkg2 != null) { |
965 |
if (pkg2 != null) { |
957 |
setReadOnly(pkg2.getResource(), false); |
966 |
Util.setReadOnly(pkg2.getResource(), false); |
958 |
} |
967 |
} |
959 |
if (pkgSource != null) { |
968 |
if (pkgSource != null) { |
960 |
setReadOnly(pkgSource.getResource(), false); |
969 |
Util.setReadOnly(pkgSource.getResource(), false); |
961 |
} |
970 |
} |
962 |
IPackageFragment p1Fragment = getPackage("/P/src2/p1"); |
971 |
IPackageFragment p1Fragment = getPackage("/P/src2/p1"); |
963 |
if (p1Fragment != null) { |
972 |
if (p1Fragment != null) { |
964 |
setReadOnly(p1Fragment.getResource(), false); |
973 |
Util.setReadOnly(p1Fragment.getResource(), false); |
965 |
} |
974 |
} |
966 |
IPackageFragment p3Fragment = getPackage("/P/src2/p1/p2/p3"); |
975 |
IPackageFragment p3Fragment = getPackage("/P/src2/p1/p2/p3"); |
967 |
if (p3Fragment != null) { |
976 |
if (p3Fragment != null) { |
968 |
setReadOnly(p3Fragment.getResource(), false); |
977 |
Util.setReadOnly(p3Fragment.getResource(), false); |
969 |
} |
978 |
} |
970 |
IFile xFile = getFile("/P/src2/p1/p2/p3/X.java"); |
979 |
IFile xFile = getFile("/P/src2/p1/p2/p3/X.java"); |
971 |
if (xFile != null) { |
980 |
if (xFile != null) { |
972 |
setReadOnly(xFile, false); |
981 |
Util.setReadOnly(xFile, false); |
973 |
} |
982 |
} |
974 |
deleteFolder("/P/src/p1"); |
983 |
deleteFolder("/P/src/p1"); |
975 |
} |
984 |
} |