/// <summary> /// Common "Save" procedure /// </summary> /// <typeparam name="T"></typeparam> /// <param name="fileName"></param> /// <param name="results"></param> void SaveInternal <T>(string fileName, T results) { StreamWriter writer = null; try { DebugReport <T> report = new DebugReport <T>(); report.ExecutionTime = DateTime.Now; DeviceInfo info = new DeviceInfo(); if (_initializationData != null && _initializationData.DeviceInformation != null) { info.FirmwareVersion = _initializationData.DeviceInformation.FirmwareVersion; info.HardwareID = _initializationData.DeviceInformation.HardwareID; info.Manufacturer = _initializationData.DeviceInformation.Manufacturer; info.Model = _initializationData.DeviceInformation.Model; info.SerialNumber = _initializationData.DeviceInformation.SerialNumber; } report.DeviceInfo = info; report.Results = results; { Data.Log.ManagementSettings settings = ContextController.GetManagementSettings(); report.ManagementSettings = settings; } writer = new StreamWriter(fileName); XmlSerializer s = new XmlSerializer(typeof(DebugReport <T>)); s.Serialize(writer, report); } catch (Exception exc) { View.ShowError(exc); } finally { if (writer != null) { writer.Close(); } } }
/// <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.ProductName = info.DevInfo.ProductName; testLog.ProductTypes = info.DevInfo.ProductTypes; testLog.ProductTypesOther = info.DevInfo.ProductTypesOther; testLog.OtherInformation = info.OtherInfo; testLog.MemberInfo = info.MemberInfo; testLog.SupportInfo = info.SupportInfo; testLog.ManagementSettings = ContextController.GetManagementSettings(); testLog.DeviceEnvironment = ContextController.GetDeviceEnvironment(); testLog.Timeouts = log.Timeouts; return(testLog); }