1 28 29 package com.idaremedia.antx.valueuri.tests; 30 31 import java.util.List ; 32 33 import junit.framework.TestSuite; 34 35 import com.idaremedia.antx.AntXFixture; 36 import com.idaremedia.antx.ValueURIHandler; 37 import com.idaremedia.antx.helpers.InnerString; 38 import com.idaremedia.antx.solo.StringList; 39 import com.idaremedia.antx.valueuri.info.ListFriendlyValueURIHandler; 40 41 50 51 public final class ListFriendlyValueURIHandlerTest extends ValueURIHandlerTestSkeleton 52 { 53 57 public ListFriendlyValueURIHandlerTest(String methodname) 58 { 59 super("ListFriendlyValueURIHandler::",methodname); 60 } 61 62 63 66 public static TestSuite suite() 67 { 68 return new TestSuite(ListFriendlyValueURIHandlerTest.class); 69 } 70 71 75 protected String xmlTestFile() 76 { 77 return "listfriendly.xml"; 78 } 79 80 protected ValueURIHandler newOUT() 81 { 82 return new ListFriendlyValueURIHandler(); 83 } 84 85 protected void setUp() throws Exception 86 { 87 super.setUp(); 88 StringList sl = new StringList(); 89 sl.setId("abBCd"); 90 sl.addConfiguredString(new InnerString("a")); 91 sl.addConfiguredString(new InnerString("bB")); 92 sl.addConfiguredString(new InnerString("C")); 93 sl.addConfiguredString(new InnerString("d")); 94 getProject().addReference(sl.getId(),sl); 95 getProject().addReference("1,2,3","ERROR"); 96 } 97 98 102 106 public void testBaseline_AntX05() 107 { 108 checkBaseline(); 109 110 assertNotNil(getProject().getReference("abBCd"),"abBCd reference"); 111 ValueURIHandler out = newOUT(); 112 String result = out.valueFrom("a,b,c","$list:a,b,c",m_rqlink); 113 assertEqual(result,"a,b,c","$list:a,b,c"); 114 result = out.valueFrom("abBCd","$list:abBCd",m_rqlink); 115 assertEqual(result,"a,bB,C,d","$list:abBCd"); 116 } 117 118 119 123 public void testBlank_AntX05() 124 { 125 ValueURIHandler out = newOUT(); 126 String result; 127 result = out.valueFrom("","$list:",m_rqlink); 128 assertEqual(result,"","$list:"); 129 result = out.valueFrom("?size","$list:?size",m_rqlink); 130 assertEqual(result,"0","$list:?size"); 131 result = out.valueFrom(" ?size","$list: ?size",m_rqlink); 132 assertEqual(result,"0","$list: ?size"); 133 result = out.valueFrom("[]","$list:[]",m_rqlink); 134 assertEqual(result,"","$list:[]"); 135 assertEqual("",out.valueFrom("?values","$list:?values",m_rqlink),"$list:?values"); 136 assertEqual("[]",out.valueFrom("?dump","$list:?dump",m_rqlink),"$list:?dump"); 137 result = out.valueFrom("?1","$list:?1",m_rqlink); 138 assertNil(result,"$list:?1"); 139 result = out.valueFrom("?ickyblorf","$list:?ickyblorf",m_rqlink); 140 assertNil(result,"$list:?ickyblorf"); 141 } 142 143 144 148 public void testCustomDelim_AntX05() 149 { 150 ValueURIHandler out = newOUT(); 151 String result; 152 result = out.valueFrom("abBCd?values,,;","$list:abBCd?values,,;",m_rqlink); 153 assertEqual(result,"a;bB;C;d","$list:abBCd?values,,;"); 154 result = out.valueFrom("x,y,z?values,,-","$list:x,y,z?values,,-",m_rqlink); 155 assertEqual(result,"x-y-z","$list:x,y,z?values,,-"); 156 result = out.valueFrom("x,y,z?values,, ","$list:x,y,z?values,, ",m_rqlink); 157 assertEqual(result,"x y z","$list:x,y,z?values,, "); 158 result = out.valueFrom("[1,2,3]?,,|","$list:[1,2,3]?,,|",m_rqlink); 159 assertEqual(result,"1|2|3","$list:[1,2,3]?,,|"); 160 } 161 162 163 168 public void testSquareBracketsOverrideRefId_AntX05() 169 { 170 ValueURIHandler out = newOUT(); 171 String result; 172 result = out.valueFrom("1,2,3","$list:1,2,3",m_rqlink); 173 assertNil(result,"$list:1,2,3"); 174 result = out.valueFrom("[1,2,3]","$list:[1,2,3]",m_rqlink); 175 assertEqual(result,"1,2,3","$list:[1,2,3]"); 176 } 177 178 179 180 185 public void testWorksForPlainListTypesToo_AntX05() 186 { 187 List l = AntXFixture.newList(); 188 l.add("larry"); 189 l.add("curly"); 190 l.add("moe"); 191 getProject().addReference("3stooges",l); 192 193 ValueURIHandler out = newOUT(); 194 String result; 195 result = out.valueFrom("3stooges","$list:3stooges",m_rqlink); 196 assertEqual(result,"larry,curly,moe","$list:3stooges"); 197 result = out.valueFrom("3stooges?values,,!","$list:3stooges?values,,!",m_rqlink); 198 assertEqual(result,"larry!curly!moe","$list:3stooges?values,,!"); 199 result = out.valueFrom("3stooges?2","$list:3stooges?2",m_rqlink); 200 assertEqual(result,"moe","$list:3stooges?2"); 201 result = out.valueFrom("3stooges?3","$list:3stooges?3",m_rqlink); 202 assertNil(result,"$list:3stooges?3"); 203 } 204 205 206 207 211 public void testListFriendlyHandlerScript_AntX05() 212 { 213 runTarget("testListFriendlyHandlerScript_AntX05"); 214 } 215 } 216 217 | Popular Tags |