Estoy tratando de encontrar la mejor manera de desacoplar messageboxes de mi lógica para que pueda probarlos correctamente. Ahora me preguntaba si sería suficiente si solo hiciera una clase de ayuda separada (C#) que puedo guardar más tarde para mi messagebox. Por ejemplo:Messagebox y prueba de unidad
static class messageBoxHelper
{
public static void msgBoxAlg(string message, string title, MessageBoxButtons buttons, MessageBoxIcon icons, bool show)
{
if (show)
{
MessageBox.Show(message, title, buttons, icons);
}
}
A continuación, cada vez que había necesidad de utilizar un cuadro de mensaje que acababa de uso messageboxHelper/msgBoxAlg (...) en lugar de messagebox.show (...). Usando el bool show podría habilitarlo o deshabilitarlo durante la prueba.
Me pregunto si esta es la "manera correcta". Con lo que quiero decir, ¿hay una manera más fácil o mejor de hacer esto correctamente? No puedo abandonar las cajas de mensajes, sino que transmiten información "vital" al usuario ("¿Desea cerrar esta ventana?" SÍ/NO, etc.). También podría ser que no estoy utilizando la ingeniería de software adecuada, y ¿debería desacoplar mis messageboxes de mi businesslogic más?
¡Gracias, explicación muy clara! –
¡Me encanta el término "IDialogService" como una abstracción! – Samuel