Пример #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 BREPipelineFrameworkReceivePipelineBaseTest(string InputFileName, TestContext testContextInstance, string InstanceConfigFilePath = null,
                                                                            XPathCollection contextXPathCollection = null, XPathCollection bodyXPathCollection = null, int ExpectedNumberOfFiles = 1,
                                                                            string PipelineType               = "BREPipelineFramework.TestProject.Rcv_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 BREPipelineFramework.CustomBizUnitTestSteps.ExecuteReceivePiplineWithNullablePropertyStep
            {
                PipelineAssemblyPath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.TestProject\bin\debug\BREPipelineFramework.TestProject.dll",
                PipelineTypeName     = PipelineType,
                Source                  = InputFileName,
                DestinationDir          = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                DestinationFileFormat   = "Output {0}.txt",
                OutputContextFileFormat = "Context {0}.xml",
            };

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

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

            if (!string.IsNullOrEmpty(InputContextFileName))
            {
                pipelineTestStep.InputContextFile = InputContextFileName;
            }

            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 BREPipelineFramework.CustomBizUnitTestSteps.FileReadMultipleStep
            {
                ExpectedNumberOfFiles = ExpectedNumberOfFiles,
                DeleteFiles           = false,
                DirectoryPath         = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                SearchPattern         = "Context*.xml",
                Timeout = 5000
            };

            if (ExpectedNumberOfFiles > 0)
            {
                if (contextXPathCollection != null)
                {
                    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 fileReadMultipleStepBody = new BREPipelineFramework.CustomBizUnitTestSteps.FileReadMultipleStep
            {
                ExpectedNumberOfFiles = ExpectedNumberOfFiles,
                DeleteFiles           = false,
                DirectoryPath         = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Output Files",
                SearchPattern         = "Output*.txt",
                Timeout = 5000
            };

            if (ExpectedNumberOfFiles > 0)
            {
                if (bodyXPathCollection != null)
                {
                    var xmlValidateBodyStep = new BREPipelineFramework.CustomBizUnitTestSteps.XmlValidationStep();

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

                        xmlValidateBodyStep.XPathValidations.Add(xPathDefinitionPropertyValue);
                    }

                    fileReadMultipleStepBody.SubSteps.Add(xmlValidateBodyStep);
                }
                if (!String.IsNullOrEmpty(ExpectedOutputFileName))
                {
                    var binaryStep = new BinaryComparisonTestStep();
                    binaryStep.ComparisonDataPath = ExpectedOutputFileName;
                    //binaryStep.CompareAsUTF8 = true;
                    fileReadMultipleStepBody.SubSteps.Add(binaryStep);
                }
            }

            _BREPipelineFrameworkTest.ExecutionSteps.Add(fileReadMultipleStepBody);

            var bizUnit = new b.BizUnit(_BREPipelineFrameworkTest);

            return(bizUnit);
        }