1 4 package com.inversoft.savant.test; 5 6 7 import java.io.File ; 8 import java.net.MalformedURLException ; 9 import java.util.Arrays ; 10 11 import junit.framework.TestCase; 12 13 import com.inversoft.savant.Artifact; 14 import com.inversoft.savant.Dependencies; 15 import com.inversoft.savant.DependencyMediator; 16 import com.inversoft.savant.SavantException; 17 import com.inversoft.savant.SavantInternetProcess; 18 import com.inversoft.savant.Workflow; 19 20 21 29 public class DependencyMediatorDepsTest extends TestCase { 30 31 public DependencyMediatorDepsTest(String s) { 32 super(s); 33 } 34 35 36 37 40 public void testArtifactDeps() throws SavantException, MalformedURLException { 41 Artifact a = new Artifact(); 42 a.setGroup("my_group"); 43 a.setName("my_complete_artifact"); 44 a.setProjectname("my_project"); 45 a.setType("jar"); 46 a.setVersion("42"); 47 48 Dependencies d = new Dependencies(); 49 d.addArtifact(a); 50 51 File root = new File ("test/savant"); 52 SavantInternetProcess sip = new SavantInternetProcess(); 53 sip.setDefaultdomain(root.toURL().toString()); 54 55 Workflow w = new Workflow(); 56 w.addProcess(sip); 57 58 File cache = new File ("test/cache"); 59 File toClear = new File (cache, "my_group/my_project"); 60 File [] files = toClear.listFiles(); 61 for (int i = 0; i < files.length; i++) { 62 File file = files[i]; 63 System.out.println("Deleting: " + file.getAbsolutePath()); 64 file.delete(); 65 } 66 67 DependencyMediator dm = new DependencyMediator(); 68 dm.setLocalCacheDir(cache); 69 dm.setDependencies(d); 70 dm.setWorkflow(w); 71 dm.mediate(); 72 73 files = toClear.listFiles(); 74 assertEquals(4, files.length); 75 76 Arrays.sort(files); 77 assertTrue(Arrays.binarySearch(files, new File (toClear, "my_name-2.0.exe")) >= 0); 78 assertTrue(Arrays.binarySearch(files, new File (toClear, "my_md5_artifact-2.0.jar")) >= 0); 79 assertTrue(Arrays.binarySearch(files, new File (toClear, "my_complete_artifact-42.jar")) >= 0); 80 } 81 } | Popular Tags |