public NoteController(INoteRuleEngine noteRuleEngine) { this._noteRuleEngine = noteRuleEngine; }
public void Mock_Note() { var mock = new Mock <INoteRuleEngine>(); noteRuleEngine = mock.Object; noteController = new NoteController(noteRuleEngine); notes = new List <NoteModel>(); notes.Add(new NoteModel() { NoteID = 1, ContactID = 1, NoteTypeID = 1, Notes = "", TakenBy = 1, TakenTime = DateTime.Now, NoteStatusID = 1, DocumentStatusID = 1, EncounterID = null, ForceRollback = true }); var noteResponse = new Response <NoteModel>() { DataItems = notes }; noteDetails = new List <NoteDetailsModel>(); noteDetails.Add(new NoteDetailsModel() { NoteID = 1, Notes = "", ForceRollback = true }); var noteDetailsResponse = new Response <NoteDetailsModel>() { DataItems = noteDetails }; //Response<NoteModel> noteResponse = new Response<NoteModel>(); //Get Note mock.Setup(r => r.GetNotes(It.IsAny <long>())) .Callback((long id) => { noteResponse.DataItems = notes.Where(note => note.ContactID == id).ToList(); }) .Returns(noteResponse); //Add Note mock.Setup(r => r.AddNote(It.IsAny <NoteModel>())) .Callback((NoteModel noteModel) => { if (noteModel.ContactID > 0) { notes.Add(noteModel); } }) .Returns(noteResponse); //Update Note mock.Setup(r => r.UpdateNote(It.IsAny <NoteModel>())) .Callback((NoteModel noteModel) => { if (noteModel.NoteID > 0) { notes.Remove(notes.Find(note => note.NoteID == noteModel.NoteID)); notes.Add(noteModel); } }) .Returns(noteResponse); //Update NoteDetails mock.Setup(r => r.UpdateNoteDetails(It.IsAny <NoteDetailsModel>())) .Callback((NoteDetailsModel noteModel) => { if (noteModel.NoteID > 0) { noteDetails.Remove(noteDetails.Find(note => note.NoteID == noteModel.NoteID)); noteDetails.Add(noteModel); } }) .Returns(noteDetailsResponse); //Delete Note var deleteResponse = new Response <NoteModel>(); mock.Setup(r => r.DeleteNote(It.IsAny <long>(), DateTime.UtcNow)) .Callback((long id) => notes.Remove(notes.Find(note => note.NoteID == id))) .Returns(deleteResponse); }