/// <summary> /// Capture requirements related with SubResponseDataGenericType /// </summary> /// <param name="subResponseData">The SubResponseDataGenericType information</param> /// <param name="site">Instance of ITestSite</param> private static void ValidateSubResponseDataGenericType(SubResponseDataGenericType subResponseData, ITestSite site) { // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R230 site.CaptureRequirement( "MS-FSSHTTP", 230, @"[In SubResponseDataGenericType][SubResponseDataGenericType schema is:] <xs:complexType name=""SubResponseDataGenericType"" mixed=""true""> <xs:all> <xs:element ref=""i:Include"" minOccurs=""0"" maxOccurs=""1"" /> </xs:all> <xs:attributeGroup ref=""tns:SubResponseDataOptionalAttributes"" /> </xs:complexType>"); // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R543 site.CaptureRequirement( "MS-FSSHTTP", 543, @"[In CellSubResponseDataType][CellSubResponseDataType schema is:] <xs:complexType name=""CellSubResponseDataType"" mixed=""true""> <xs:all> <xs:element ref=""i:Include"" minOccurs=""0"" maxOccurs=""1"" /> </xs:all> <xs:attributeGroup ref=""tns:CellSubResponseDataOptionalAttributes"" /> <xs:attribute name=""LockType"" type=""tns:LockTypes"" use=""optional"" /> </xs:complexType>"); // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R544 site.CaptureRequirement( "MS-FSSHTTP", 544, @"[In CellSubResponseDataType] Include: A complex type, as specified in [XOP10] section 2.1."); // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R231 site.CaptureRequirement( "MS-FSSHTTP", 231, @"[In SubResponseDataGenericType] Include: A complex type, as specified in [XOP10] section 2.1."); // Verify requirements related with SubResponseDataOptionalAttributes ValidateSubResponseDataOptionalAttributes(subResponseData, site); }
/// <summary> /// Capture requirements related with SubResponseDataOptionalAttributes type /// </summary> /// <param name="subResponseData">The SubResponseData information</param> /// <param name="site">Instance of ITestSite</param> private static void ValidateSubResponseDataOptionalAttributes(SubResponseDataGenericType subResponseData, ITestSite site) { // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R458 site.CaptureRequirement( "MS-FSSHTTP", 458, @"[In SubResponseDataOptionalAttributes] The definition of the SubResponseDataOptionalAttributes attribute group is as follows: <xs:attributeGroup name=""SubResponseDataOptionalAttributes""> <xs:attributeGroup ref=""tns:CellSubResponseDataOptionalAttributes""/> <xs:attributeGroup ref=""tns:WhoAmISubResponseDataOptionalAttributes""/> <xs:attribute name=""ServerTime"" type=""xs:positiveInteger"" use=""optional""/> <xs:attribute name=""LockType"" type=""tns:LockTypes"" use=""optional"" /> <xs:attribute name=""CoauthStatus"" type=""tns:CoauthStatusType"" use=""optional""/> <xs:attribute name=""TransitionID"" type=""tns:guid"" use=""optional""/> <xs:attribute name=""ExclusiveLockReturnReason"" type=""tns:ExclusiveLockReturnReasonTypes"" use=""optional"" /> </xs:attributeGroup>"); // Verify requirements related with CellSubResponseDataOptionalAttributes if (subResponseData.Etag != null || subResponseData.CreateTime != null || subResponseData.ModifiedBy != null || subResponseData.LastModifiedTime != null || subResponseData.CoalesceErrorMessage != null) { CellSubResponseDataType cellSubResponseData = new CellSubResponseDataType(); cellSubResponseData.Etag = subResponseData.Etag; cellSubResponseData.CreateTime = subResponseData.CreateTime; cellSubResponseData.ModifiedBy = subResponseData.ModifiedBy; cellSubResponseData.LastModifiedTime = subResponseData.LastModifiedTime; cellSubResponseData.CoalesceErrorMessage = subResponseData.CoalesceErrorMessage; ValidateCellSubResponseDataOptionalAttributes(cellSubResponseData, site); } // Verify requirements related with WhoAmISubResponseDataOptionalAttributes if (subResponseData.UserName != null || subResponseData.UserEmailAddress != null || subResponseData.UserSIPAddress != null) { WhoAmISubResponseDataType whoamiSubResponseData = new WhoAmISubResponseDataType(); whoamiSubResponseData.UserName = subResponseData.UserName; whoamiSubResponseData.UserEmailAddress = subResponseData.UserEmailAddress; whoamiSubResponseData.UserSIPAddress = subResponseData.UserSIPAddress; ValidateWhoAmISubResponseDataOptionalAttributes(whoamiSubResponseData, site); } if (subResponseData.ServerTime != null) { // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R463 site.CaptureRequirement( "MS-FSSHTTP", 463, @"[In SubResponseDataOptionalAttributes] ServerTime: A positive integer that specifies the server time, which is expressed as a tick count."); } if (subResponseData.LockTypeSpecified) { // Verify LockTypes ValidateLockTypes(site); } if (subResponseData.CoauthStatusSpecified) { // Verify CoauthStatusType ValidateCoauthStatusType(site); } if (subResponseData.TransitionID != null) { // Verify GUID type ValidateGUID(site); } if (subResponseData.ExclusiveLockReturnReasonSpecified) { // Verify ExclusiveLockReturnReasonTypes ValidateExclusiveLockReturnReasonTypes(site); } }
/// <summary> /// Capture requirements related with SubResponseData element /// </summary> /// <param name="subResponseData">The SubResponseData element</param> /// <param name="site">Instance of ITestSite</param> private static void ValidateSubResponseData(SubResponseDataGenericType subResponseData, ITestSite site) { // Verify MS-FSSHTTP requirement: MS-FSSHTTP_R155 site.CaptureRequirement( "MS-FSSHTTP", 155, @"[In SubResponseData][SubResponseData element schema is:] <xs:element name=""SubResponseData"" minOccurs=""0"" maxOccurs=""1"" type=""tns:SubResponseDataGenericType"" />"); // Verify requirements related with SubResponseDataGenericType ValidateSubResponseDataGenericType(subResponseData, site); }