1 20 21 package org.apache.directory.ldapstudio.dsmlv2.compareRequest; 22 23 24 import org.apache.directory.ldapstudio.dsmlv2.AbstractTest; 25 import org.apache.directory.ldapstudio.dsmlv2.Dsmlv2Parser; 26 import org.apache.directory.shared.ldap.codec.Control; 27 import org.apache.directory.shared.ldap.codec.compare.CompareRequest; 28 import org.apache.directory.shared.ldap.util.StringTools; 29 30 31 37 public class CompareRequestTest extends AbstractTest 38 { 39 42 public void testRequestWithoutDn() 43 { 44 testParsingFail( CompareRequestTest.class, "request_without_dn_attribute.xml" ); 45 } 46 47 48 51 public void testRequestWithDn() 52 { 53 Dsmlv2Parser parser = null; 54 try 55 { 56 parser = new Dsmlv2Parser(); 57 58 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_dn_attribute.xml" ).getFile() ); 59 60 parser.parse(); 61 } 62 catch ( Exception e ) 63 { 64 fail( e.getMessage() ); 65 } 66 67 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 68 69 assertEquals( "cn=Bob Rush,ou=Dev,dc=Example,dc=COM", compareRequest.getEntry().toString() ); 70 } 71 72 73 76 public void testRequestWithRequestId() 77 { 78 Dsmlv2Parser parser = null; 79 try 80 { 81 parser = new Dsmlv2Parser(); 82 83 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_requestID_attribute.xml" ) 84 .getFile() ); 85 86 parser.parse(); 87 } 88 catch ( Exception e ) 89 { 90 fail( e.getMessage() ); 91 } 92 93 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 94 95 assertEquals( 456, compareRequest.getMessageId() ); 96 } 97 98 99 102 public void testRequestWithRequestIdEquals0() 103 { 104 testParsingFail( CompareRequestTest.class, "request_with_requestID_equals_0.xml" ); 105 } 106 107 108 111 public void testRequestWith1Control() 112 { 113 Dsmlv2Parser parser = null; 114 try 115 { 116 parser = new Dsmlv2Parser(); 117 118 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_1_control.xml" ).getFile() ); 119 120 parser.parse(); 121 } 122 catch ( Exception e ) 123 { 124 fail( e.getMessage() ); 125 } 126 127 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 128 129 assertEquals( 1, compareRequest.getControls().size() ); 130 131 Control control = compareRequest.getCurrentControl(); 132 133 assertTrue( control.getCriticality() ); 134 135 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 136 137 assertEquals( "Some text", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 138 } 139 140 141 144 public void testRequestWith1ControlBase64Value() 145 { 146 Dsmlv2Parser parser = null; 147 try 148 { 149 parser = new Dsmlv2Parser(); 150 151 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_1_control.xml" ).getFile() ); 152 153 parser.parse(); 154 } 155 catch ( Exception e ) 156 { 157 fail( e.getMessage() ); 158 } 159 160 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 161 162 assertEquals( 1, compareRequest.getControls().size() ); 163 164 Control control = compareRequest.getCurrentControl(); 165 166 assertTrue( control.getCriticality() ); 167 168 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 169 170 assertEquals( "Some text", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 171 } 172 173 174 177 public void testRequestWith1ControlEmptyValue() 178 { 179 Dsmlv2Parser parser = null; 180 try 181 { 182 parser = new Dsmlv2Parser(); 183 184 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_1_control_empty_value.xml" ) 185 .getFile() ); 186 187 parser.parse(); 188 } 189 catch ( Exception e ) 190 { 191 fail( e.getMessage() ); 192 } 193 194 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 195 196 assertEquals( 1, compareRequest.getControls().size() ); 197 198 Control control = compareRequest.getCurrentControl(); 199 200 assertTrue( control.getCriticality() ); 201 202 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 203 204 assertEquals( StringTools.EMPTY_BYTES, control.getControlValue() ); 205 } 206 207 208 211 public void testRequestWith2Controls() 212 { 213 Dsmlv2Parser parser = null; 214 try 215 { 216 parser = new Dsmlv2Parser(); 217 218 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_2_controls.xml" ).getFile() ); 219 220 parser.parse(); 221 } 222 catch ( Exception e ) 223 { 224 fail( e.getMessage() ); 225 } 226 227 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 228 229 assertEquals( 2, compareRequest.getControls().size() ); 230 231 Control control = compareRequest.getCurrentControl(); 232 233 assertFalse( control.getCriticality() ); 234 235 assertEquals( "1.2.840.113556.1.4.789", control.getControlType() ); 236 237 assertEquals( "Some other text", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 238 } 239 240 241 244 public void testRequestWith3ControlsWithoutValue() 245 { 246 Dsmlv2Parser parser = null; 247 try 248 { 249 parser = new Dsmlv2Parser(); 250 251 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_3_controls_without_value.xml" ) 252 .getFile() ); 253 254 parser.parse(); 255 } 256 catch ( Exception e ) 257 { 258 fail( e.getMessage() ); 259 } 260 261 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 262 263 assertEquals( 3, compareRequest.getControls().size() ); 264 265 Control control = compareRequest.getCurrentControl(); 266 267 assertTrue( control.getCriticality() ); 268 269 assertEquals( "1.2.840.113556.1.4.456", control.getControlType() ); 270 271 assertEquals( StringTools.EMPTY_BYTES, control.getControlValue() ); 272 } 273 274 275 278 public void testRequestWith1CompleteAssertion() 279 { 280 Dsmlv2Parser parser = null; 281 try 282 { 283 parser = new Dsmlv2Parser(); 284 285 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_1_complete_assertion.xml" ) 286 .getFile() ); 287 288 parser.parse(); 289 } 290 catch ( Exception e ) 291 { 292 fail( e.getMessage() ); 293 } 294 295 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 296 297 assertEquals( "cn=Bob Rush,ou=Dev,dc=Example,dc=COM", ( String ) compareRequest.getEntry().toString() ); 298 299 assertEquals( "sn", ( String ) compareRequest.getAttributeDesc() ); 300 301 assertEquals( "Johnson", ( String ) compareRequest.getAssertionValue() ); 302 } 303 304 305 308 public void testRequestWith1CompleteAssertionBase64Value() 309 { 310 Dsmlv2Parser parser = null; 311 try 312 { 313 parser = new Dsmlv2Parser(); 314 315 parser.setInputFile( CompareRequestTest.class.getResource( 316 "request_with_1_complete_assertion_base64_value.xml" ).getFile() ); 317 318 parser.parse(); 319 } 320 catch ( Exception e ) 321 { 322 fail( e.getMessage() ); 323 } 324 325 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 326 327 assertEquals( "cn=Bob Rush,ou=Dev,dc=Example,dc=COM", ( String ) compareRequest.getEntry().toString() ); 328 329 assertEquals( "sn", ( String ) compareRequest.getAttributeDesc() ); 330 331 assertEquals( "DSMLv2.0 rocks!!", new String ( ( byte[] ) compareRequest.getAssertionValue() ) ); 332 } 333 334 335 338 public void testRequestWith1AssertionEmptyValue() 339 { 340 Dsmlv2Parser parser = null; 341 try 342 { 343 parser = new Dsmlv2Parser(); 344 345 parser.setInputFile( CompareRequestTest.class.getResource( "request_with_1_assertion_empty_value.xml" ) 346 .getFile() ); 347 348 parser.parse(); 349 } 350 catch ( Exception e ) 351 { 352 fail( e.getMessage() ); 353 } 354 355 CompareRequest compareRequest = ( CompareRequest ) parser.getBatchRequest().getCurrentRequest(); 356 357 assertEquals( "cn=Bob Rush,ou=Dev,dc=Example,dc=COM", ( String ) compareRequest.getEntry().toString() ); 358 359 assertEquals( "sn", ( String ) compareRequest.getAttributeDesc() ); 360 361 assertNull( compareRequest.getAssertionValue() ); 362 } 363 364 365 368 public void testRequestWithoutAssertion() 369 { 370 testParsingFail( CompareRequestTest.class, "request_without_assertion.xml" ); 371 } 372 373 374 377 public void testRequestWith2CompleteAssertions() 378 { 379 testParsingFail( CompareRequestTest.class, "request_with_2_complete_assertions.xml" ); 380 } 381 382 383 386 public void testRequestWith1AssertionWithoutNameAttribute() 387 { 388 testParsingFail( CompareRequestTest.class, "request_with_1_assertion_without_name_attribute.xml" ); 389 } 390 391 392 395 public void testRequestWith1AssertionWithoutValue() 396 { 397 testParsingFail( CompareRequestTest.class, "request_with_1_assertion_without_value.xml" ); 398 } 399 400 401 404 public void testRequestWith1AssertionWith2Value() 405 { 406 testParsingFail( CompareRequestTest.class, "request_with_1_assertion_with_2_values.xml" ); 407 } 408 409 410 415 public void testRequestWithNeededRequestId() 416 { 417 testParsingFail( CompareRequestTest.class, "request_with_needed_requestID.xml" ); 418 } 419 } 420 | Popular Tags |