예제 #1
0
        public void Test_TrackingFolder()
        {
            string InputFileName          = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Message.xml";
            string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_TrackingFolder Config.xml";

            XPathCollection _XPathCollection = new XPathCollection();

            var _BREPipelineFrameworkTest = new b.Xaml.TestCase();

            var pipelineTestStep = new BREPipelineFramework.CustomBizUnitTestSteps.ExecuteReceivePiplineWithNullablePropertyStep
            {
                PipelineAssemblyPath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll",
                PipelineTypeName     = "BREPipelineFramework.TestProject.Rcv_BREPipelineFramework",
                Source                  = InputFileName,
                DestinationDir          = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                DestinationFileFormat   = "Output {0}.xml",
                OutputContextFileFormat = "Context {0}.xml",
                InstanceConfigFile      = InstanceConfigFilePath
            };

            var docSpecDefinition1 = new b.TestSteps.BizTalk.Pipeline.DocSpecDefinition();

            docSpecDefinition1.AssemblyPath = @"..\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll";
            docSpecDefinition1.TypeName     = "BREPipelineFramework.TestProject.Message";

            pipelineTestStep.DocSpecs.Add(docSpecDefinition1);

            _BREPipelineFrameworkTest.ExecutionSteps.Add(pipelineTestStep);

            var fileReadMultipleStep = new b.TestSteps.File.FileReadMultipleStep
            {
                ExpectedNumberOfFiles = 2,
                DeleteFiles           = true,
                DirectoryPath         = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                SearchPattern         = "*.xml",
                Timeout = 5000
            };

            _BREPipelineFrameworkTest.ExecutionSteps.Add(fileReadMultipleStep);

            var fileReadMultipleStepTracking = new b.TestSteps.File.FileReadMultipleStep
            {
                ExpectedNumberOfFiles = 2,
                DeleteFiles           = true,
                DirectoryPath         = @"c:\temp\trackingfolder",
                SearchPattern         = "*.txt",
                Timeout = 5000
            };

            _BREPipelineFrameworkTest.ExecutionSteps.Add(fileReadMultipleStepTracking);

            var bizUnit = new b.BizUnit(_BREPipelineFrameworkTest);

            bizUnit.RunTest();
        }
예제 #2
0
        public static b.BizUnit BREPipelineFrameworkSendPipelineBaseTest(string InputFileName, TestContext testContextInstance, string InstanceConfigFilePath = null,
                                                                         XPathCollection contextXPathCollection = null, XPathCollection bodyXPathCollection = null, string PipelineType = "BREPipelineFramework.TestProject.Snd_BREPipelineFramework",
                                                                         string ExpectedOutputFileName          = null, string inputMessageType = "BREPipelineFramework.TestProject.Message", string InputContextFileName = null,
                                                                         DataLoaderBase instanceConfigLoader    = null, DataLoaderBase inputContextLoader = null, string additionalInputType = null, string yetAnotherInputType = null)
        {
            var _BREPipelineFrameworkTest = new b.Xaml.TestCase();

            var pipelineTestStep = new ExecuteSendPipelineWithNullablePropertyStep
            {
                PipelineAssemblyPath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll",
                PipelineTypeName     = PipelineType,
                SourceDir            = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files",
                SearchPattern        = InputFileName,
                Destination          = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files\Output.txt",
                OutputContextFile    = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files\Context.xml",
            };

            if (!string.IsNullOrEmpty(InstanceConfigFilePath))
            {
                pipelineTestStep.InstanceConfigFile = InstanceConfigFilePath;
            }

            if (instanceConfigLoader != null)
            {
                pipelineTestStep.InstanceConfigLoader = instanceConfigLoader;
            }

            if (inputContextLoader != null)
            {
                pipelineTestStep.InputContextLoader = inputContextLoader;
            }

            var docSpecDefinition = new b.TestSteps.BizTalk.Pipeline.DocSpecDefinition();

            docSpecDefinition.AssemblyPath = @"..\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll";
            docSpecDefinition.TypeName     = "BREPipelineFramework.TestProject.Envelope";

            pipelineTestStep.DocSpecs.Add(docSpecDefinition);

            var docSpecDefinition1 = new b.TestSteps.BizTalk.Pipeline.DocSpecDefinition();

            docSpecDefinition1.AssemblyPath = @"..\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll";
            docSpecDefinition1.TypeName     = inputMessageType;

            pipelineTestStep.DocSpecs.Add(docSpecDefinition1);

            if (!string.IsNullOrEmpty(additionalInputType))
            {
                var docSpecDefinition2 = new b.TestSteps.BizTalk.Pipeline.DocSpecDefinition();

                docSpecDefinition2.AssemblyPath = @"..\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll";
                docSpecDefinition2.TypeName     = additionalInputType;

                pipelineTestStep.DocSpecs.Add(docSpecDefinition2);
            }

            if (!string.IsNullOrEmpty(yetAnotherInputType))
            {
                var docSpecDefinition3 = new b.TestSteps.BizTalk.Pipeline.DocSpecDefinition();

                docSpecDefinition3.AssemblyPath = @"..\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll";
                docSpecDefinition3.TypeName     = yetAnotherInputType;

                pipelineTestStep.DocSpecs.Add(docSpecDefinition3);
            }


            _BREPipelineFrameworkTest.ExecutionSteps.Add(pipelineTestStep);

            var fileReadMultipleStepContext = new b.TestSteps.File.FileReadMultipleStep
            {
                ExpectedNumberOfFiles = 1,
                DeleteFiles           = false,
                DirectoryPath         = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                SearchPattern         = "Context.xml",
                Timeout = 3000
            };

            var xmlValidateContextStep = new BREPipelineFramework.CustomBizUnitTestSteps.XmlValidationStep();

            foreach (KeyValuePair <string, string> pair in contextXPathCollection.XPathQueryList)
            {
                var xPathDefinitionPropertyValue = new BREPipelineFramework.CustomBizUnitTestSteps.XPathDefinition
                {
                    Description = "Property Value Test",
                    XPath       = pair.Key,
                    Value       = pair.Value
                };

                xmlValidateContextStep.XPathValidations.Add(xPathDefinitionPropertyValue);
            }

            fileReadMultipleStepContext.SubSteps.Add(xmlValidateContextStep);

            _BREPipelineFrameworkTest.ExecutionSteps.Add(fileReadMultipleStepContext);

            var bizUnit = new b.BizUnit(_BREPipelineFrameworkTest);

            return(bizUnit);
        }