/// <summary> /// Updates view. /// </summary> public override void UpdateView() { DeviceEnvironment environment = ContextController.GetDeviceEnvironment(); View.TimeBetweenTests = environment.Timeouts.InterTests; View.MessageTimeout = environment.Timeouts.Message; View.RebootTimeout = environment.Timeouts.Reboot; View.DnsIpv4 = environment.EnvironmentSettings.DnsIpv4; View.DnsIpv6 = environment.EnvironmentSettings.DnsIpv6; View.NtpIpv4 = environment.EnvironmentSettings.NtpIpv4; View.NtpIpv6 = environment.EnvironmentSettings.NtpIpv6; View.GatewayIpv4 = environment.EnvironmentSettings.GatewayIpv4; View.GatewayIpv6 = environment.EnvironmentSettings.GatewayIpv6; View.PTZNodeToken = environment.TestSettings.PTZNodeToken; View.UseEmbeddedPassword = environment.TestSettings.UseEmbeddedPassword; View.Password1 = environment.TestSettings.Password1; View.Password2 = environment.TestSettings.Password2; View.OperationDelay = environment.TestSettings.OperationDelay; SetupInfo info = ContextController.GetSetupInfo(); if (!info.Specification20Selected()) { View.DeviceTypes = DeviceType.NVT; } View.EnableDeviceTypes(info.Specification20Selected()); }
void SaveInternal <T>(string fileName, T results) { StreamWriter writer = null; try { DebugReport <T> report = new DebugReport <T>(); report.ExecutionTime = DateTime.Now; report.DeviceInfo = ContextController.GetSetupInfo().DevInfo; report.Results = results; writer = new StreamWriter(fileName); XmlSerializer s = new XmlSerializer(typeof(DebugReport <T>)); s.Serialize(writer, report); } catch (Exception exc) { View.ReportError("An error occurred: " + exc.Message); } finally { if (writer != null) { writer.Close(); } } }
/// <summary> /// Saves test results. /// </summary> /// <param name="filename">Path to the file to write.</param> public void SaveTestResults(string filename) { Utils.PdfReportGenerator reportGenerator = new PdfReportGenerator(); reportGenerator.OnException += reportGenerator_OnException; reportGenerator.OnReportSaved += reportGenerator_OnReportSaved; Data.TestLogFull testLog = new TestLogFull(); Data.TestLog log = ContextController.GetTestLog(); testLog.TestResults = log.TestResults; testLog.Tests = log.Tests; if (log.TestExecutionTime != DateTime.MinValue) { testLog.TestExecutionTime = log.TestExecutionTime; } else { testLog.TestExecutionTime = DateTime.Now; } SetupInfo info = ContextController.GetSetupInfo(); testLog.TesterInfo = info.TesterInfo; testLog.Application = ContextController.GetApplicationInfo(); testLog.DeviceInfo = info.DevInfo; testLog.OtherInformation = info.OtherInfo; testLog.DeviceEnvironment = ContextController.GetDeviceEnvironment(); reportGenerator.CreateReport(filename, testLog); }
/// <summary> /// Colllects log data. /// </summary> /// <returns></returns> private Data.TestLogFull GetFullTestData() { Data.TestLogFull testLog = new TestLogFull(); Data.TestLog log = ContextController.GetTestLog(); testLog.TestResults = log.TestResults; testLog.Features = log.Features; testLog.InitializationData = log.InitializationData; testLog.FeaturesDefinitionLog = log.FeaturesDefinitionLog; testLog.DeviceInformation = _conformanceTestingInfo; if (log.TestExecutionTime != DateTime.MinValue) { testLog.TestExecutionTime = log.TestExecutionTime; } else { testLog.TestExecutionTime = DateTime.Now; } SetupInfo info = ContextController.GetSetupInfo(); testLog.TesterInfo = info.TesterInfo; testLog.Application = ContextController.GetApplicationInfo(); testLog.DeviceInfo = info.DevInfo; testLog.OtherInformation = info.OtherInfo; testLog.MemberInfo = info.MemberInfo; testLog.DeviceEnvironment = ContextController.GetDeviceEnvironment(); return(testLog); }
/// <summary> /// Displays device information /// </summary> /// <param name="info"></param> public void DisplayDeviceInfo(DeviceInfo info) { SetupInfo setupInfo = ContextController.GetSetupInfo(); if (DeviceInformationReceived != null) { DeviceInformationReceived(info.Manufacturer, info.Model, info.FirmwareVersion, info.SerialNumber, info.HardwareID); } setupInfo.DevInfo = info; }
/// <summary> /// Checks if all information required is entered at the Setup tab. /// </summary> /// <returns>True if user filled all the fields required.</returns> public bool IsTestInfoFull() { SetupInfo setupInfo = ContextController.GetSetupInfo(); if (string.IsNullOrEmpty(setupInfo.TesterInfo.Operator) || string.IsNullOrEmpty(setupInfo.TesterInfo.Organization) || string.IsNullOrEmpty(setupInfo.TesterInfo.Address) || string.IsNullOrEmpty(setupInfo.DevInfo.FirmwareVersion) || string.IsNullOrEmpty(setupInfo.DevInfo.Manufacturer) || string.IsNullOrEmpty(setupInfo.DevInfo.Model) || string.IsNullOrEmpty(setupInfo.DevInfo.SerialNumber)) { return(false); } else { return(true); } }
/////////////////////////////////////////////////////////////////////////// //! @author Ivan Vagunin //// /// <summary> /// Saves context data. /// </summary> public void SaveContextData() { IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.Machine | IsolatedStorageScope.Application, new System.Security.Policy.Url("www.onvif.org/OnvifTestTool")); IsolatedStorageFileStream isoFile = new IsolatedStorageFileStream(_dataFileName, FileMode.Create, isoStore); // Create a StreamWriter using the isolated storage file StreamWriter writer = new StreamWriter(isoFile); XmlSerializer serializer = new XmlSerializer(typeof(SavedContext)); SavedContext context = new SavedContext(); _conformanceTestController.UpdateContext(); context.SetupInfo = ContextController.GetSetupInfo(); _discoveryController.UpdateContext(); DiscoveredDevices devices = ContextController.GetDiscoveredDevices(); if (devices != null) { context.DiscoveryContext = new SavedDiscoveryContext(); context.DiscoveryContext.ServiceAddress = devices.ServiceAddress; context.DiscoveryContext.DeviceAddress = (devices.DeviceAddress != null) ? devices.DeviceAddress.ToString() : string.Empty; context.DiscoveryContext.SearchScopes = devices.SearchScopes.Replace(System.Environment.NewLine, " "); context.DiscoveryContext.ShowSearchOptions = devices.ShowSearchOptions; if ((devices.NIC != null) && (devices.NIC.IP != null)) { context.DiscoveryContext.InterfaceAddress = devices.NIC.IP.ToString(); } } _managementController.UpdateContext(); context.DeviceEnvironment = ContextController.GetDeviceEnvironment(); _deviceController.UpdateContext(); context.RequestsInfo = ContextController.GetRequestsInfo(); context.MediaInfo = ContextController.GetMediaInfo(); context.PTZInfo = ContextController.GetPTZInfo(); context.DebugInfo = ContextController.GetDebugInfo(); serializer.Serialize(writer, context); writer.Close(); }
/////////////////////////////////////////////////////////////////////////// //! @author Ivan Vagunin //// /// <summary> /// Saves context data. /// </summary> public void SaveContextData() { IsolatedStorageFile isoStore = IsolatedStorageFile.GetMachineStoreForAssembly(); IsolatedStorageFileStream isoFile = new IsolatedStorageFileStream(_dataFileName, FileMode.Create, isoStore); // Create a StreamWriter using the isolated storage file StreamWriter writer = new StreamWriter(isoFile); XmlSerializer serializer = new XmlSerializer(typeof(SavedContext)); SavedContext context = new SavedContext(); _setupController.UpdateContext(); context.SetupInfo = ContextController.GetSetupInfo(); _discoveryController.UpdateContext(); DiscoveredDevices devices = ContextController.GetDiscoveredDevices(); if (devices != null) { context.DiscoveryContext = new SavedDiscoveryContext(); context.DiscoveryContext.ServiceAddress = devices.ServiceAddress; context.DiscoveryContext.DeviceAddress = (devices.DeviceAddress != null) ? devices.DeviceAddress.ToString() : string.Empty; if ((devices.NIC != null) && (devices.NIC.IP != null)) { context.DiscoveryContext.InterfaceAddress = devices.NIC.IP.ToString(); } } _reportController.UpdateContext(); context.ReportInfo = ContextController.GetReportInfo(); _managementController.UpdateContext(); context.DeviceEnvironment = ContextController.GetDeviceEnvironment(); _requestsController.UpdateContext(); context.RequestsInfo = ContextController.GetRequestsInfo(); _deviceController.MediaController.UpdateContext(); context.MediaInfo = ContextController.GetMediaInfo(); _deviceController.PTZController.UpdateContext(); context.PTZInfo = ContextController.GetPTZInfo(); serializer.Serialize(writer, context); writer.Close(); }
public void SaveAsXML(string fileName) { // save; SerializableTestingParameters parameters = new SerializableTestingParameters(); { parameters.Advanced = GetAdvancedSettings().ToArray(); parameters.Device = new DeviceParameters(); DiscoveredDevices devices = ContextController.GetDiscoveredDevices(); parameters.Device.DeviceIP = (null != devices.DeviceAddress) ? devices.DeviceAddress.ToString() : ""; parameters.Device.DeviceServiceAddress = devices.ServiceAddress; DeviceInfo devInfo = ContextController.GetSetupInfo().DevInfo; parameters.Device.Model = devInfo != null ? devInfo.Model : string.Empty; { parameters.Output = new Output(); parameters.Output.CreateNestedFolder = true; parameters.Output.Directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); parameters.Output.FeatureDefinitionLog = "FeatureDefinitionLog.xml"; parameters.Output.Report = "TestReport.pdf"; parameters.Output.TestLog = "TestLog.xml"; } { SetupInfo info = ContextController.GetSetupInfo(); if (info != null) { parameters.SessionInfo = new SessionInfo(); parameters.SessionInfo.MemberInfo = info.MemberInfo; parameters.SessionInfo.OtherInformation = info.OtherInfo; parameters.SessionInfo.TesterInfo = info.TesterInfo; } } { parameters.TestParameters = new TestParameters(); parameters.TestParameters.Address = devices.NIC.IP.ToString(); DeviceEnvironment env = ContextController.GetDeviceEnvironment(); if (env.EnvironmentSettings != null) { parameters.TestParameters.DefaultGatewayIpv4 = env.EnvironmentSettings.GatewayIpv4; parameters.TestParameters.DefaultGatewayIpv6 = env.EnvironmentSettings.GatewayIpv6; parameters.TestParameters.DnsIpv4 = env.EnvironmentSettings.DnsIpv4; parameters.TestParameters.DnsIpv6 = env.EnvironmentSettings.DnsIpv6; parameters.TestParameters.NtpIpv4 = env.EnvironmentSettings.NtpIpv4; parameters.TestParameters.NtpIpv6 = env.EnvironmentSettings.NtpIpv6; } if (env.Credentials != null) { parameters.TestParameters.UserName = env.Credentials.UserName; parameters.TestParameters.Password = env.Credentials.Password; } if (env.Timeouts != null) { parameters.TestParameters.MessageTimeout = env.Timeouts.Message; parameters.TestParameters.RebootTimeout = env.Timeouts.Reboot; parameters.TestParameters.TimeBetweenTests = env.Timeouts.InterTests; } if (env.TestSettings != null) { parameters.TestParameters.EventTopic = env.TestSettings.EventTopic; parameters.TestParameters.TopicNamespaces = env.TestSettings.TopicNamespaces; parameters.TestParameters.OperationDelay = env.TestSettings.OperationDelay; parameters.TestParameters.Password1 = env.TestSettings.Password1; parameters.TestParameters.Password2 = env.TestSettings.Password2; parameters.TestParameters.PTZNodeToken = env.TestSettings.PTZNodeToken; parameters.TestParameters.RelayOutputDelayTime = env.TestSettings.RelayOutputDelayTimeMonostable; parameters.TestParameters.SecureMethod = env.TestSettings.SecureMethod; parameters.TestParameters.SubscriptionTimeout = env.TestSettings.SubscriptionTimeout; parameters.TestParameters.TimeBetweenRequests = env.TestSettings.RecoveryDelay; parameters.TestParameters.UseEmbeddedPassword = env.TestSettings.UseEmbeddedPassword; parameters.TestParameters.VideoSourceToken = env.TestSettings.VideoSourceToken; parameters.TestParameters.SearchTimeout = env.TestSettings.SearchTimeout; parameters.TestParameters.RecordingToken = env.TestSettings.RecordingToken; parameters.TestParameters.MetadataFilter = env.TestSettings.MetadataFilter; } } } XmlSerializer serializer = new XmlSerializer(typeof(SerializableTestingParameters)); FileStream stream = null; try { stream = new FileStream(fileName, FileMode.OpenOrCreate); serializer.Serialize(stream, parameters); } catch (Exception exc) { View.ShowError(exc); return; } finally { if (stream != null) { stream.Close(); } } // open in NotePad, if needed if (View.OpenFileForEditing) { ProcessStartInfo ProcessInfo; Process Process; try { ProcessInfo = new ProcessStartInfo("Notepad.exe", fileName); ProcessInfo.CreateNoWindow = false; ProcessInfo.UseShellExecute = true; Process = Process.Start(ProcessInfo); } catch (System.Exception ex) { View.ShowError(ex); } } }