/// <summary> /// Verify RopGetStoreState Failure Response /// </summary> /// <param name="ropGetStoreStateResponse">The failure response of RopGetStoreState request</param> /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetStoreState request</param> private void VerifyRopGetStoreStateFailureResponse(RopGetStoreStateResponse ropGetStoreStateResponse, byte inputHandleIndex) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R243"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R243 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetStoreStateResponse.RopId.GetType(), 243, @"[In RopGetStoreState ROP Failure Response Buffer] RopId (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R245"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R245 Site.CaptureRequirementIfAreEqual<byte>( (byte)RopId.RopGetStoreState, ropGetStoreStateResponse.RopId, 245, @"[In RopGetStoreState ROP Failure Response Buffer] RopId (1 byte): For this operation[RopGetStoreState], this field[RopId (1 byte)] is set to 0x7B."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R246"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R246 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetStoreStateResponse.InputHandleIndex.GetType(), 246, @"[In RopGetStoreState ROP Failure Response Buffer] InputHandleIndex (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R247"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R247 Site.CaptureRequirementIfAreEqual<byte>( inputHandleIndex, ropGetStoreStateResponse.InputHandleIndex, 247, @"[In RopGetStoreState ROP Failure Response Buffer] InputHandleIndex (1 byte): This index MUST be set to the value specified in the InputHandleIndex field in the request."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R248"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R248 Site.CaptureRequirementIfAreEqual<Type>( typeof(uint), ropGetStoreStateResponse.ReturnValue.GetType(), 248, @"[In RopGetStoreState ROP Failure Response Buffer] ReturnValue (4 bytes): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R250"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R250 Site.CaptureRequirementIfAreNotEqual<uint>( SuccessReturnValue, ropGetStoreStateResponse.ReturnValue, 250, @"[In RopGetStoreState ROP Failure Response Buffer] ReturnValue (4 bytes): For this response[Failure Response], this field[ReturnValue (4 bytes)] is set to a value other than 0x00000000."); }
/// <summary> /// Verify RopGetStoreState Success Response /// </summary> /// <param name="ropGetStoreStateResponse">The success response of RopGetStoreState request</param> /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetStoreState request</param> private void VerifyRopGetStoreStateSuccessResponse(RopGetStoreStateResponse ropGetStoreStateResponse, byte inputHandleIndex) { // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R232"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R232 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetStoreStateResponse.RopId.GetType(), 232, @"[In RopGetStoreState ROP Success Response Buffer] RopId (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R234"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R234 Site.CaptureRequirementIfAreEqual<byte>( (byte)RopId.RopGetStoreState, ropGetStoreStateResponse.RopId, 234, @"[In RopGetStoreState ROP Success Response Buffer] RopId (1 byte): For this operation[RopGetStoreState], this field[RopId (1 byte)] is set to 0x7B."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R235"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R235 Site.CaptureRequirementIfAreEqual<Type>( typeof(byte), ropGetStoreStateResponse.InputHandleIndex.GetType(), 235, @"[In RopGetStoreState ROP Success Response Buffer] InputHandleIndex (1 byte): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R236"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R236 Site.CaptureRequirementIfAreEqual<byte>( inputHandleIndex, ropGetStoreStateResponse.InputHandleIndex, 236, @"[In RopGetStoreState ROP Success Response Buffer] InputHandleIndex (1 byte): This index MUST be set to the value specified in the InputHandleIndex field in the request. "); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R237"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R237 Site.CaptureRequirementIfAreEqual<Type>( typeof(uint), ropGetStoreStateResponse.ReturnValue.GetType(), 237, @"[In RopGetStoreState ROP Success Response Buffer] ReturnValue (4 bytes): An unsigned integer."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R239"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R239 Site.CaptureRequirementIfAreEqual<uint>( SuccessReturnValue, ropGetStoreStateResponse.ReturnValue, 239, @"[In RopGetStoreState ROP Success Response Buffer] ReturnValue (4 bytes): For this response[Success Response], this field is set to 0x00000000."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R240"); // Verify MS-OXCROPS requirement: MS-OXCROPS_R240 Site.CaptureRequirementIfAreEqual<int>( 4, Marshal.SizeOf(ropGetStoreStateResponse.StoreState.GetType()), 240, @"[In RopGetStoreState ROP Success Response Buffer] StoreState (4 bytes): A flags structure that contains flags that indicate the state of the mailbox for the logged on user."); // Add the debug information Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R241,StoreState:{0}", ropGetStoreStateResponse.StoreState); // Verify MS-OXCROPS requirement: MS-OXCROPS_R241 // The possible values' condition is in MS-OXCSTOR, verify StoreState is either 0x01000000 or 0x00000000. bool isVerifyR241 = (ropGetStoreStateResponse.StoreState == (uint)StoreState.StoreHasSearches) || (ropGetStoreStateResponse.StoreState == (uint)StoreState.None); Site.CaptureRequirementIfIsTrue( isVerifyR241, 241, @"[In RopGetStoreState ROP Success Response Buffer] StoreState (4 bytes): The possible values[0x01000000(STORE_HAS_SEARCHES), if the mailbox currently has any active search folders. Otherwise, 0x00000000.]are specified in [MS-OXCSTOR] section 2.2.1.5.2."); }