Esempio n. 1
0
        protected ImagingSettings20 GetImagingSettings(string token, string stepName)
        {
            ImagingSettings20 settings = null;

            RunStep(() => { settings = Client.GetImagingSettings(token); }, stepName);
            DoRequestDelay();
            return(settings);
        }
Esempio n. 2
0
        public override void SetImagingSettings(string VideoSourceToken, ImagingSettings20 ImagingSettings, bool ForcePersistence, [System.Xml.Serialization.XmlIgnoreAttribute()] bool ForcePersistenceSpecified)
        {
            TestSuitInit();
            int           timeOut;
            SoapException ex;

            StepType stepType = m_ImagingService20Test.SetImagingSettingsTest(out ex, out timeOut, VideoSourceToken, ImagingSettings, ForcePersistence, ForcePersistenceSpecified);

            StepTypeProcessing(stepType, ex, timeOut);
        }
Esempio n. 3
0
        public void SetImagingSettingsTest()
        {
            ImagingSettings20 backup = null;
            string            token  = string.Empty;

            RunTest(
                () =>
            {
                VideoSource[] sources = GetAndValidateVideoSources();

                for (int i = 0; i < sources.Length; i++)
                {
                    ImagingOptions20 options = GetOptions(sources[i].token);

                    if (options == null)
                    {
                        continue;
                    }

                    ValidateImagingOptions(options);

                    ImagingSettings20 initialSettings = GetImagingSettings(sources[i].token);

                    ImagingSettings20 settings = GenerateImagingSettings(options, initialSettings);

                    SetImagingSettings(sources[i].token, settings, false);

                    ImagingSettings20 actualSettings = GetImagingSettings(sources[i].token);

                    // compare settings
                    string dump;
                    bool bEqual = ImagingSettingsEqual(settings, actualSettings, true, out dump);
                    if (!bEqual)
                    {
                        // save for restoring
                        // if equal, restoring will be done after passing Assert
                        backup = initialSettings;
                        token  = sources[i].token;
                    }
                    Assert(bEqual,
                           string.Format("Expected and actual settings are different.\n{0}",
                                         dump), "Compare settings");

                    SetImagingSettings(sources[i].token, initialSettings, false, "Restore imaging settings");
                }
            },
                () =>
            {
                if (backup != null)
                {
                    SetImagingSettings(token, backup, false, "Restore imaging settings");
                }
            });
        }
Esempio n. 4
0
        internal StepType GetImagingSettingsTest(out ImagingSettings20 target, out SoapException ex, out int Timeout, string VideoSourceToken)
        {
            StepType res = StepType.None;

            Timeout = 0;
            ex      = null;
            bool   passed     = true;
            string logMessage = "";

            //Get step list for command
            XmlNodeList m_testList = m_TestCommon.GetStepsForCommand("Imaging20.GetImagingSettings");

            if (m_testList != null)
            {
                //Get current step
                XmlNode test = m_testList[m_commandCount[GetImagingSettings]];

                #region Serialization Temp
                //Media.VideoEncoderConfigurationOptions dsr = new Media.VideoEncoderConfigurationOptions();
                //dsr.JPEG = new Media.JpegOptions();
                //XmlSerializer serializer = new XmlSerializer(typeof(Media.VideoEncoderConfigurationOptions));
                //XmlReader sr = XmlReader.Create(new StringReader(test.SelectNodes("ResponseParameters")[0].InnerXml));
                //TextWriter textWriter = new StreamWriter("c:\\2.txt");
                //serializer.Serialize(textWriter, dsr);
                #endregion //Serialization Temp

                #region Analyze request

                //VideoSourceToken
                CommonCompare.StringCompare("RequestParameters/VideoSourceToken", "VideoSourceToken", VideoSourceToken, ref logMessage, ref passed, test);

                #endregion //Analyze request

                //Generate response
                object targetObj;
                res    = m_TestCommon.GenerateResponseStepTypeNotVoid(test, out targetObj, out ex, out Timeout, typeof(ImagingSettings20));
                target = (ImagingSettings20)targetObj;

                //Log message
                m_TestCommon.writeToLog(test, logMessage, passed);

                Increment(m_testList.Count, GetImagingSettings);
            }
            else
            {
                res     = StepType.None;
                Timeout = 0;
                target  = null;
                ex      = null;
                res     = StepType.None;
            }
            return(res);
        }
            public static Model Create(
                string profToken,
                string sourceToken,
                ImagingOptions20 options,
                ImagingSettings20 settings,
                MoveOptions20 moveOptions
                )
            {
                var _this = new Model();

                _this.profToken       = profToken;
                _this.sourceToken     = sourceToken;
                _this.options         = options;
                _this.moveOptions     = moveOptions;
                _this.origin.settings = settings;
                _this.RevertChanges();

                return(_this);
            }
