/// <summary> /// This method is used to test Waterline Knowledge related adapter requirements. /// </summary> /// <param name="instance">Specify the instance which need to be verified.</param> /// <param name="site">Specify the ITestSite instance.</param> public void VerifyWaterlineKnowledge(WaterlineKnowledge instance, ITestSite site) { // If the instance is not null and there are no parsing errors, then the Waterline Knowledge related adapter requirements can be directly captured. if (null == instance) { site.Assert.Fail("The instance of type WaterlineKnowledge is null due to parsing error or type casting error."); } // Verify the stream object header related requirements. this.ExpectStreamObjectHeaderStart(instance.StreamObjectHeaderStart, instance.GetType(), site); // Capture requirement MS-FSSHTTPB_R572, if stream object start type is StreamObjectHeaderStart16bit. site.CaptureRequirementIfAreEqual <Type>( typeof(StreamObjectHeaderStart16bit), instance.StreamObjectHeaderStart.GetType(), "MS-FSSHTTPB", 572, @"[In Waterline Knowledge] Waterline Knowledge Start (2 bytes): A 16-bit Stream Object Header (section 2.2.1.5.1) that specifies a Waterline Knowledge start."); // Directly capture requirement MS-FSSHTTPB_R573, if there are no parsing errors. site.CaptureRequirement( "MS-FSSHTTPB", 573, @"[In Waterline Knowledge] Waterline Knowledge Data (variable): One or more Waterline Knowledge Entries (section 2.2.1.13.4.1) that specify what the server has already delivered to the client or what the client has already received from the server."); // Directly capture requirement MS-FSSHTTPB_R574, if the stream object end type is StreamObjectHeaderEnd8bit. site.CaptureRequirementIfAreEqual <Type>( typeof(StreamObjectHeaderEnd8bit), instance.StreamObjectHeaderEnd.GetType(), "MS-FSSHTTPB", 574, @"[In Waterline Knowledge] Waterline Knowledge End (1 byte): An 8-bit Stream Object Header (section 2.2.1.5.3) that specifies the Waterline Knowledge end."); // Verify the stream object header end related requirements. this.ExpectStreamObjectHeaderEnd(instance.StreamObjectHeaderEnd, instance.GetType(), site); this.ExpectCompoundObject(instance.StreamObjectHeaderStart, site); }
/// <summary> /// This method is used to test Waterline Knowledge related adapter requirements. /// </summary> /// <param name="instance">Specify the instance which need to be verified.</param> /// <param name="site">Specify the ITestSite instance.</param> public void VerifyWaterlineKnowledge(WaterlineKnowledge instance, ITestSite site) { // If the instance is not null and there are no parsing errors, then the Waterline Knowledge related adapter requirements can be directly captured. if (null == instance) { site.Assert.Fail("The instance of type WaterlineKnowledge is null due to parsing error or type casting error."); } // Verify the stream object header related requirements. this.ExpectStreamObjectHeaderStart(instance.StreamObjectHeaderStart, instance.GetType(), site); // Capture requirement MS-FSSHTTPB_R572, if stream object start type is StreamObjectHeaderStart16bit. site.CaptureRequirementIfAreEqual<Type>( typeof(StreamObjectHeaderStart16bit), instance.StreamObjectHeaderStart.GetType(), "MS-FSSHTTPB", 572, @"[In Waterline Knowledge] Waterline Knowledge Start (2 bytes): A 16-bit stream object header (section 2.2.1.5.1) that specifies a waterline knowledge start."); // Directly capture requirement MS-FSSHTTPB_R573, if there are no parsing errors. site.CaptureRequirement( "MS-FSSHTTPB", 573, @"[In Waterline Knowledge] Waterline Knowledge Data (variable): One or more waterline knowledge entries (section 2.2.1.13.4.1) that specify what the server has already delivered to the client or what the client has already received from the server."); // Directly capture requirement MS-FSSHTTPB_R574, if the stream object end type is StreamObjectHeaderEnd8bit. site.CaptureRequirementIfAreEqual<Type>( typeof(StreamObjectHeaderEnd8bit), instance.StreamObjectHeaderEnd.GetType(), "MS-FSSHTTPB", 574, @"[In Waterline Knowledge] Waterline Knowledge End (1 byte): An 8-bit stream object header (section 2.2.1.5.3) that specifies the waterline knowledge end."); // Verify the stream object header end related requirements. this.ExpectStreamObjectHeaderEnd(instance.StreamObjectHeaderEnd, instance.GetType(), site); this.ExpectCompoundObject(instance.StreamObjectHeaderStart, site); }