1 package org.mmbase.storage.search.implementation; 2 3 import junit.framework.*; 4 import java.util.*; 5 import org.mmbase.module.core.*; 6 import org.mmbase.module.core.MMObjectBuilder; 7 8 14 public class BasicStepTest extends TestCase { 15 16 private final static String TEST_ALIAS = "abcd"; 17 18 private final static String BUILDER_NAME = "images"; 19 20 21 private BasicStep instance; 22 23 24 private MMBase mmbase = null; 25 26 27 private MMObjectBuilder builder = null; 28 29 public BasicStepTest(java.lang.String testName) { 30 super(testName); 31 } 32 33 public static void main(java.lang.String [] args) { 34 junit.textui.TestRunner.run(suite()); 35 System.exit(0); 36 } 37 38 41 public void setUp() throws Exception { 42 MMBaseContext.init(); 43 mmbase = MMBase.getMMBase(); 44 builder = mmbase.getBuilder(BUILDER_NAME); 45 instance = new BasicStep(builder); 46 } 47 48 51 public void tearDown() throws Exception {} 52 53 54 public void testGetTableName() { 55 String tableName = instance.getTableName(); 56 assertTrue(tableName != null); 57 assertTrue(tableName.equals(BUILDER_NAME)); 58 } 59 60 61 public void testSetAlias() { 62 assertTrue(instance.getAlias() == null); 64 65 BasicStep result = instance.setAlias(TEST_ALIAS); 66 String alias = instance.getAlias(); 67 assertTrue(alias != null); 68 assertTrue(alias.equals(TEST_ALIAS)); 69 assertTrue(result == instance); 70 71 instance.setAlias(null); 73 assertTrue(instance.getAlias() == null); 74 75 try { 77 instance.setAlias(" "); 78 fail("Null value, should throw IllegalArgumentException."); 79 } catch (IllegalArgumentException e) {} 80 } 81 82 83 public void testGetAlias() { 84 testSetAlias(); 86 } 87 88 89 public void testAddNode() { 90 try { 92 instance.addNode(-1); 93 fail("Negative node, should throw IllegalArgumentException"); 94 } catch (IllegalArgumentException e) {} 95 96 SortedSet nodes = instance.getNodes(); 97 assertTrue(nodes.size() == 0); 98 int nodeNumber0 = 23456; 99 instance.addNode(nodeNumber0); 100 nodes = instance.getNodes(); 101 assertTrue(nodes.size() == 1); 102 Iterator iNodes = nodes.iterator(); 103 assertTrue(iNodes.hasNext()); 104 assertTrue(iNodes.next().equals(new Integer (nodeNumber0))); 105 assertTrue(!iNodes.hasNext()); 106 int nodeNumber1 = 2345; 107 BasicStep result = instance.addNode(nodeNumber1); 108 nodes = instance.getNodes(); 109 assertTrue(nodes.size() == 2); 110 iNodes = nodes.iterator(); 111 assertTrue(iNodes.hasNext()); 112 assertTrue(iNodes.next().equals(new Integer (nodeNumber1))); 113 assertTrue(iNodes.hasNext()); 114 assertTrue(iNodes.next().equals(new Integer (nodeNumber0))); 115 assertTrue(!iNodes.hasNext()); 116 assertTrue(result == instance); 117 } 118 119 120 public void testGetNodes() { 121 testAddNode(); 123 124 SortedSet nodes = instance.getNodes(); 125 Object item = nodes.first(); 126 127 try { 129 nodes.add(item); 130 fail("Attempt to modify list, must throw UnsupportedOperationException"); 131 } catch (UnsupportedOperationException e) {} 132 try { 133 nodes.clear(); 134 fail("Attempt to modify list, must throw UnsupportedOperationException"); 135 } catch (UnsupportedOperationException e) {} 136 } 137 138 139 public void testEquals() { 140 } 142 143 144 public void testHashCode() { 145 } 147 148 149 public void testToString() { 150 assertTrue(instance.toString(), 152 instance.toString().equals("Step(tablename:" + instance.getTableName() 153 + ", alias:" + instance.getAlias() + ", nodes:" 154 + instance.getNodes() + ")")); 155 156 instance.setAlias(TEST_ALIAS); 158 assertTrue(instance.toString(), 159 instance.toString().equals("Step(tablename:" + instance.getTableName() 160 + ", alias:" + instance.getAlias() + ", nodes:" 161 + instance.getNodes() + ")")); 162 163 instance.addNode(123) 165 .addNode(3456); 166 assertTrue(instance.toString(), 167 instance.toString().equals("Step(tablename:" + instance.getTableName() 168 + ", alias:" + instance.getAlias() + ", nodes:" 169 + instance.getNodes() + ")")); 170 } 171 172 173 public void testGetBuilder() { 174 assertTrue(instance.getBuilder() == builder); 175 } 176 177 public static Test suite() { 178 TestSuite suite = new TestSuite(BasicStepTest.class); 179 180 return suite; 181 } 182 183 } 184 | Popular Tags |