public void Test_AddAndGetStringFromCache() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.txt"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_AddStringToCache Config.xml"; var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath); _BREPipelineFrameworkTest.RunTest(); string value = BREPipelineFramework.SampleInstructions.MetaInstructions.CachingMetaInstructions.cache["TestKey"].ToString(); Assert.IsTrue(value == "TestCache", "Did not find the expected value in the cache"); InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_GetStringFromCache Config.xml"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='ProxyName'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/http-properties'][@Value='TestCache'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, contextXPathCollection: _XPathCollection); _BREPipelineFrameworkTest.RunTest(); Thread.Sleep(5000); bool stillThere = BREPipelineFramework.SampleInstructions.MetaInstructions.CachingMetaInstructions.cache.Contains("TestKey"); Assert.IsFalse(stillThere, "Cached item should have been deleted by now"); }
public void Test_DuplicateHelperMetaInstructions() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_DuplicateHelperMetaInstructions Config.xml"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='Property1'][@Promoted='false'][@Namespace='https://BREPipelineFramework.TestProject.BREPipelineFramework_PropSchema'][@Value='10'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); _XPathCollection.XPathQueryList.Add(numberOfPropertiesXPath, "1"); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); try { _BREPipelineFrameworkTest.RunTest(); Assert.Fail("Was expecting for the pipeline test step to fail"); } catch (Exception e) { if (e.InnerException.Message != "Duplicate throw exception helper worked as expected") { Assert.Fail("Was expecting for the pipeline test to fail with the specific error - Duplicate throw exception helper worked as expected, but instead got - " + e.InnerException.Message); } } }
public void Test_AddCustomContextPropertyToCache_OverrideContextKey() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.txt"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_AddCustomContextPropertyToCache_OverrideContextKey Config.xml"; string InputContextFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Context Files\Test_AddCustomContextPropertyToCache_OverrideContextKey.xml"; var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, InputContextFileName: InputContextFileName); _BREPipelineFrameworkTest.RunTest(); object cacheItemsObj = BREPipelineFramework.SampleInstructions.MetaInstructions.CachingMetaInstructions.cache["http://schemas.microsoft.com/BizTalk/2003/system-properties#InterchangeID = 123"]; if (cacheItemsObj != null) { Dictionary <string, object> cacheItems = (Dictionary <string, object>)cacheItemsObj; object _SMTPFromObj = cacheItems["http://schemas.microsoft.com/BizTalk/2003/smtp-properties#From"]; if (_SMTPFromObj != null) { Assert.IsTrue(_SMTPFromObj.ToString() == "*****@*****.**", "Unexpected SMTP.From value of " + _SMTPFromObj.ToString() + " found in cache."); } else { Assert.Fail("Cache did not contain a value for SMTP.From"); } } else { Assert.Fail("Cache did not contain a context property dictionary from BTS.TransmitWorkID of 123."); } InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_ReapplyContextPropertiesFromCache_OverrideContextKey Config.xml"; InputContextFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Context Files\Test_ReapplyContextPropertiesFromCache_OverrideContextKey.xml"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='From'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/smtp-properties'][@Value='*****@*****.**'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, InputContextFileName: InputContextFileName, contextXPathCollection: _XPathCollection); _BREPipelineFrameworkTest.RunTest(); InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_DeleteContextFromCache_OverrideContextKey Config.xml"; _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, InputContextFileName: InputContextFileName); _BREPipelineFrameworkTest.RunTest(); cacheItemsObj = BREPipelineFramework.SampleInstructions.MetaInstructions.CachingMetaInstructions.cache["http://schemas.microsoft.com/BizTalk/2003/system-properties#InterchangeID = 123"]; if (cacheItemsObj != null) { Assert.Fail("Was expecting cached context to be deleted but it was still there."); } }
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(); }
public void MessageWithNoNamespace() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\NoNamespace.xml"; string ExpectedOutputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\NoNamespace.xml"; XPathCollection _XPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, PipelineType: "BREPipelineFramework.TestProject.Rcv_BREPipelineFrameworkXMLRIP", ExpectedOutputFileName: ExpectedOutputFileName, inputMessageType: "BREPipelineFramework.TestProject.MessageWithNoNamespace"); _BREPipelineFrameworkTest.RunTest(); }
public void Test_NoApplicationContext() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_NoApplicationContext Config.xml"; XPathCollection _XPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_AddNode() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Message_Transform.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_AddNode Config.xml"; string ExpectedOutputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Expected Output Files\Test_AddNode.xml"; XPathCollection _XPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, ExpectedOutputFileName: ExpectedOutputFileName); _BREPipelineFrameworkTest.RunTest(); }
public void Test_SndXmlMessageNoCachedAcceptHeader() { string InputFileName = "JSONConvertedToXML.xml"; string InputContextFile = "ContentTypeNotSpecified.xml"; string ExpectedOutputFile = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\JSONConvertedToXML.xml"; XPathCollection contextXPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkSendPipelineBaseTest(InputFileName, testContextInstance, PipelineType: "BREPipelineFramework.TestProject.Snd_API2", InputContextFileName: InputContextFile, contextXPathCollection: contextXPathCollection, ExpectedOutputFileName: ExpectedOutputFile); _BREPipelineFrameworkTest.RunTest(); }
public void Test_NotEnabled() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_NotEnabled Config.xml"; string ExpectedOutputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(numberOfPropertiesXPath, "0"); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection, ExpectedOutputFileName: ExpectedOutputFileName); _BREPipelineFrameworkTest.RunTest(); }
public void Test_SndHTMLMessage() { BREPipelineFramework.SampleInstructions.MetaInstructions.CachingMetaInstructions.cache["BRE Pipeline Framework Accept Header Caching {3C66F687-FD72-46F7-84FC-6CD9CDFB8B5D}"] = "text/html"; string InputFileName = "JSONConvertedToXML.xml"; string InputContextFile = "ContentTypeNotSpecified.xml"; string ExpectedOutputFile = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Expected Output Files\HTMLOutput.html"; XPathCollection contextXPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkSendPipelineBaseTest(InputFileName, testContextInstance, PipelineType: "BREPipelineFramework.TestProject.Snd_API2", InputContextFileName: InputContextFile, contextXPathCollection: contextXPathCollection, ExpectedOutputFileName: ExpectedOutputFile); _BREPipelineFrameworkTest.RunTest(); }
public void Test_CustomMetaInstruction() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_CustomMetaInstruction Config.xml"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='Element'][@Promoted='false'][@Namespace='https://BREPipelineFramework.TestProject.BREPipelineFramework_PropSchema'][@Value='Test'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_DuplicateContextMetaInstructions() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.txt"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_DuplicateContextMetaInstructions Config.xml"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='DestinationParty'][@Promoted='true'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/system-properties'][@Value='ExpectedResult'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); _XPathCollection.XPathQueryList.Add(numberOfPropertiesXPath, "1"); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_FFDisassemblerPropertiesNoStream() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\bretest.txt"; string XPathQuery = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='Element'][@Promoted='true'][@Namespace='https://BREPipelineFramework.TestProject.BREPipelineFramework_PropSchema'][@Value='Today'])"; string ExpectedValue = "True"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, PipelineType: "BREPipelineFramework.TestProject.Rcv_BRETestFFNoStream", contextXPathCollection: _XPathCollection, inputMessageType: "BREPipelineFramework.TestProject.BRETest"); _BREPipelineFrameworkTest.RunTest(); }
public void Test_UncaughtPolicyExceptionRIP() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_UncaughtPolicyExceptionRIP Config.xml"; XPathCollection _XPathCollection = new XPathCollection(); string XPathQuery1 = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='MessageDestination'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/system-properties'][@Value='SuspendQueue'])"; string XPathQuery2 = "boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='SuspendMessageOnRoutingFailure'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/system-properties'][@Value='True'])"; string ExpectedValue = "True"; _XPathCollection.XPathQueryList.Add(XPathQuery1, ExpectedValue); _XPathCollection.XPathQueryList.Add(XPathQuery2, ExpectedValue); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_HTTPHeaderManipulation() { string applicationContext = "Test_HTTPHeaderManipulation"; string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.txt"; string InputContextFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Context Files\HTTPHeaders_Input.xml"; DataLoaderBase InstanceConfigLoader = TestHelpers.CreateInstanceConfig(testContextInstance, applicationContext); string XPathQuery = "/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='HttpHeaders'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2006/01/Adapters/WCF-properties']/@*[local-name()='Value' and namespace-uri()='']"; string ExpectedValue = "Test: overwrite" + Environment.NewLine + "Important_User: True" + Environment.NewLine + "whoah: help" + Environment.NewLine; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(XPathQuery, ExpectedValue); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, instanceConfigLoader: InstanceConfigLoader, InputContextFileName: InputContextFileName, contextXPathCollection: _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_TrackingFolder_Bad() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_TrackingFolder_Bad Config.xml"; XPathCollection _XPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); try { _BREPipelineFrameworkTest.RunTest(); Assert.Fail("Was expecting for the pipeline test step to fail"); } catch (Exception e) { if (!e.GetBaseException().Message.Contains("does not resolve to a valid folder location")) { Assert.Fail("Was expecting an exception due to a malformed directory but instead got the following exception - " + e.GetBaseException().Message); } } }
public void Test_UncaughtPolicyException() { string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Test.xml"; string InstanceConfigFilePath = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Instance Config Files\Test_UncaughtPolicyException Config.xml"; XPathCollection _XPathCollection = new XPathCollection(); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, InstanceConfigFilePath, _XPathCollection); try { _BREPipelineFrameworkTest.RunTest(); Assert.Fail("Was expecting for the pipeline test step to fail"); } catch (Exception e) { if (!e.GetBaseException().Message.Contains("Forced exception")) { Assert.Fail("Was expecting an exception due to a nonexistant directory but instead got the following exception - " + e.GetBaseException().Message); } } }
public void Test_DisassembleXMLPromotePropertiesOnly() { string applicationContext = "Test_DisassembleXMLPromotePropertiesOnly"; string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\TestEnvelope.xml"; DataLoaderBase InstanceConfigLoader = TestHelpers.CreateInstanceConfig(testContextInstance, applicationContext); string inputMessageType = "BREPipelineFramework.TestProject.Message"; string envelopeType = "BREPipelineFramework.TestProject.Envelope"; string expectedOutput = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\TestEnvelope.xml"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add("boolean(/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='MessageType'][@Promoted='true'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/system-properties'][@Value='http://BREPipelineFramework#Envelope'])", "True"); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, instanceConfigLoader: InstanceConfigLoader, inputMessageType: inputMessageType, ExpectedOutputFileName: expectedOutput, yetAnotherInputType: envelopeType, contextXPathCollection: _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
public void Test_DisassembleFFWithHeader() { string applicationContext = "Test_DisassembleFFWithHeader"; string InputFileName = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Input Files\Sample_FF_Header_output.txt"; DataLoaderBase InstanceConfigLoader = TestHelpers.CreateInstanceConfig(testContextInstance, applicationContext); string _FFMessageType = "BREPipelineFramework.TestProject.Sample_FF"; string headerType = "BREPipelineFramework.TestProject.Sample_FF_Header"; string expectedOutput = testContextInstance.TestDir + @"\..\..\BREPipelineFramework.UnitTests\Sample Files\Expected Output Files\Sample_FF_output.xml"; XPathCollection _XPathCollection = new XPathCollection(); _XPathCollection.XPathQueryList.Add(@"/*[local-name()='MessageInfo']/*[local-name()='ContextInfo']/*[local-name()='Property'][@Name='FlatFileHeaderDocument'][@Promoted='false'][@Namespace='http://schemas.microsoft.com/BizTalk/2003/xmlnorm-properties']/@*[local-name()='Value' and namespace-uri()='']", @"<Sample_Header xmlns=""http://BREPipelineFramework.TestProject.Sample_FF""><Body xmlns="""">Testing</Body></Sample_Header>"); var _BREPipelineFrameworkTest = TestHelpers.BREPipelineFrameworkReceivePipelineBaseTest(InputFileName, testContextInstance, instanceConfigLoader: InstanceConfigLoader, inputMessageType: _FFMessageType, ExpectedOutputFileName: expectedOutput, additionalInputType: headerType, contextXPathCollection: _XPathCollection); _BREPipelineFrameworkTest.RunTest(); }
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); }