Esempio n. 6
0
        public void GetImagingSettingsTest()
        {
            RunTest(
                () =>
            {
                VideoSource[] sources = GetAndValidateVideoSources();

                for (int i = 0; i < sources.Length; i++)
                {
                    ImagingSettings20 settings = null;
                    settings = GetImagingSettings(sources[i].token);

                    //if (succeeded)
                    //{
                    //    ValidateImagingSettings(sources[i].Imaging, settings);
                    //}
                }
            });
        }
Esempio n. 7
0
        public void GetImagingSettingsInvalidTokenTest()
        {
            RunTest(
                () =>
            {
                VideoSource[] sources = GetAndValidateVideoSources();

                string[] tokens = sources.Select(s => s.token).ToArray();

                string invalidToken = tokens.GetNonMatchingString();

                RunStep(
                    () =>
                {
                    ImagingSettings20 settings = Client.GetImagingSettings(invalidToken);
                }, "Get imaging settings - negative test",
                    new ValidateTypeFault(ValidateInvalidTokenFault));

                DoRequestDelay();
            });
        }
Esempio n. 8
0
        internal StepType SetImagingSettingsTest(out SoapException ex, out int Timeout, string VideoSourceToken, ImagingSettings20 ImagingSettings, bool ForcePersistence, bool ForcePersistenceSpecified)
        {
            StepType res = StepType.None;

            Timeout = 0;
            ex      = null;
            bool   passed     = true;
            string logMessage = "";

            //Get step list for command
            XmlNodeList m_testList = m_TestCommon.GetStepsForCommand("Imaging20.SetImagingSettings");

            if (m_testList != null)
            {
                //Get current step
                XmlNode test = m_testList[m_commandCount[SetImagingSettings]];

                #region Analyze request

                //VideoSourceToken
                CommonCompare.StringCompare("RequestParameters/VideoSourceToken", "VideoSourceToken", VideoSourceToken, ref logMessage, ref passed, test);

                //ImagingSettings
                if (CommonCompare.Exist("RequestParameters/ImagingSettings", "ImagingSettings", ImagingSettings, ref logMessage, ref passed, test))
                {
                    //BacklightCompensation
                    if (CommonCompare.Exist("RequestParameters/ImagingSettings/BacklightCompensation", "BacklightCompensation", ImagingSettings.BacklightCompensation, ref logMessage, ref passed, test))
                    {
                        //Mode
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/BacklightCompensation/Mode", "Mode", ImagingSettings.BacklightCompensation.Mode.ToString(), ref logMessage, ref passed, test);
                        if (ImagingSettings.BacklightCompensation.Mode == BacklightCompensationMode.ON)
                        {
                            //Level
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/BacklightCompensation/Level", "Level", ImagingSettings.BacklightCompensation.Level, ref logMessage, ref passed, test);
                        }
                    }
                    //Brightness
                    if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Brightness", "Brightness", ImagingSettings.BrightnessSpecified, ref logMessage, ref passed, test))
                    {
                        CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Brightness", "Brightness", ImagingSettings.Brightness, ref logMessage, ref passed, test);
                    }
                    //ColorSaturation
                    if (CommonCompare.Exist2("RequestParameters/ImagingSettings/ColorSaturation", "ColorSaturation", ImagingSettings.ColorSaturationSpecified, ref logMessage, ref passed, test))
                    {
                        CommonCompare.FloatCompare("RequestParameters/ImagingSettings/ColorSaturation", "ColorSaturation", ImagingSettings.ColorSaturation, ref logMessage, ref passed, test);
                    }
                    //Contrast
                    if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Contrast", "Contrast", ImagingSettings.ContrastSpecified, ref logMessage, ref passed, test))
                    {
                        CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Contrast", "Contrast", ImagingSettings.Contrast, ref logMessage, ref passed, test);
                    }
                    //Exposure
                    if (CommonCompare.Exist("RequestParameters/ImagingSettings/Exposure", "Exposure", ImagingSettings.Exposure, ref logMessage, ref passed, test))
                    {
                        //Mode
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/Exposure/Mode", "Mode", ImagingSettings.Exposure.Mode.ToString(), ref logMessage, ref passed, test);
                        if (ImagingSettings.Exposure.Mode == ExposureMode.AUTO)
                        {
                            //Priority
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/Priority", "Priority", ImagingSettings.Exposure.PrioritySpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.StringCompare("RequestParameters/ImagingSettings/Exposure/Priority", "Priority", ImagingSettings.Exposure.Priority.ToString(), ref logMessage, ref passed, test);
                            }
                            //MinExposureTime
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MinExposureTime", "MinExposureTime", ImagingSettings.Exposure.MinExposureTimeSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MinExposureTime", "MinExposureTime", ImagingSettings.Exposure.MinExposureTime, ref logMessage, ref passed, test);
                            }
                            //MaxExposureTime
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MaxExposureTime", "MaxExposureTime", ImagingSettings.Exposure.MaxExposureTimeSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MaxExposureTime", "MaxExposureTime", ImagingSettings.Exposure.MaxExposureTime, ref logMessage, ref passed, test);
                            }
                            //MinGain
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MinGain", "MinGain", ImagingSettings.Exposure.MinGainSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MinGain", "MinGain", ImagingSettings.Exposure.MinGain, ref logMessage, ref passed, test);
                            }
                            //MaxGain
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MaxGain", "MaxGain", ImagingSettings.Exposure.MaxGainSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MaxGain", "MaxGain", ImagingSettings.Exposure.MaxGain, ref logMessage, ref passed, test);
                            }
                            //MinIris
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MinIris", "MinIris", ImagingSettings.Exposure.MinIrisSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MinIris", "MinIris", ImagingSettings.Exposure.MinIris, ref logMessage, ref passed, test);
                            }
                            //MaxIris
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/MaxIris", "MaxIris", ImagingSettings.Exposure.MaxIrisSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/MaxIris", "MaxIris", ImagingSettings.Exposure.MaxIris, ref logMessage, ref passed, test);
                            }
                        }
                        else if (ImagingSettings.Exposure.Mode == ExposureMode.MANUAL)
                        {
                            //ExposureTime
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/ExposureTime", "ExposureTime", ImagingSettings.Exposure.ExposureTimeSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/ExposureTime", "ExposureTime", ImagingSettings.Exposure.ExposureTime, ref logMessage, ref passed, test);
                            }
                            //Gain
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/Gain", "Gain", ImagingSettings.Exposure.GainSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/Gain", "Gain", ImagingSettings.Exposure.Gain, ref logMessage, ref passed, test);
                            }
                            //Iris
                            if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Exposure/Iris", "Iris", ImagingSettings.Exposure.IrisSpecified, ref logMessage, ref passed, test))
                            {
                                CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Exposure/Iris", "Iris", ImagingSettings.Exposure.Iris, ref logMessage, ref passed, test);
                            }
                        }
                    }
                    //Focus
                    if (CommonCompare.Exist("RequestParameters/ImagingSettings/Focus", "Focus", ImagingSettings.Focus, ref logMessage, ref passed, test))
                    {
                        //AutoFocusMode
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/Focus/AutoFocusMode", "AutoFocusMode", ImagingSettings.Focus.AutoFocusMode.ToString(), ref logMessage, ref passed, test);
                        if (ImagingSettings.Focus.AutoFocusMode == AutoFocusMode.MANUAL)
                        {
                            //DefaultSpeed
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Focus/DefaultSpeed", "DefaultSpeed", ImagingSettings.Focus.DefaultSpeed, ref logMessage, ref passed, test);
                        }
                        else if (ImagingSettings.Focus.AutoFocusMode == AutoFocusMode.AUTO)
                        {
                            //NearLimit
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Focus/NearLimit", "NearLimit", ImagingSettings.Focus.NearLimit, ref logMessage, ref passed, test);
                            //FarLimit
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Focus/FarLimit", "FarLimit", ImagingSettings.Focus.FarLimit, ref logMessage, ref passed, test);
                        }
                    }
                    //IrCutFilter
                    if (CommonCompare.Exist2("RequestParameters/ImagingSettings/IrCutFilter", "IrCutFilter", ImagingSettings.IrCutFilterSpecified, ref logMessage, ref passed, test))
                    {
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/IrCutFilter", "IrCutFilter", ImagingSettings.IrCutFilter.ToString(), ref logMessage, ref passed, test);
                    }
                    //Sharpness
                    if (CommonCompare.Exist2("RequestParameters/ImagingSettings/Sharpness", "Sharpness", ImagingSettings.SharpnessSpecified, ref logMessage, ref passed, test))
                    {
                        CommonCompare.FloatCompare("RequestParameters/ImagingSettings/Sharpness", "Sharpness", ImagingSettings.Sharpness, ref logMessage, ref passed, test);
                    }
                    //WideDynamicRange
                    if (CommonCompare.Exist("RequestParameters/ImagingSettings/WideDynamicRange", "WideDynamicRange", ImagingSettings.WideDynamicRange, ref logMessage, ref passed, test))
                    {
                        //Mode
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/WideDynamicRange/Mode", "Mode", ImagingSettings.WideDynamicRange.Mode.ToString(), ref logMessage, ref passed, test);
                        if (ImagingSettings.WideDynamicRange.Mode == WideDynamicMode.ON)
                        {
                            //Level
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/WideDynamicRange/Level", "Level", ImagingSettings.WideDynamicRange.Level, ref logMessage, ref passed, test);
                        }
                    }
                    //WhiteBalance
                    if (CommonCompare.Exist("RequestParameters/ImagingSettings/WhiteBalance", "WhiteBalance", ImagingSettings.WhiteBalance, ref logMessage, ref passed, test))
                    {
                        //Mode
                        CommonCompare.StringCompare("RequestParameters/ImagingSettings/WhiteBalance/Mode", "Mode", ImagingSettings.WhiteBalance.Mode.ToString(), ref logMessage, ref passed, test);
                        if (ImagingSettings.WhiteBalance.Mode == WhiteBalanceMode.MANUAL)
                        {
                            //CrGain
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/WhiteBalance/CrGain", "CrGain", ImagingSettings.WhiteBalance.CrGain, ref logMessage, ref passed, test);
                            //CbGain
                            CommonCompare.FloatCompare("RequestParameters/ImagingSettings/WhiteBalance/CbGain", "CbGain", ImagingSettings.WhiteBalance.CbGain, ref logMessage, ref passed, test);
                        }
                    }
                }

                //ForcePersistence
                CommonCompare.Exist2("RequestParameters/ForcePersistence", "ForcePersistence", ForcePersistenceSpecified, ref logMessage, ref passed, test);
                if (passed)
                {
                    CommonCompare.StringCompare("RequestParameters/ForcePersistence", "ForcePersistence", ForcePersistence.ToString(), ref logMessage, ref passed, test);
                }

                #endregion //Analyze request

                //Generate response
                res = m_TestCommon.GenerateResponseStepTypeVoid(test, out ex, out Timeout);

                //Log message
                m_TestCommon.writeToLog(test, logMessage, passed);

                Increment(m_testList.Count, SetImagingSettings);
            }
            else
            {
                res     = StepType.None;
                Timeout = 0;
                ex      = null;
                res     = StepType.None;
            }
            return(res);
        }
