Microsoft.Protocols.TestSuites.MS_OXCMAPIHTTP.MS_OXCMAPIHTTPAdapter.VerifyResolveNamesResponseBody C# (CSharp) Method

VerifyResolveNamesResponseBody() private method

Verify the requirements related to ResolveNames request type response body.
private VerifyResolveNamesResponseBody ( ResolveNamesResponseBody resolveNamesResponseBody ) : void
resolveNamesResponseBody ResolveNamesResponseBody The response body of ResolveNames request type.
return void
        private void VerifyResolveNamesResponseBody(ResolveNamesResponseBody resolveNamesResponseBody)
        {
            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R934");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R934
            this.Site.CaptureRequirementIfIsInstanceOfType(
                resolveNamesResponseBody.StatusCode,
                typeof(uint),
                934,
                @"[In ResolveNames Request Type Success Response Body] StatusCode (4 bytes): An unsigned integer that specifies the status of the request.");

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R935");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R935
            this.Site.CaptureRequirementIfAreEqual<uint>(
                0,
                resolveNamesResponseBody.StatusCode,
                935,
                @"[In ResolveNames Request Type Success Response Body] [StatusCode] This field MUST be set to 0x00000000.");

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R936");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R936
            this.Site.CaptureRequirementIfIsInstanceOfType(
                resolveNamesResponseBody.ErrorCode,
                typeof(uint),
                936,
                @"[In ResolveNames Request Type Success Response Body] ErrorCode (4 bytes): An unsigned integer that specifies the return status of the operation.");

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R937");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R937
            this.Site.CaptureRequirementIfIsInstanceOfType(
                resolveNamesResponseBody.CodePage,
                typeof(uint),
                937,
                @"[In ResolveNames Request Type Success Response Body] CodePage (4 bytes): An unsigned integer that specifies the code page the server used to express string values of properties.");

            if (resolveNamesResponseBody.HasMinimalIds)
            {
                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R938");

                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R938
                this.Site.CaptureRequirementIfIsInstanceOfType(
                    resolveNamesResponseBody.HasMinimalIds,
                    typeof(bool),
                    938,
                    @"[In ResolveNames Request Type Success Response Body] HasMinimalIds (1 byte): A Boolean value that specifies whether the MinimalIdCount and MinimalIds fields are present.");

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

                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R939
                this.Site.CaptureRequirementIfIsInstanceOfType(
                    resolveNamesResponseBody.MinimalIdCount,
                    typeof(uint),
                    939,
                    @"[In ResolveNames Request Type Success Response Body] MinimalIdCount (optional) (4 bytes): An unsigned integer that specifies the number of structures in the MinimalIds field.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R940");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R940
                this.Site.CaptureRequirementIfIsNotNull(
                    resolveNamesResponseBody.MinimalIdCount,
                    940,
                    @"[In ResolveNames Request Type Success Response Body] [MinimalIdCount] This field is present when the value of the HasMinimalIds field is nonzero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R943");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R943
                this.Site.CaptureRequirementIfIsNotNull(
                    resolveNamesResponseBody.MinimalIds,
                    943,
                    @"[In ResolveNames Request Type Success Response Body] [MinimalIds] This field is present when the value of the HasMinimalIds field is nonzero.");
            }
            else
            {
                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R941");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R941
                this.Site.CaptureRequirementIfIsNull(
                    resolveNamesResponseBody.MinimalIdCount,
                    941,
                    @"[In ResolveNames Request Type Success Response Body] [MinimalIdCount] This field is not present when the value of the HasMinimalIds field is zero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R944");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R944
                this.Site.CaptureRequirementIfIsNull(
                    resolveNamesResponseBody.MinimalIds,
                    944,
                    @"[In ResolveNames Request Type Success Response Body] [MinimalIds] This field is not present when the value of the HasMinimalIds field is zero.");
            }

            if (resolveNamesResponseBody.HasRowsAndPropertyTags)
            {
                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R945");

                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R945
                this.Site.CaptureRequirementIfIsInstanceOfType(
                    resolveNamesResponseBody.HasRowsAndPropertyTags,
                    typeof(bool),
                    945,
                    @"[In ResolveNames Request Type Success Response Body] HasRowsAndCols (1 byte): A Boolean value that specifies whether the PropertyTags, RowCount, and RowData fields are present.");

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

                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R949
                this.Site.CaptureRequirementIfIsInstanceOfType(
                    resolveNamesResponseBody.RowCount,
                    typeof(uint),
                    949,
                    @"[In ResolveNames Request Type Success Response Body] RowCount (4 bytes): An unsigned integer that specifies the number of structures in the RowData field.");

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

                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R952
                this.Site.CaptureRequirementIfIsInstanceOfType(
                    resolveNamesResponseBody.RowData,
                    typeof(AddressBookPropertyRow[]),
                    952,
                    @"[In ResolveNames Request Type Success Response Body] RowData (optional) (variable): An array of AddressBookPropertyRow structures (section 2.2.1.2), each of which specifies the row data requested.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R947");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R947
                this.Site.CaptureRequirementIfIsNotNull(
                    resolveNamesResponseBody.PropertyTags,
                    947,
                    @"[In ResolveNames Request Type Success Response Body] [PropertyTags] This field is present when the value of the HasRowsAndColumns field is nonzero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R950");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R950
                this.Site.CaptureRequirementIfIsNotNull(
                    resolveNamesResponseBody.RowCount,
                    950,
                    @"[In ResolveNames Request Type Success Response Body] [RowCount] This field is present when the value of the HasRowsAndCols field is nonzero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R953");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R953
                this.Site.CaptureRequirementIfIsNotNull(
                    resolveNamesResponseBody.RowData,
                    953,
                    @"[In ResolveNames Request Type Success Response Body] [RowData] This field is present when the value of the HasRowsAndCols field is nonzero.");
            }
            else
            {
                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R948");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R948
                this.Site.CaptureRequirementIfIsNull(
                    resolveNamesResponseBody.PropertyTags,
                    948,
                    @"[In ResolveNames Request Type Success Response Body] [PropertyTags] This field is not present when the value of the HasRowsAndColumns field is zero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R951");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R951
                this.Site.CaptureRequirementIfIsNull(
                    resolveNamesResponseBody.RowCount,
                    951,
                    @"[In ResolveNames Request Type Success Response Body] [RowCount] This field is not present when the value of the HasRowsAndCols field is zero.");

                // Add the debug information
                this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R954");
        
                // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R954
                this.Site.CaptureRequirementIfIsNull(
                    resolveNamesResponseBody.RowData,
                    954,
                    @"[In ResolveNames Request Type Success Response Body] [RowData] This field is not present when the value of the HasRowsAndCols field is zero.");
            }

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R955");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R955
            this.Site.CaptureRequirementIfIsInstanceOfType(
                resolveNamesResponseBody.AuxiliaryBufferSize,
                typeof(uint),
                955,
                @"[In ResolveNames Request Type Success Response Body] AuxiliaryBufferSize (4 bytes): An unsigned integer that specifies the size, in bytes, of the AuxiliaryBuffer field.");

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R956");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R956
            this.Site.CaptureRequirementIfIsInstanceOfType(
                resolveNamesResponseBody.AuxiliaryBuffer,
                typeof(byte[]),
                956,
                @"[In ResolveNames Request Type Success Response Body] AuxiliaryBuffer (variable): An array of bytes that constitute the auxiliary payload data returned from the server.");

            // Add the debug information
            this.Site.Log.Add(LogEntryKind.Debug, "Verify MS-OXCMAPIHTTP_R957");
        
            // Verify MS-OXCMAPIHTTP requirement: MS-OXCMAPIHTTP_R957
            this.Site.CaptureRequirementIfAreEqual<uint>(
                resolveNamesResponseBody.AuxiliaryBufferSize,
                (uint)resolveNamesResponseBody.AuxiliaryBuffer.Length,
                957,
                @"[In ResolveNames Request Type Success Response Body] [AuxiliaryBuffer] The size of this field, in bytes, is specified by the AuxiliaryBufferSize field.");
        }
        #endregion
MS_OXCMAPIHTTPAdapter