c# - How to inject a mocked dbcontext in a service layer of a .net application? -


i writing unit tests , having following problem:

i supposed write tests service layer. service layer consists of different kind of services, of implement servicebase class. main idea of service base expressed in following logic

protected void getcontext(action<datacontext> action) {     getcontext(action, datacontextoptions.default); }  protected void getcontextautosave(action<datacontext> action) {     getcontext(action, datacontextoptions.autosave); }  private static void getcontext(action<datacontext> action, datacontextoptions options) {     using (var context = new datacontext(options))     {         action(context);     } } 

so whenever interaction db needed, following logic applied in services:

getcontext(datacontext => {     perform logic on datacontext; }); 

the datacontext class implements base class has constructor setting dbcontext. how application interacts db. unit testing part have decided go moq , pleased capabilities. able fake dbcontext wondering how inject in hierarchy of program can test logic services it. more specific question class above stated {servicebase,datacontext,datacontextbase}, has mocked when call getcontext method end fake dbcontext? architecture of logic interaction db, open recommendations. please share thoughts.


Comments

Popular posts from this blog

javascript - Any ideas when Firefox is likely to implement lengthAdjust and textLength? -

matlab - "Contour not rendered for non-finite ZData" -

delphi - Indy UDP Read Contents of Adata -