1 20 21 package org.apache.directory.ldapstudio.dsmlv2.abandonRequest; 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.abandon.AbandonRequest; 28 import org.apache.directory.shared.ldap.util.StringTools; 29 30 31 37 public class AbandonRequestTest extends AbstractTest 38 { 39 42 public void testRequestWithoutAbandonId() 43 { 44 testParsingFail( AbandonRequestTest.class, "request_without_abandonID_attribute.xml" ); 45 } 46 47 48 51 public void testRequestWithAbandonId() 52 { 53 Dsmlv2Parser parser = null; 54 try 55 { 56 parser = new Dsmlv2Parser(); 57 58 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_abandonID_attribute.xml" ) 59 .getFile() ); 60 61 parser.parse(); 62 } 63 catch ( Exception e ) 64 { 65 fail( e.getMessage() ); 66 } 67 68 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 69 70 assertEquals( 123, abandonRequest.getAbandonedMessageId() ); 71 } 72 73 74 77 public void testRequestWithRequestIdEquals0() 78 { 79 testParsingFail( AbandonRequestTest.class, "request_with_requestID_equals_0.xml" ); 80 } 81 82 85 public void testRequestWithRequestId() 86 { 87 Dsmlv2Parser parser = null; 88 try 89 { 90 parser = new Dsmlv2Parser(); 91 92 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_requestID_attribute.xml" ) 93 .getFile() ); 94 95 parser.parse(); 96 } 97 catch ( Exception e ) 98 { 99 fail( e.getMessage() ); 100 } 101 102 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 103 104 assertEquals( 456, abandonRequest.getMessageId() ); 105 } 106 107 108 111 public void testRequestWith1Control() 112 { 113 Dsmlv2Parser parser = null; 114 115 try 116 { 117 parser = new Dsmlv2Parser(); 118 119 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_1_control.xml" ).getFile() ); 120 121 parser.parse(); 122 } 123 catch ( Exception e ) 124 { 125 fail( e.getMessage() ); 126 } 127 128 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 129 Control control = abandonRequest.getCurrentControl(); 130 131 assertEquals( 1, abandonRequest.getControls().size() ); 132 assertTrue( control.getCriticality() ); 133 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 134 assertEquals( "Some text", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 135 } 136 137 140 public void testRequestWith1ControlBase64Value() 141 { 142 Dsmlv2Parser parser = null; 143 144 try 145 { 146 parser = new Dsmlv2Parser(); 147 148 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_1_control_base64_value.xml" ).getFile() ); 149 150 parser.parse(); 151 } 152 catch ( Exception e ) 153 { 154 fail( e.getMessage() ); 155 } 156 157 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 158 Control control = abandonRequest.getCurrentControl(); 159 160 assertEquals( 1, abandonRequest.getControls().size() ); 161 assertTrue( control.getCriticality() ); 162 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 163 assertEquals( "DSMLv2.0 rocks!!", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 164 } 165 166 167 170 public void testRequestWith1ControlEmptyValue() 171 { 172 Dsmlv2Parser parser = null; 173 174 try 175 { 176 parser = new Dsmlv2Parser(); 177 178 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_1_control_empty_value.xml" ) 179 .getFile() ); 180 181 parser.parse(); 182 } 183 catch ( Exception e ) 184 { 185 fail( e.getMessage() ); 186 } 187 188 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 189 Control control = abandonRequest.getCurrentControl(); 190 191 assertEquals( 1, abandonRequest.getControls().size() ); 192 assertTrue( control.getCriticality() ); 193 assertEquals( "1.2.840.113556.1.4.643", control.getControlType() ); 194 assertEquals( StringTools.EMPTY_BYTES, control.getControlValue() ); 195 } 196 197 198 201 public void testRequestWith2Controls() 202 { 203 Dsmlv2Parser parser = null; 204 205 try 206 { 207 parser = new Dsmlv2Parser(); 208 209 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_2_controls.xml" ).getFile() ); 210 211 parser.parse(); 212 } 213 catch ( Exception e ) 214 { 215 fail( e.getMessage() ); 216 } 217 218 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 219 Control control = abandonRequest.getCurrentControl(); 220 221 assertEquals( 2, abandonRequest.getControls().size() ); 222 assertFalse( control.getCriticality() ); 223 assertEquals( "1.2.840.113556.1.4.789", control.getControlType() ); 224 assertEquals( "Some other text", StringTools.utf8ToString( ( byte[] ) control.getControlValue() ) ); 225 } 226 227 228 231 public void testRequestWith3ControlsWithoutValue() 232 { 233 Dsmlv2Parser parser = null; 234 235 try 236 { 237 parser = new Dsmlv2Parser(); 238 239 parser.setInputFile( AbandonRequestTest.class.getResource( "request_with_3_controls_without_value.xml" ) 240 .getFile() ); 241 242 parser.parse(); 243 } 244 catch ( Exception e ) 245 { 246 fail( e.getMessage() ); 247 } 248 249 AbandonRequest abandonRequest = ( AbandonRequest ) parser.getBatchRequest().getCurrentRequest(); 250 Control control = abandonRequest.getCurrentControl(); 251 252 assertEquals( 3, abandonRequest.getControls().size() ); 253 assertTrue( control.getCriticality() ); 254 assertEquals( "1.2.840.113556.1.4.456", control.getControlType() ); 255 assertEquals( StringTools.EMPTY_BYTES, control.getControlValue() ); 256 } 257 258 259 264 public void testRequestWithNeededRequestId() 265 { 266 testParsingFail( AbandonRequestTest.class, "request_with_needed_requestID.xml" ); 267 } 268 } 269 | Popular Tags |