예제 #1
0
        private void buttonSend_Click(object sender, EventArgs e)
        {
            ServiceInfo serviceInfo = new ServiceInfo(textBoxAddress.Text, Convert.ToInt16(textBoxPort.Text), textBoxAddressPath.Text);
            string      resultMessage;
            double      time = 0;

            SoapClient.SendSoapRequestString(textBoxRequest.Text, textBoxResponseFile.Text, "", serviceInfo, out resultMessage, out time);
            resultMessage        = "TIME: " + time.ToString() + " ms\r\n\r\n" + resultMessage;
            resultMessage        = resultMessage.Replace("\r\n", "\n");
            resultMessage        = resultMessage.Replace("\n", "\r\n");
            resultMessage        = resultMessage.Replace("\t", "  ");
            textBoxResponse.Text = resultMessage;
        }
예제 #2
0
        private void StopMove()
        {
            ServiceInfo   serviceInfo = new ServiceInfo(textBoxAddress.Text, Convert.ToInt16(textBoxPort.Text), "/onvif/ptz");
            string        resultMessage;
            double        time        = 0;
            StringBuilder soapRequest = new StringBuilder();


            // Read content from file
            string content = "";

            using (StreamReader reader = new StreamReader("TestSuits\\Tests\\PTZ\\TC.PTZ.NVT.09\\TC.PTZ.NVT.09_REQ_02.xml"))
            {
                content = reader.ReadToEnd();
            }

            SoapClient.SendSoapRequestString(content, "", "", serviceInfo, out resultMessage, out time);
            resultMessage      = "TIME: " + time.ToString() + " ms\r\n\r\n" + resultMessage;
            resultMessage      = resultMessage.Replace("\r\n", "\n");
            resultMessage      = resultMessage.Replace("\n", "\r\n");
            resultMessage      = resultMessage.Replace("\t", "  ");
            textBoxPTZRes.Text = resultMessage;
        }
예제 #3
0
        /// <summary>
        /// Run test step
        /// </summary>
        /// <param name="step">Step information</param>
        /// <param name="serviceInfo">Host information</param>
        /// <param name="CloseConnection">Do we need close connection after each request (true recomended)</param>
        /// <returns>Test step result</returns>
        private TestStepResult RunStep(XmlNode step, ServiceInfo serviceInfo, bool CloseConnection)
        {
            TestStepResult testStepResult = new TestStepResult();

            testStepResult.Result          = false;
            testStepResult.StepId          = step.Attributes.GetNamedItem("id").InnerText;
            testStepResult.StepDescription = step.PreviousSibling.InnerText;

            string resultSoapMessage = "";
            string resultCompareMessage;

            string pathToRequestFile          = m_pathToTests + step.Attributes.GetNamedItem("fileRequest").InnerText;
            string pathToResponseFile         = m_pathToTests + step.Attributes.GetNamedItem("fileAnswer").InnerText;
            string pathToResponseFileReal     = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_response.xml";
            string pathToResponseFileRealFull = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_response_full.txt";
            string pathToCompareFile          = m_pathToTestsResult + this.TestId + "_" + testStepResult.StepId + "_compare.htm";

            testStepResult.PathToRequestFile = pathToRequestFile;

            //Send request and get answer
            double time = 0;

            if (CloseConnection)
            {
                try
                {
                    SoapClient.OpenConnection(serviceInfo);
                    testStepResult.Result = SoapClient.SendSoapRequest(pathToRequestFile, pathToResponseFileReal, pathToResponseFileRealFull, serviceInfo, out resultSoapMessage, out time, CloseConnection);
                }
                catch (Exception e)
                {
                    resultSoapMessage     = e.Message;
                    testStepResult.Result = false;
                }
                finally
                {
                    SoapClient.CloseConnection();
                }
            }
            else
            {
                testStepResult.Result = SoapClient.SendSoapRequest(pathToRequestFile, pathToResponseFileReal, pathToResponseFileRealFull, serviceInfo, out resultSoapMessage, out time, CloseConnection);
            }
            testStepResult.Time = time;

            if (testStepResult.Result)
            {
                testStepResult.PathToRealResponseFile     = pathToResponseFileReal;
                testStepResult.PathToRealResponseFileFull = pathToResponseFileRealFull;

                //Compare result to ethalon
                testStepResult.Result  = CompareResponse(pathToResponseFile, pathToResponseFileReal, out resultCompareMessage, ref pathToCompareFile);
                testStepResult.Message = resultCompareMessage;
                if (!testStepResult.Result)
                {
                    if (System.IO.File.Exists(pathToCompareFile))
                    {
                        testStepResult.PathToCompareFile = pathToCompareFile;
                    }
                }
            }
            else
            {
                testStepResult.Message = resultSoapMessage;
            }

            return(testStepResult);
        }