/*[Test(Name = "CAPABILITIES AND EVENT SERVICE CAPABILITIES CONSISTENCY", * Order = "05.01.03", * Id = "5-1-3", * Category = Category.EVENT, * Path = PATH, * Version = 2.1, * RequirementLevel = RequirementLevel.Must, * RequiredFeatures = new Feature[] { Feature.GetServices }, * FunctionalityUnderTest = new Functionality[] { Functionality.GetEventsServiceCapabilities, Functionality.GetServices })] */public void EventsServiceCapabilitiesConsistencyTest() { RunTest(() => { Proxies.Onvif.Capabilities capabilities = GetCapabilities(new CapabilityCategory[] { CapabilityCategory.Events }); Assert(capabilities.Events != null, "Events field is empty", "Check that the DUT returned Events capabilities"); Proxies.Event.EventServiceCapabilities serviceEventServiceCapabilities = GetEventCapabilities(); // compare... CompareCapabilities(serviceEventServiceCapabilities, capabilities); }, () => { CloseEventClient(); }); }
void CompareCapabilities(Proxies.Event.Capabilities serviceSapabilities, Proxies.Onvif.Capabilities capabilities) { BeginStep("Compare Capabilities"); StringBuilder dump = new StringBuilder(); bool equal = true; bool local; Proxies.Onvif.EventCapabilities events = capabilities.Events; local = CheckCapabilitiesField(serviceSapabilities.WSPausableSubscriptionManagerInterfaceSupportSpecified, serviceSapabilities.WSPausableSubscriptionManagerInterfaceSupport, events != null, events != null ? events.WSPausableSubscriptionManagerInterfaceSupport : false, "WSPausableSubscriptionManagerInterfaceSupport", dump); equal = equal && local; local = CheckCapabilitiesField(serviceSapabilities.WSPullPointSupportSpecified, serviceSapabilities.WSPullPointSupport, events != null, events != null ? events.WSPullPointSupport : false, "WSPullPointSupport", dump); equal = equal && local; local = CheckCapabilitiesField(serviceSapabilities.WSSubscriptionPolicySupportSpecified, serviceSapabilities.WSSubscriptionPolicySupport, events != null, events != null ? events.WSSubscriptionPolicySupport : false, "WSSubscriptionPolicySupport", dump); equal = equal && local; if (!equal) { LogStepEvent(dump.ToStringTrimNewLine()); throw new AssertException("Settings don't match"); } StepPassed(); }