Esempio n. 9
0
 protected void SetImagingSettings(string token, ImagingSettings20 settings, bool forcePersistance, string stepName)
 {
     RunStep(() => { Client.SetImagingSettings(token, settings, forcePersistance); }, stepName);
     DoRequestDelay();
 }
Esempio n. 10
0
 protected void SetImagingSettings(string token, ImagingSettings20 settings, bool forcePersistance)
 {
     SetImagingSettings(token, settings, forcePersistance, "Set imaging settings");
 }
 public void RevertChanges()
 {
     this.current.settings = this.origin.settings;
 }
Esempio n. 12
0
 public System.Threading.Tasks.Task SetImagingSettingsAsync(string VideoSourceToken,
                                                            ImagingSettings20 ImagingSettings, bool ForcePersistence)
 {
     return(base.Channel.SetImagingSettingsAsync(VideoSourceToken, ImagingSettings, ForcePersistence));
 }
Esempio n. 13
0
 public OnvifSetImagingSettings(string uri, string userName, string password, string profToken, ImagingSettings20 settings)
     : base(uri, userName, password)
 {
     ProfToken = profToken;
     Settings  = settings;
 }
Esempio n. 14
0
        public void SetImagingSettingsInvalidSettingsTest()
        {
            ImagingSettings20 backup = null;
            string            token  = string.Empty;

            RunTest(
                () =>
            {
                VideoSource[] sources = GetAndValidateVideoSources();

                for (int i = 0; i < sources.Length; i++)
                {
                    ImagingOptions20 options = GetOptions(sources[i].token);

                    Assert(options != null, "No imaging options received", "Check if the DUT sent imaging options");

                    ImagingSettings20 initialSettings = GetImagingSettings(sources[i].token);

                    Assert(initialSettings != null, "No initial settings received", "Check if the DUT sent imaging settings");

                    ValidateImagingOptions(options);
                    ImagingSettings20 settings = GenerateInvalidImagingSettings(options);

                    RunStep(
                        () =>
                    {
                        Client.SetImagingSettings(sources[i].token, settings, false);
                    }, "Set imaging settings",
                        new ValidateTypeFault(
                            (FaultException fault, out string reason)
                            =>
                    {
                        if (fault == null)
                        {
                            reason = "No fault received";
                            return(false);
                        }

                        // SettingsInvalid
                        return(fault.IsValidOnvifFault("Sender/InvalidArgVal/SettingsInvalid", out reason));
                    }));

                    DoRequestDelay();

                    ImagingSettings20 actualSettings = GetImagingSettings(sources[i].token);

                    Assert(actualSettings != null, "No current settings received", "Check if the DUT sent imaging settings");

                    string dump;
                    bool bEqual = ImagingSettingsEqual(initialSettings, actualSettings, false, out dump);
                    if (!bEqual)
                    {
                        // save for restoring
                        backup = initialSettings;
                        token  = sources[i].token;
                    }
                    Assert(bEqual,
                           string.Format("Expected and actual settings are different.\n{0}",
                                         dump), "Check that settings have not been changed");
                }
            },
                () =>
            {
                if (backup != null)
                {
                    SetImagingSettings(token, backup, false, "Restore imaging settings");
                }
            });
        }