Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java')
-rw-r--r--bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java111
1 files changed, 56 insertions, 55 deletions
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java
index e9bb65236..75afe5f5f 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/metadata/IUPersistenceTest.java
@@ -341,73 +341,74 @@ public class IUPersistenceTest extends AbstractProvisioningTest {
public void testIUPatchPersistence() throws IOException {
IInstallableUnit iu0 = createPatchIU();
validateIU(iu0);
- ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072);
- IUStringWriter writer0 = new IUStringWriter(output0);
- writer0.writeTest(iu0);
- String iuText0 = output0.toString();
- output0.close();
-
- IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
- parser.parse(iuText0);
- assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
- InstallableUnitPatch iu1 = (InstallableUnitPatch) parser.getRootObject();
- validateIU(iu1);
- validateIUPatch(iu1);
- ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492);
- IUStringWriter writer = new IUStringWriter(output1);
- writer.writeTest(iu1);
- String iuText1 = output1.toString();
- output1.close();
- assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ try (ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072)) {
+ IUStringWriter writer0 = new IUStringWriter(output0);
+ writer0.writeTest(iu0);
+ String iuText0 = output0.toString();
+
+ IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
+ parser.parse(iuText0);
+ assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
+ InstallableUnitPatch iu1 = (InstallableUnitPatch) parser.getRootObject();
+ validateIU(iu1);
+ validateIUPatch(iu1);
+ try (ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492)) {
+ IUStringWriter writer = new IUStringWriter(output1);
+ writer.writeTest(iu1);
+ String iuText1 = output1.toString();
+ output1.close();
+ assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ }
+ }
}
public void testIUPatchPersistence2() throws IOException {
IInstallableUnit iu0 = createPatchWithEmptyScope();
validateIU(iu0);
- ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072);
- IUStringWriter writer0 = new IUStringWriter(output0);
- writer0.writeTest(iu0);
- String iuText0 = output0.toString();
- output0.close();
-
- IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
- parser.parse(iuText0);
- assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
- InstallableUnitPatch iu1 = (InstallableUnitPatch) parser.getRootObject();
- validateIU(iu1);
- validateIUPatchWithEmptyScope(iu1);
- ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492);
- IUStringWriter writer = new IUStringWriter(output1);
- writer.writeTest(iu1);
- output1.close();
- //the content on disk is not the same but it is normal because a RequiredCapability array of RequiredCapability[0][0] is not persisted the same
- // than RequiredCapability[][] {{}}
- //assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ try (ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072)) {
+ IUStringWriter writer0 = new IUStringWriter(output0);
+ writer0.writeTest(iu0);
+ String iuText0 = output0.toString();
+
+ IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
+ parser.parse(iuText0);
+ assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
+ InstallableUnitPatch iu1 = (InstallableUnitPatch) parser.getRootObject();
+ validateIU(iu1);
+ validateIUPatchWithEmptyScope(iu1);
+ try (ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492)) {
+ IUStringWriter writer = new IUStringWriter(output1);
+ writer.writeTest(iu1);
+ }
+ //the content on disk is not the same but it is normal because a RequiredCapability array of RequiredCapability[0][0] is not persisted the same
+ // than RequiredCapability[][] {{}}
+ //assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ }
}
public void testIUPersistence() throws IOException {
IInstallableUnit iu0 = createPersistenceTestIU();
validateIU(iu0);
- ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072);
- IUStringWriter writer0 = new IUStringWriter(output0);
- writer0.writeTest(iu0);
- String iuText0 = output0.toString();
- output0.close();
-
- IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
- parser.parse(iuText0);
- assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
- InstallableUnit iu1 = (InstallableUnit) parser.getRootObject();
- validateIU(iu1);
- assertEquals(2, iu1.getLicenses().size());
- ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492);
- IUStringWriter writer = new IUStringWriter(output1);
- writer.writeTest(iu1);
- String iuText1 = output1.toString();
- output1.close();
- assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ try (ByteArrayOutputStream output0 = new ByteArrayOutputStream(3072)) {
+ IUStringWriter writer0 = new IUStringWriter(output0);
+ writer0.writeTest(iu0);
+ String iuText0 = output0.toString();
+
+ IUStringParser parser = new IUStringParser(TestActivator.context, TestActivator.PI_PROV_TESTS);
+ parser.parse(iuText0);
+ assertTrue("Error parsing test iu: " + parser.getStatus().getMessage(), parser.getStatus().isOK());
+ InstallableUnit iu1 = (InstallableUnit) parser.getRootObject();
+ validateIU(iu1);
+ assertEquals(2, iu1.getLicenses().size());
+ try (ByteArrayOutputStream output1 = new ByteArrayOutputStream(1492)) {
+ IUStringWriter writer = new IUStringWriter(output1);
+ writer.writeTest(iu1);
+ String iuText1 = output1.toString();
+ assertTrue("Installable unit write after read after write produced different XML", iuText1.equals(iuText0));
+ }
+ }
}
private void validateIU(IInstallableUnit iu) {

Back to the top