public void OnEnable_ConsoleCaptureTrue() { TextConsoleUI textConsoleUI = SetupTextConsoleUI(out ITextDisplay textAdapter, out IConsole console); textConsoleUI.OnEnable(); Assert.True(console.IsCapturing); }
public void OnDisable_NoCaptureInBackground_ConsoleCaptureFalse() { TextConsoleUI textConsoleUI = SetupTextConsoleUI(out ITextDisplay textAdapter, out IConsole console); textConsoleUI.CaptureInBackground = false; textConsoleUI.OnEnable(); textConsoleUI.OnDisable(); Assert.False(console.IsCapturing); }
/// <summary> /// Sets up a text console UI instance for the tests /// </summary> /// <param name="textDisplay">The text display which is used to show console's captured messages</param> /// <param name="console">The console which handles the capturing</param> /// <returns></returns> private TextConsoleUI SetupTextConsoleUI(out ITextDisplay textDisplay, out IConsole console) { textDisplay = A.Fake <ITextDisplay>(); TextConsoleUI textConsoleUI = new TextConsoleUI(textDisplay); console = A.Fake <Console>(); textConsoleUI.Console = console; return(textConsoleUI); }
public void UpdateUI_NoMessages_WritesEmptyString() { TextConsoleUI textConsoleUI = SetupTextConsoleUI(out ITextDisplay textAdapter, out IConsole console); textConsoleUI.OnEnable(); textConsoleUI.GetType() .GetMethod("UpdateUI", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic) .Invoke(textConsoleUI, null); Assert.AreEqual("", textAdapter.Text); }
public void UpdateUI_MessageGiven_WritesMessage() { const string message = "Hello World"; TextConsoleUI textConsoleUI = SetupTextConsoleUI(out ITextDisplay textAdapter, out IConsole console); ILogMessage logMessage = A.Fake <ILogMessage>(); A.CallTo(() => logMessage.Content).Returns(message); console.Messages.Add(logMessage); textConsoleUI.OnEnable(); textConsoleUI.GetType() .GetMethod("UpdateUI", System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic) .Invoke(textConsoleUI, null); Assert.AreEqual(message, textAdapter.Text); }