public BaseModelFormatter(IFormatParser parser, IKeyFormatPrecedenceProvider keyformat, IPropertyProvider props) { formatparser = parser; keyformatprovider = keyformat; propertyprovider = props; }
public void WcfParserFindsNoMessagesFromServiceLogWhenClientTraceRequested() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.AddServiceSide, WcfTraceFileTestData.SubtractServiceSide)) { // Act and assert Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserFiltersOutRSTMessages() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.RstIssue, WcfTraceFileTestData.RstSct, WcfTraceFileTestData.RstrIssue)) { // Act and assert Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserReturnsNothingIfAllMessagesAreFiltered() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.Mex)) { // Act and assert Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserIgnoresServiceSideNullMessage() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserServiceTraceFromString(WcfTraceFileTestData.ServiceSideNullMessage)) { // Act and assert Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserWithMetadataExchangeAtTheEnd() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.Add, WcfTraceFileTestData.Mex)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Add", new DateTime(2007, 02, 21, 08, 39, 21, 966)); } }
public void WcfParserFindsNoMessagesFromClientLogWhenServiceTraceRequestedForOneWayOperation() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserServiceTraceFromString(WcfTraceFileTestData.OneWayClientSide)) { // Act and assert Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserWarnsNotMessageLogIfFindsATrace() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.TraceRecord)) { // Act and assert TestHelper.TestForUserException(() => sut.ReadNextMessage(), "The file in memory is a trace file, a message log file is required."); } }
public void WcfParserWarnsNotMessageLogIfGivenRandomXmlFile() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.RandomXmlData)) { // Act and assert TestHelper.TestForUserException(() => sut.ReadNextMessage(), "The file in memory is not a valid message log file."); } }
public void WcfParserWarnsNotMessageLogIfSourcePresentButNameIsMissing() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.LogRecordWithSourceButNoSourceName)) { // Act and assert TestHelper.TestForUserException(() => sut.ReadNextMessage(), "The file in memory is not a valid message log file."); } }
public void WcfParserCanParseAsmxWrappedSoap12() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.ProcessSimpleAsmxRequestWrappedSoap12)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessSimpleAsmxRequestWrapped", new DateTime(2008, 09, 17, 14, 31, 46, 623)); Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserCanParseAOneWayServiceSideMessageLog() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserServiceTraceFromString(WcfTraceFileTestData.OneWayServiceSide)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://contoso.com/service/test/IArithmetic/OneWayOperation", new DateTime(2009, 07, 23, 09, 54, 38, 155)); Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserFindsClientAndServiceMessagesFromClientAndServiceLogWhenClientAndServiceTraceRequested() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserFromString(true, true, WcfTraceFileTestData.Add, WcfTraceFileTestData.SubtractServiceSide)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Add", new DateTime(2007, 02, 21, 08, 39, 21, 966)); TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Sub", new DateTime(2007, 07, 28, 16, 35, 40, 587)); Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserFindsClientAndServiceMessagesFromClientAndServiceLogWhenClientAndServiceTraceRequestedForOneWayOperation() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserFromString(true, true, WcfTraceFileTestData.OneWayClientSide, WcfTraceFileTestData.OneWayServiceSide)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://contoso.com/service/test/IArithmetic/OneWayOperation", new DateTime(2009, 07, 23, 09, 52, 16, 616)); TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://contoso.com/service/test/IArithmetic/OneWayOperation", new DateTime(2009, 07, 23, 09, 54, 38, 155)); Assert.IsNull(sut.ReadNextMessage()); } }
public void WcfParserNoMessageBodies() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.AddWithNoMessageBody)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert Assert.IsNull(ans); } }
public void FiddlerParserDoesNotDetectSoapActionWhenPatternPresentInResponseData() { // Arrange using (IFormatParser sut = TestHelper.CreateFiddlerFormatParserFromString( FiddlerTraceFileTestData.ProcessMultipleParametersWrappedWithSoapActionInResponse, FiddlerTraceFileTestData.ProcessSimpleAsmxRequestBare)) { // Act and assert TestHelper.AssertParsedMessageNoHeader(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessMultipleParametersWrapped", DateTime.MinValue); TestHelper.AssertParsedMessageNoHeader(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessSimpleAsmxRequestBare", DateTime.MinValue); } }
public void FiddlerParserReadSingleMessage() { // Arrange using (IFormatParser sut = TestHelper.CreateFiddlerFormatParserFromString(FiddlerTraceFileTestData.ProcessSimpleAsmxRequestWrapped)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert TestHelper.AssertParsedMessageNoHeader(ans, "http://contoso.com/asmxservice/test/ProcessSimpleAsmxRequestWrapped", DateTime.MinValue); } }
public void WcfParserReadRequestBodyAfterANoServiceLevelLoggingMessage() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.AddWithoutServiceLevelLogging, WcfTraceFileTestData.Add)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert TestHelper.AssertParsedMessage(ans, "http://tempuri.org/IArithmetic/Add", new DateTime(2007, 02, 21, 08, 39, 21, 966)); } }
public void WcfParserCanParseWhenAddressingNamespaceOnActionHeaderRatherThanEnvelopeAndNotFirstHeader() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserServiceTraceFromString(WcfTraceFileTestData.RequestWithAddressingNamespaceOnTheActionElementAndNotFirstHeader)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert TestHelper.AssertParsedMessage(ans, "http://contoso.com/service/test/ISharePrices/PriceOneWay", new DateTime(2010, 06, 22, 15, 22, 51, 613)); } }
public void WcfParserCanParseWhenAddressingNamespaceOnActionHeaderRatherThanEnvelope() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserServiceTraceFromString(WcfTraceFileTestData.RequestWithAddressingNamespaceOnTheActionElement)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert TestHelper.AssertParsedMessage(ans, "http://tempuri.org/ICalculator/Ping", new DateTime(2009, 04, 24, 18, 10, 59, 668)); } }
public void WcfParserNullReturnedAfterLastMessage() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.Add)) { // Act sut.ReadNextMessage(); ParsedMessage ans = sut.ReadNextMessage(); // Assert Assert.IsNull(ans); } }
public void UTILCreateConfiguredType() { // Arrange typeType t = TestHelper.CreateConfigTypeForWcfFormatParser(); // Act using (IFormatParser dummy = Utility.CreateConfiguredType <IFormatParser>(t)) { // Assert Assert.IsNotNull(dummy); Assert.IsInstanceOfType(dummy, typeof(WcfParser)); } }
public void WcfParserNullReturnedIfANoServiceLevelLoggingMessageFollowsAProperMessageBody() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.Add, WcfTraceFileTestData.AddWithoutServiceLevelLogging)) { // Act sut.ReadNextMessage(); ParsedMessage ans = sut.ReadNextMessage(); // Assert Assert.IsNull(ans); } }
/// <summary> /// Initialises a new instance of the <see cref="Parser"/> class. /// </summary> /// <param name="formatParser">The format-specific parser to be used.</param> /// <param name="soapActionMode">Indicates how to process the list of SOAP actions.</param> /// <param name="soapActions">List of SOAP actions to be filtered for. Only the SOAP actions in this list are /// returned. If the list is empty all SOAP actions are returned.</param> public Parser(IFormatParser formatParser, SoapActionMode soapActionMode, params string[] soapActions) { this.formatParser = formatParser; this.soapActionMode = soapActionMode; if (soapActions == null) { this.soapActions = new List <string>(); } else { this.soapActions = new List <string>(soapActions); } }
public void FiddlerParserReadMultipleMessages() { // Arrange using (IFormatParser sut = TestHelper.CreateFiddlerFormatParserFromString( FiddlerTraceFileTestData.ProcessSimpleAsmxRequestWrapped, FiddlerTraceFileTestData.ProcessSimpleAsmxRequestBare, FiddlerTraceFileTestData.ProcessMultipleParametersWrapped)) { // Act and assert TestHelper.AssertParsedMessageNoHeader(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessSimpleAsmxRequestWrapped", DateTime.MinValue); TestHelper.AssertParsedMessageNoHeader(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessSimpleAsmxRequestBare", DateTime.MinValue); TestHelper.AssertParsedMessageNoHeader(sut.ReadNextMessage(), "http://contoso.com/asmxservice/test/ProcessMultipleParametersWrapped", DateTime.MinValue); } }
public void WcfParserSequenceOfMessagesIsReadFollowedByNull() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString(WcfTraceFileTestData.Add, WcfTraceFileTestData.Add2, WcfTraceFileTestData.Add3)) { // Act and assert TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Add", new DateTime(2007, 02, 21, 08, 39, 21, 966)); TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Add2", new DateTime(2007, 02, 21, 08, 39, 22, 067)); TestHelper.AssertParsedMessage(sut.ReadNextMessage(), "http://tempuri.org/IArithmetic/Add3", new DateTime(2007, 02, 21, 08, 39, 22, 071)); // Assert Assert.IsNull(sut.ReadNextMessage()); } }
public void FiddlerParserMessageCanBeDeserialized() { // Arrange using (IFormatParser sut = TestHelper.CreateFiddlerFormatParserFromString(FiddlerTraceFileTestData.ProcessSimpleAsmxRequestWrapped)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert Deserializer ds = new Deserializer(); CallParameterInfo[] parameters = ds.DeserializeInputParameters(ans.Message, typeof(GeneratedContractsAsmx.TestAsmxServiceSoap).GetMethod("ProcessSimpleAsmxRequestWrapped")); Assert.AreEqual <int>(1, parameters.Length); Assert.IsNotNull(parameters[0].Value); } }
public void ValidateInput(IFormatParser parser, string input, DateTime?start, DateTime?end) { Trace.WriteLine(String.Format("Now: {0}", _now)); var range = parser.Parse(input, _now); if (range == null) { Assert.Null(start); Assert.Null(end); return; } Assert.Equal(start, range.Start); Assert.Equal(end, range.End); }
public void WcfParserNoServiceLevelLogging() { // Arrange using (IFormatParser sut = TestHelper.CreateWcfFormatParserClientTraceFromString( WcfTraceFileTestData.AddWithoutServiceLevelLogging, WcfTraceFileTestData.AddWithoutServiceLevelLogging, WcfTraceFileTestData.AddWithoutServiceLevelLogging)) { // Act ParsedMessage ans = sut.ReadNextMessage(); // Assert Assert.IsNull(ans); } }
public void ValidateInput(IFormatParser parser, string input, DateTime?start, DateTime?end) { _logger.LogInformation("Input: {Input}, Now: {Now}, Start: {Start}, End: {End}", input, _now, start, end); var range = parser.Parse(input, _now); if (range == null) { Assert.Null(start); Assert.Null(end); return; } Assert.Equal(start, range.Start); Assert.Equal(end, range.End); }