/// <summary> /// Služi da se, pri otvaranju popup-a napomene za određenog učenika na određenom času, /// u tekstu napomene ispiše prethodno unet tekst napomene ukoliko ta napomena već /// postoji u bazi. Ukoliko ne postoji, prostor za unos teksta napomene će biti prazan i /// pri čuvanju unetog, kreira se nova napomena u bazi. U suprotnom bi se samo /// uradio update napomene /// </summary> /// <param name="ucenikId"></param> /// <param name="casId"></param> /// <returns></returns> private JsonResult VratiNapomenu(int ucenikId, int casId) { var napomena = _context.Napomene .Where(n => n.UcenikId == ucenikId) .SingleOrDefault(n => n.CasId == casId); if (napomena != null) { //Koristi se klasa DTONapomena var dtoNapomena = new DTONapomena { NapomenaId = napomena.NapomenaId, Opis = napomena.Opis, ProfesorId = napomena.ProfesorId, UcenikId = napomena.UcenikId, CasId = napomena.CasId }; return(Json(dtoNapomena, JsonRequestBehavior.AllowGet)); } else { return(Json(new DTONapomena(), JsonRequestBehavior.AllowGet)); } }
private void DodajIliIzmeniNapomenu(DTONapomena dtoNapomena) { if (dtoNapomena != null) { var napomena = new Napomena { NapomenaId = dtoNapomena.NapomenaId, Opis = dtoNapomena.Opis, UcenikId = dtoNapomena.UcenikId, ProfesorId = dtoNapomena.ProfesorId, CasId = dtoNapomena.CasId }; _context.Napomene.AddOrUpdate(napomena); _context.SaveChanges(); } }
public void NapomeneController_DodajIliIzmeniNapomenu() { var dtoNapomena = new DTONapomena() { NapomenaId = 1, Opis = "Napomena 1", CasId = 1, ProfesorId = 1, UcenikId = 2 }; var mockContext = new Mock <ApplicationDbContext>(); var mockSetNapomene = new Mock <MockableDbSet <Napomena> >(); DbSet <Napomena> dbSetNapomene = mockSetNapomene.Object; mockContext.Setup(x => x.Napomene).Returns(dbSetNapomene); var controller = new NapomeneController(mockContext.Object); controller.DodajIliIzmeniNapomenu(dtoNapomena); mockSetNapomene.Verify(x => x.AddOrUpdate(It.IsAny <Napomena>()), Times.AtLeastOnce()); mockContext.Verify(x => x.SaveChanges(), Times.AtLeastOnce()); }