/// <summary>
        /// Verify RopGetTransportFolder Failure Response
        /// </summary>
        /// <param name="ropGetTransportFolderResponse">The response of RopGetTransportFolder request</param>
        /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetTransportFolder request</param>
        private void VerifyRopGetTransportFolderFailureResponse(RopGetTransportFolderResponse ropGetTransportFolderResponse, byte inputHandleIndex)
        {
            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2539");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2539
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(byte),
                ropGetTransportFolderResponse.RopId.GetType(),
                2539,
                @"[In RopGetTransportFolder ROP Failure Response Buffer]RopId (1 byte): An unsigned integer.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2541");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2541
            Site.CaptureRequirementIfAreEqual<byte>(
                (byte)RopId.RopGetTransportFolder,
                ropGetTransportFolderResponse.RopId,
                2541,
                @"[In RopGetTransportFolder ROP Failure Response Buffer,RopId (1 byte)]For this operation[RopGetTransportFolder], this field is set to 0x6D.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2542");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2542
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(byte),
                ropGetTransportFolderResponse.InputHandleIndex.GetType(),
                2542,
                @"[In RopGetTransportFolder ROP Failure Response Buffer]InputHandleIndex (1 byte): An unsigned integer.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2543");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2543
            Site.CaptureRequirementIfAreEqual<byte>(
                inputHandleIndex,
                ropGetTransportFolderResponse.InputHandleIndex,
                2543,
                @"[In RopGetTransportFolder ROP Failure Response Buffer,InputHandleIndex (1 byte)]This field MUST be set to the InputHandleIndex specified in the request.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2545");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2545
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(uint),
                ropGetTransportFolderResponse.ReturnValue.GetType(),
                2545,
                @"[In RopGetTransportFolder ROP Failure Response Buffer]ReturnValue (4 bytes): An unsigned integer.");

            // Refer to MS-OXCROPS: For some ROPs, Exchange 2003 and Exchange 2007 use different methods to resolve 
            // the Server object and, therefore, do not fail the ROP if the index is invalid.
            if (Common.IsRequirementEnabled(4713, this.Site))
            {
                // Add the debug information
                Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R4713");

                // Verify MS-OXCROPS requirement: MS-OXCROPS_R4713
                Site.CaptureRequirementIfAreEqual<uint>(
                    SuccessReturnValue,
                    ropGetTransportFolderResponse.ReturnValue,
                    4713,
                    @"[In Appendix B: Product Behavior] For some ROPs, Implementation does use different methods to resolve the Server object and, therefore, do not fail the ROP if the index is invalid. (<23> Section 3.2.5.1: For some ROPs, Exchange 2007 use different methods to resolve the Server object and, therefore, do not fail the ROP if the index is invalid.)");
            }
            else
            {
                // Add the debug information
                Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2547");

                // Verify MS-OXCROPS requirement: MS-OXCROPS_R2547
                Site.CaptureRequirementIfAreNotEqual<uint>(
                    SuccessReturnValue,
                    ropGetTransportFolderResponse.ReturnValue,
                    2547,
                    @"[In RopGetTransportFolder ROP Failure Response Buffer,ReturnValue (4 bytes)]For this response[Failure Response ], this field is set to a value other than 0x00000000.");
            }
        }
        /// <summary>
        /// Verify RopGetTransportFolder Success Response
        /// </summary>
        /// <param name="ropGetTransportFolderResponse">The response of RopGetTransportFolder request</param>
        /// <param name="inputHandleIndex">The field of InputHandleIndex in RopGetTransportFolder request</param>
        private void VerifyRopGetTransportFolderSuccessResponse(RopGetTransportFolderResponse ropGetTransportFolderResponse, byte inputHandleIndex)
        {
            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2529");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2529
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(byte),
                ropGetTransportFolderResponse.RopId.GetType(),
                2529,
                @"[In RopGetTransportFolder ROP Success Response Buffer]RopId (1 byte): An unsigned integer.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2531");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2531
            Site.CaptureRequirementIfAreEqual<byte>(
                (byte)RopId.RopGetTransportFolder,
                ropGetTransportFolderResponse.RopId,
                2531,
                @"[In RopGetTransportFolder ROP Success Response Buffer,RopId (1 byte)]For this operation[RopGetTransportFolder], this field is set to 0x6D.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2532");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2532
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(byte),
                ropGetTransportFolderResponse.InputHandleIndex.GetType(),
                2532,
                @"[In RopGetTransportFolder ROP Success Response Buffer]InputHandleIndex (1 byte): An unsigned integer.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2533");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2533
            Site.CaptureRequirementIfAreEqual<byte>(
                inputHandleIndex,
                ropGetTransportFolderResponse.InputHandleIndex,
                2533,
                @"[In RopGetTransportFolder ROP Success Response Buffer,InputHandleIndex (1 byte)]This field MUST be set to the InputHandleIndex specified in the request.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2535");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2535
            Site.CaptureRequirementIfAreEqual<Type>(
                typeof(uint),
                ropGetTransportFolderResponse.ReturnValue.GetType(),
                2535,
                @"[In RopGetTransportFolder ROP Success Response Buffer]ReturnValue (4 bytes): An unsigned integer.");

            // Add the debug information
            Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCROPS_R2537");

            // Verify MS-OXCROPS requirement: MS-OXCROPS_R2537
            Site.CaptureRequirementIfAreEqual<int>(
                8,
                Marshal.SizeOf(ropGetTransportFolderResponse.FolderId),
                2537,
                @"[In RopGetTransportFolder ROP Success Response Buffer]FolderId (8 bytes): 64-bit identifier.");
        }