Microsoft.Protocols.TestSuites.MS_WEBSS.S07_OperationsOnColumns.MSWEBSS_S07_TC03_UpdateColumns_AllFieldsValid C# (CSharp) Method

MSWEBSS_S07_TC03_UpdateColumns_AllFieldsValid() private method

private MSWEBSS_S07_TC03_UpdateColumns_AllFieldsValid ( ) : void
return void
        public void MSWEBSS_S07_TC03_UpdateColumns_AllFieldsValid()
        {
            #region Set up the environment
            this.InitUpdateColumn();

            // Update to new interface
            UpdateColumnsMethod[] newFields = new UpdateColumnsMethod[1];
            newFields[0] = new UpdateColumnsMethod();
            newFields[0].Field = new FieldDefinition();
            newFields[0].ID = ((uint)CONST_MethodIDUNITS.One).ToString();
            newFields[0].Field.Name = this.GenerateRandomString(10);
            newFields[0].Field.Type = Common.GetConfigurationPropertyValue("UpdateColumns_Type", this.Site);

            // Update to new interface
            UpdateColumnsMethod1[] updateFields = new UpdateColumnsMethod1[1];
            updateFields[0] = new UpdateColumnsMethod1();
            updateFields[0].Field = new FieldDefinition();
            updateFields[0].ID = ((uint)CONST_MethodIDUNITS.Three).ToString();
            updateFields[0].Field.Name = this.GenerateRandomString(10);
            updateFields[0].Field.Type = Common.GetConfigurationPropertyValue("UpdateColumns_Type", this.Site);
            updateFields[0].Field.DisplayName = this.GenerateRandomString(10);

            // Update to new interface
            UpdateColumnsMethod2[] deleteFields = new UpdateColumnsMethod2[1];
            deleteFields[0] = new UpdateColumnsMethod2();
            deleteFields[0].Field = new FieldDefinition();
            deleteFields[0].ID = ((uint)CONST_MethodIDUNITS.Five).ToString();
            deleteFields[0].Field.Name = this.GenerateRandomString(10);

            #endregion

            UpdateColumnsResponseUpdateColumnsResult updateColumnsResult = Adapter.UpdateColumns(newFields, updateFields, deleteFields);

            #region Capture All Fields Valid Related Requirement
            // Verify MS-WEBSS requirement: MS-WEBSS_R465
            bool isVerifiedR465 = updateColumnsResult != null;
            Site.CaptureRequirementIfIsTrue(
                isVerifiedR465,
                465,
                @"[In UpdateColumns] If the operation succeeds, it MUST return an UpdateColumnsResponse element.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R508
            Site.CaptureRequirementIfAreEqual<string>(
                newFields[0].ID,
               updateColumnsResult.Results.NewFields[0].ID,
                508,
                @"[In UpdateColumnsResponse] Method.ID: This attribute MUST have the same value as the Method.ID attribute that was sent to the protocol server in the UpdateColumns message of this UpdateColumnsResponse for an add operation.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R473
            Site.CaptureRequirementIfAreEqual<string>(
                newFields[0].ID,
                updateColumnsResult.Results.NewFields[0].ID,
                473,
                @"[In UpdateColumnsSoapOut] This message[UpdateColumnsSoapOut] is the response message to perform the following operations on the context site and all child sites in its hierarchy:
	Adding one or more specified new columns.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R837
            Site.CaptureRequirementIfAreEqual<string>(
                updateFields[0].ID,
                updateColumnsResult.Results.UpdateFields[0].ID,
                837,
                @"[In UpdateColumnsResponse] Method.ID: This attribute MUST have the same value as the Method.ID attribute that was sent to the protocol server in the UpdateColumns message of this UpdateColumnsResponse for an update operation.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R474
            Site.CaptureRequirementIfAreEqual<string>(
                updateFields[0].ID,
                updateColumnsResult.Results.UpdateFields[0].ID,
                474,
                @"[In UpdateColumnsSoapOut] Updating one or more specified existing columns.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R838
            Site.CaptureRequirementIfAreEqual<string>(
                deleteFields[0].ID,
                updateColumnsResult.Results.DeleteFields[0].ID,
               838,
                @"[In UpdateColumnsResponse] Method.ID: This attribute MUST have the same value as the Method.ID attribute that was sent to the protocol server in the UpdateColumns message of this UpdateColumnsResponse for a delete operation.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R475
            Site.CaptureRequirementIfAreEqual<string>(
                deleteFields[0].ID,
                updateColumnsResult.Results.DeleteFields[0].ID,
                475,
                @"[In UpdateColumnsSoapOut] Deleting one or more specified existing columns.");

            // Verify MS-WEBSS requirement: MS-WEBSS_R1037
            Site.Assert.IsFalse(!Common.IsRequirementEnabled(1037, this.Site), "This operation UpdateColumns failed.");
            if (Common.IsRequirementEnabled(1037, this.Site))
            {
                // If the operation UpdateColumns failed,verify MS-WEBSS requirement: MS-WEBSS_R1037
                Site.CaptureRequirement(
                    1037,
                    @"[In Appendix B: Product Behavior] Implementation does support this[UpdateColumns] operation.(<21> Windows SharePoint Services 3.0 and above follow this behavior.)");
            }

            #endregion
        }