Prueba de unidad Libgit2sharp

Actualmente estoy usando libgit2sharp y me preguntaba cómo probar mis methods allí correctamente. Escuché que las testings unitarias deberían ser independientes, pero ¿cómo debería archivar eso?

En este momento tengo tres methods:

Stage, Commit, Push. 

Ahora bien, si quiero escribir una testing unitaria para push, primero tengo que realizar la etapa y comprometerme, pero no parece correcto llamar a dos methods antes de probar el método real.

Leí algunas cosas sobre Moq, pero no pude encontrar ningún ejemplo sobre cómo simular libgit2sharp.

Gracias por adelantado