Skip to content

Commit

Permalink
(maint) Search methods MockLogger
Browse files Browse the repository at this point in the history
 Add ability for having MockLogger determine if a message was logged.
  • Loading branch information
ferventcoder committed Oct 5, 2015
1 parent fd51bf7 commit 6de4e51
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions src/chocolatey.tests/MockLogger.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,41 @@ public void reset()
LogMessagesToConsole = false;
}

public bool contains_message(string expectedMessage)
{
return contains_message_count(expectedMessage) != 0;
}

public bool contains_message(string expectedMessage, LogLevel level)
{
return contains_message_count(expectedMessage, level) != 0;
}

public int contains_message_count(string expectedMessage)
{
int messageCount = 0;
foreach (var messageLevel in Messages)
{
foreach (var message in messageLevel.Value.or_empty_list_if_null())
{
if (message.Contains(expectedMessage)) messageCount++;
}
}

return messageCount;
}

public int contains_message_count(string expectedMessage, LogLevel level)
{
int messageCount = 0;
foreach (var message in MessagesFor(level).or_empty_list_if_null())
{
if (message.Contains(expectedMessage)) messageCount++;
}

return messageCount;
}

public bool LogMessagesToConsole { get; set; }

private readonly Lazy<ConcurrentDictionary<string, IList<string>>> _messages = new Lazy<ConcurrentDictionary<string, IList<string>>>();
Expand Down

0 comments on commit 6de4e51

Please sign in to comment.