1 6 package fr.jayasoft.ivy.xml; 7 8 import java.io.BufferedReader ; 9 import java.io.ByteArrayOutputStream ; 10 import java.io.File ; 11 import java.io.FileReader ; 12 import java.io.InputStreamReader ; 13 import java.util.Date ; 14 import java.util.GregorianCalendar ; 15 import java.util.HashMap ; 16 import java.util.Map ; 17 18 import junit.framework.TestCase; 19 import fr.jayasoft.ivy.Ivy; 20 import fr.jayasoft.ivy.ModuleRevisionId; 21 import fr.jayasoft.ivy.util.FileUtil; 22 23 public class XmlModuleUpdaterTest extends TestCase { 24 25 public void testUpdate() throws Exception { 26 33 XmlModuleDescriptorUpdater.LINE_SEPARATOR = "\n"; 34 File dest = new File ("build/updated-test.xml"); 35 dest.deleteOnExit(); 36 Map resolvedRevisions = new HashMap (); 37 resolvedRevisions.put(ModuleRevisionId.newInstance("yourorg", "yourmodule2", "2+"), "2.5"); 38 resolvedRevisions.put(ModuleRevisionId.newInstance("yourorg", "yourmodule6", "latest.integration"), "6.3"); 39 40 GregorianCalendar cal = new GregorianCalendar (); 41 cal.set(2005, 2, 22, 14, 32, 54); 42 43 Ivy ivy = new Ivy(); 44 ivy.setVariable("myvar", "myconf1"); 45 XmlModuleDescriptorUpdater.update(ivy, 46 XmlModuleUpdaterTest.class.getResource("test-update.xml"), 47 dest, resolvedRevisions, "release", "mynewrev", cal.getTime(), null, true); 48 49 assertTrue(dest.exists()); 50 String expected = FileUtil.readEntirely(new BufferedReader (new InputStreamReader (XmlModuleUpdaterTest.class.getResourceAsStream("updated.xml")))); 51 String updated = FileUtil.readEntirely(new BufferedReader (new FileReader (dest))); 52 assertEquals(expected, updated); 53 } 54 55 public void testUpdateWithImportedMappingOverride() throws Exception { 56 ByteArrayOutputStream buffer = new ByteArrayOutputStream (); 57 XmlModuleDescriptorUpdater.update(new Ivy(), 58 XmlModuleUpdaterTest.class.getResourceAsStream("test-configurations-import4.xml"), 59 buffer, new HashMap (), "release", "mynewrev", new Date (), null, true); 60 61 String updatedXml = buffer.toString(); 62 63 assertTrue("Updated XML doesn't define the confmappingoverride attribute", updatedXml.indexOf("confmappingoverride=\"true\"") != -1); 65 } 66 67 } 68 | Popular Tags |