Some tests are not adaptable to changing code because of the way MS uses DI. A lot of DI is done by adding new parameters to the constructor.
It’s the same with async. Needing an async function somewhere can result in a huge cascade of changes.
It’s the same with async. Needing an async function somewhere can result in a huge cascade of changes.
Sure in theory this is correct but you can’t always anticipate future needs. The class may still have very clearly defined responsibility but it just needs another piece of information that you can get only with DI. I feel this over dependence on DI in .NET forces you to design around the framework and not around what makes sense.