public void ZeroValuesNoException() { //-- Arrange var node = new NameValuePairActivityLogNode("Test.MessageOne"); _threadLog.AppendNode(node); //-- Act var singleLineText = node.SingleLineText; var fullDetailsText = node.FullDetailsText; var nameValuePairs = node.NameValuePairsText; //-- Assert Assert.That(singleLineText, Is.EqualTo("Message one")); Assert.That(fullDetailsText, Is.EqualTo(ExpectedBaseNameValuePairs.Replace(" ", System.Environment.NewLine).Replace("_", " "))); Assert.That(nameValuePairs, Is.EqualTo(ExpectedBaseNameValuePairs.Replace("_", " "))); }
public void OneValueNoFormatNoDetailNoException() { //-- Arrange var node = new NameValuePairActivityLogNode<string>( "Test.MessageOne", value1: new LogNameValuePair<string> { Name = "accountId", Value = "ABCD1234" }); _threadLog.AppendNode(node); //-- Act var singleLineText = node.SingleLineText; var fullDetailsText = node.FullDetailsText; var nameValuePairs = node.NameValuePairsText; //-- Assert Assert.That(singleLineText, Is.EqualTo("Message one: accountId=ABCD1234")); //Assert.That(fullDetailsText, Is.EqualTo(ExpectedBaseNameValuePairs.Replace(" ", System.Environment.NewLine))); Assert.That(nameValuePairs, Is.EqualTo(ExpectedBaseNameValuePairs.Replace("_", " ") + " accountId=ABCD1234")); }
//------------------------------------------------------------------------------------------------------------------------------------------------- public void ThisIsMyVoidMethodWithParameters(Action<string, int, decimal> method, string str, int num, decimal value) { var pair1 = new LogNameValuePair<string> { Name = "str", Value = str }; var pair2 = new LogNameValuePair<int> { Name = "num", Value = num }; var pair3 = new LogNameValuePair<decimal> { Name = "value", Value = value }; using ( ILogActivity activity = new NameValuePairActivityLogNode<string, int, decimal>("Test.ThisIsMyVoidMethodWithParameters", pair1, pair2, pair3) ) { try { method(str, num, value); } catch ( Exception e ) { activity.Fail(e); throw; } } }
//------------------------------------------------------------------------------------------------------------------------------------------------- public void ThisIsMyVoidMethod(Action method) { using ( ILogActivity activity = new NameValuePairActivityLogNode("Test.ThisIsMyVoidMethod") ) { try { method(); } catch ( Exception e ) { activity.Fail(e); throw; } } }
//------------------------------------------------------------------------------------------------------------------------------------------------- public string ThisIsMyFunctionWithParameters(Func<int, decimal, string> method, int num, decimal value) { var pair1 = new LogNameValuePair<int> { Name = "num", Value = num }; var pair2 = new LogNameValuePair<decimal> { Name = "value", Value = value }; using ( ILogActivity activity = new NameValuePairActivityLogNode<int, decimal>("Test.ThisIsMyFunctionWithParameters", pair1, pair2) ) { try { return method(num, value); } catch ( Exception e ) { activity.Fail(e); throw; } } }
//------------------------------------------------------------------------------------------------------------------------------------------------- public bool ThisIsMyFunction(Func<bool> method) { using ( ILogActivity activity = new NameValuePairActivityLogNode("Test.ThisIsMyFunction") ) { try { return method(); } catch ( Exception e ) { activity.Fail(e); throw; } } }
public void ZeroValuesWithException() { //-- Arrange var exception = new DivideByZeroException(); var node = new NameValuePairActivityLogNode("Test.MessageOne"); _threadLog.AppendNode(node); ((ILogActivity)node).Fail(exception); //-- Act var singleLineText = node.SingleLineText; var fullDetailsText = node.FullDetailsText; var nameValuePairs = node.NameValuePairsText; //-- Assert const string expectedNameValuePairs = "2015-01-30_15:22:54.345 app=A1 node=N1 instance=I1 env=E1 message=Test.MessageOne level=Error " + "logid=e99f7886838e4c37b433888132ef5f86 exceptionType=System.DivideByZeroException exception=\"Attempted_to_divide_by_zero.\" duration=0"; Assert.That(singleLineText, Is.EqualTo("Message one")); Assert.That(fullDetailsText, Is.EqualTo( expectedNameValuePairs .Replace(" ", System.Environment.NewLine) .Replace("_", " ") + System.Environment.NewLine + exception)); Assert.That(nameValuePairs, Is.EqualTo(expectedNameValuePairs.Replace("_", " "))); }