Utilizando Moq para verificar la ejecución de métodos privados

Quiero probar la siguiente lógica (obviamente, esta es una versión simplificada de mi método):

public void myPublicMethod(params) {

    if(some_condition)
        privateMethod1();
    else
        privateMethod2();
} 

Tengo todas las demás dependencias del método eliminadas, y lo configuré para garantizar que alguna_condición sea verdadera. Lo que quiero hacer es verificar que mi privateMethod1 () se llame exactamente una vez, y privateMethod2 () no se llame en absoluto. ¿Es esto posible hacer con Moq?

Aquí hay algunas notas sobre el tema:

privateMethod1 () y privateMethod2 () están dentro de la misma clase que myPublicMethod, por lo que no puedo crear un objeto simulado para esta clase.Los cuerpos de privateMethod1 / 2 contienen muchas, muchas dependencias de la clase que contiene estos y myPublicMethod, por lo que dividir privateMethod1 / 2 en su propia clase auxiliar sería prohibitivamente largo

¿Alguna idea? Gracias por adelantado. Estoy dispuesto a aceptar que esto no se puede hacer, pero me gustaría saber de una forma u otra.