Beispiel #1
0
        /// <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();
        }
Beispiel #8
0
        ///////////////////////////////////////////////////////////////////////////
        //!  @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();
        }
Beispiel #9
0
        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);
                }
            }
        }