1 19 20 package org.netbeans.api.convertor; 21 22 import java.io.ByteArrayInputStream ; 23 import java.io.ByteArrayOutputStream ; 24 import java.io.FileInputStream ; 25 import java.io.InputStream ; 26 import org.netbeans.junit.*; 27 import junit.textui.TestRunner; 28 import org.netbeans.api.convertor.dvd.DVD; 29 import org.netbeans.modules.convertor.PropertiesConvertor; 30 import org.netbeans.spi.convertor.Convertor; 31 import org.openide.filesystems.Repository; 32 import org.openide.modules.ModuleInfo; 33 import org.openide.util.Lookup; 34 import org.w3c.dom.Document ; 35 36 37 41 public class DVDConvertorTest extends NbTestCase { 42 43 44 public DVDConvertorTest(String name) { 45 super (name); 46 } 47 48 public static void main(String [] args) { 49 TestRunner.run(new NbTestSuite(DVDConvertorTest.class)); 50 } 51 52 protected void setUp () throws Exception { 53 Lookup.getDefault().lookup(ModuleInfo.class); 54 Repository.getDefault ().getDefaultFileSystem ().getRoot (); 55 } 56 57 private static Convertor conv; 58 59 public static void setupConvertor() throws Exception { 60 ModuleUtils.DEFAULT.install(); 61 ModuleUtils.DEFAULT.enableDVDConvertorModule(true); 62 } 63 64 public static void removeConvertor() throws Exception { 65 ModuleUtils.DEFAULT.enableDVDConvertorModule(false); 66 ModuleUtils.DEFAULT.uninstall(); 67 } 68 69 public void testDVDConvertor() throws Exception { 70 assertFalse(Convertors.canRead("http://www.netbeans.org/ns/dvd", "dvd")); 71 assertFalse(Convertors.canWrite(new DVD())); 72 73 setupConvertor(); 74 75 assertTrue(Convertors.canRead("http://www.netbeans.org/ns/dvd", "dvd")); 76 assertTrue(Convertors.canWrite(new DVD())); 77 78 80 String name = DVDConvertorTest.class.getResource("dvd").getFile() + "/data/DVD.xml"; 81 InputStream is = new FileInputStream (name); 82 DVD d = (DVD)Convertors.read(is); 83 assertEquals(d.ID, 125); 84 assertEquals(d.title, "Tetsuo"); 85 assertEquals(d.publisher, "TartanTerror"); 86 assertEquals(d.price, 19); 87 is.close(); 88 89 90 ByteArrayOutputStream os = new ByteArrayOutputStream (); 91 DVD dvd = new DVD(698, "Zentropa", "TartanClassic", 65); 92 Convertors.write(os, dvd); 93 94 byte[] ba = os.toByteArray(); 95 os.close(); 96 97 ByteArrayInputStream bis = new ByteArrayInputStream (ba); 98 Object o = Convertors.read(bis); 99 assertEquals(dvd, o); 100 101 removeConvertor(); 102 assertFalse(Convertors.canRead("http://www.netbeans.org/ns/dvd", "dvd")); 103 assertFalse(Convertors.canWrite(new DVD())); 104 } 105 106 } 107 | Popular Tags |