Sto cercando di trovare il modo migliore per sganciare i messagebox dalla mia logica in modo da poterla correttamente smistare. Ora mi stavo chiedendo se sarebbe stato abbastanza se avessi creato una classe helper separata (C#) che potrei stubare più tardi per la mia messagebox. Per esempio:Messagebox e Unit test
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);
}
}
Poi ogni volta che avevo bisogno di usare un messagebox mi basta usare messageboxHelper/msgBoxAlg (...) invece di messagebox.show (...). Usando il bool show potrei abilitarlo o disabilitarlo durante i test.
Mi chiedo solo se questa è la "strada giusta". Con ciò intendo, esiste un modo più semplice o migliore per farlo correttamente? Non posso semplicemente abbandonare le messagebox, ma inoltrare informazioni "vitali" all'utente ("Vuoi chiudere questa finestra?" SÌ/NO ecc.). Potrebbe anche essere che non sto usando un'adeguata ingegneria del software, e dovrei disaccoppiare di più i miei messagebox dal mio bussinesslogic?
Grazie, spiegazione molto chiara! –
Amo il termine "IDialogService" come un'astrazione! – Samuel