1 18 package org.drftpd.slaveselection.filter; 19 20 import java.util.Arrays ; 21 import java.util.Collection ; 22 import java.util.Collections ; 23 import java.util.Properties ; 24 25 import junit.framework.TestCase; 26 import junit.framework.TestSuite; 27 import net.sf.drftpd.Bytes; 28 import net.sf.drftpd.NoAvailableSlaveException; 29 import net.sf.drftpd.ObjectNotFoundException; 30 import net.sf.drftpd.master.RemoteSlave; 31 import net.sf.drftpd.slave.SlaveStatus; 32 import net.sf.drftpd.slave.Transfer; 33 34 38 public class MinfreespaceFilterTest extends TestCase { 39 public static class RemoteSlaveTesting extends RemoteSlave { 40 private SlaveStatus _status; 41 42 public RemoteSlaveTesting(String name, Collection masks, SlaveStatus status) { 43 super(name, masks); 44 _status = status; 45 } 46 47 public SlaveStatus getStatus() { 48 return _status; 49 } 50 } 51 52 public MinfreespaceFilterTest(String fName) { 53 super(fName); 54 } 55 56 public static TestSuite suite() { 57 return new TestSuite(MinfreespaceFilterTest.class); 58 } 59 60 public void testSimple() throws ObjectNotFoundException, NoAvailableSlaveException { 61 Properties p = new Properties (); 62 p.put("1.multiplier", "1"); 63 p.put("1.minfreespace", "100MB"); 64 65 SlaveStatus s = new SlaveStatus(Bytes.parseBytes("50MB"), Bytes.parseBytes("100GB"), 0, 0, 0, 0, 0,0); 66 RemoteSlave rslaves[] = 67 { new RemoteSlaveTesting("slave1", Collections.EMPTY_LIST, s)}; 68 ScoreChart sc = new ScoreChart(Arrays.asList(rslaves)); 69 70 71 Filter f = new MinfreespaceFilter(null, 1, p); 72 f.process(sc, null, null, Transfer.TRANSFER_SENDING_DOWNLOAD, null); 73 74 assertEquals(Bytes.parseBytes("-50MB"), sc.getSlaveScore(rslaves[0]).getScore()); 75 } 76 } 77 | Popular Tags |