// POST api/KalenderApi public HttpResponseMessage Post(Vaktskjema vaktInn) { string userName = User.Identity.Name; if (ModelState.IsValid) { bool ok = _VaktBLL.RegistrerVakt(vaktInn, userName); if (ok) { var response = Request.CreateResponse(HttpStatusCode.Created, vaktInn); string uri = Url.Link("DefaultApi", new { id = vaktInn.Vaktid }); response.Headers.Location = new Uri(uri); return response; } return new HttpResponseMessage() { StatusCode = HttpStatusCode.NotFound, Content = new StringContent("Kunne ikke sette inn databasen") }; } return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); /* return new HttpResponseMessage() { StatusCode = HttpStatusCode.NotFound, Content = new StringContent("Kunne i") };*/ }
public void Post_Vakt_Bad_request() { var commandBus = new Mock<IVaktLogikk>(); commandBus.Setup(c => c.RegistrerVakt(It.IsAny<Vaktskjema>(), It.IsAny<string>())).Returns(true); // Mapper.CreateMap<CategoryFormModel, CreateOrUpdateCategoryCommand>(); var httpConfiguration = new HttpConfiguration(); WebApiConfig.Register(httpConfiguration); var httpRouteData = new HttpRouteData(httpConfiguration.Routes["DefaultApi"], new HttpRouteValueDictionary { { "controller", "VaktApi" } }); var controller = new Jobbplan.Controllers.VaktApiController(commandBus.Object) { Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/VaktApi/") { Properties = { { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration }, { HttpPropertyKeys.HttpRouteDataKey, httpRouteData } } } }; Vaktskjema vakter = new Vaktskjema(); vakter.start = ""; vakter.end = ""; // The ASP.NET pipeline doesn't run, so validation don't run. controller.ModelState.AddModelError("start", "mock error message"); var response = controller.Post(vakter); // Assert commandBus.Verify(e => e.RegistrerVakt(vakter, "mats"), Times.Never); Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode); // Act }
public bool LedigVakt (Vaktskjema innVakt) { if(innVakt.BrukerId==0) { return true; } return false; }
public HttpResponseMessage Put(Vaktskjema endrevakt) { string userName = User.Identity.Name; if (ModelState.IsValid) { bool ok = _VaktBLL.EndreVakt(endrevakt, userName); if (ok) { return Request.CreateResponse(HttpStatusCode.OK, endrevakt); } return new HttpResponseMessage() { StatusCode = HttpStatusCode.NotFound, Content = new StringContent("Kunne ikke endre vakt") }; } return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); }
public void Post_Vakt_Ok() { Vaktskjema vakter = new Vaktskjema() { start = "22.12.2012", startTid = "16.43", endTid = "18.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; var commandBus = new Mock<IVaktLogikk>(); commandBus.Setup(c => c.RegistrerVakt(It.IsAny<Vaktskjema>(), It.IsAny<string>())).Returns(true); // Mapper.CreateMap<CategoryFormModel, CreateOrUpdateCategoryCommand>(); var httpConfiguration = new HttpConfiguration(); WebApiConfig.Register(httpConfiguration); var httpRouteData = new HttpRouteData(httpConfiguration.Routes["DefaultApi"], new HttpRouteValueDictionary { { "controller", "VaktApi" } }); var controller = new Jobbplan.Controllers.VaktApiController(commandBus.Object) { Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/VaktApi/") { Properties = { { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration }, { HttpPropertyKeys.HttpRouteDataKey, httpRouteData } } } }; // Act var response = controller.Post(vakter); // Assert Assert.AreEqual(HttpStatusCode.Created, response.StatusCode); // var newCategory = JsonConvert.DeserializeObject<CategoryModel>(response.Content.ReadAsStringAsync().Result); Assert.AreEqual(string.Format("http://localhost/api/VaktApi/{0}", vakter.Vaktid), response.Headers.Location.ToString()); }
public bool EndreVakt(Vaktskjema EndreVakt, string brukernavn) { var dbtp = new DbTransaksjonerProsjekt(); if (!dbtp.ErAdmin(brukernavn, EndreVakt.ProsjektId) && !dbtp.ErEier(brukernavn, EndreVakt.ProsjektId)) { return false; } Dbkontekst db = new Dbkontekst(); var NyEndreVakt = db.Vakter.FirstOrDefault(p => p.VaktId == EndreVakt.Vaktid); string start = EndreVakt.start + " " + EndreVakt.startTid; string end; IFormatProvider culture = System.Threading.Thread.CurrentThread.CurrentCulture; DateTime dt1 = DateTime.ParseExact(start, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); DateTime dt2; if (EndreVakt.end != "" && EndreVakt.endDato == true) { end = EndreVakt.end + " " + EndreVakt.endTid; dt2 = DateTime.ParseExact(end, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); } else { end = EndreVakt.start + " " + EndreVakt.endTid; dt2 = DateTime.ParseExact(end, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); } int result = DateTime.Compare(dt1, dt2); if (result > 0 || result == 0) { return false; } if (!dbtp.ErAdmin(brukernavn, NyEndreVakt.ProsjektId) && !dbtp.ErEier(brukernavn, NyEndreVakt.ProsjektId)) { return false; } try { NyEndreVakt.Beskrivelse = EndreVakt.Beskrivelse; NyEndreVakt.BrukerId = EndreVakt.BrukerId; NyEndreVakt.start = dt1; NyEndreVakt.end = dt2; NyEndreVakt.title = EndreVakt.title; if (LedigVakt(EndreVakt)) { NyEndreVakt.Ledig = true; NyEndreVakt.color = "#5CB85C"; } else { NyEndreVakt.Ledig = false; NyEndreVakt.color = "#3A87AD"; } db.SaveChanges(); return true; } catch (Exception feil) { return false; } }
public bool RegistrerVakt (Vaktskjema innVakt, string brukernavn) { var dbtp = new DbTransaksjonerProsjekt(); if (!dbtp.ErAdmin(brukernavn, innVakt.ProsjektId) && !dbtp.ErEier(brukernavn, innVakt.ProsjektId)) { return false; } string start = innVakt.start+" "+innVakt.startTid; string end; IFormatProvider culture = System.Threading.Thread.CurrentThread.CurrentCulture; DateTime dt1 = DateTime.ParseExact(start, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); DateTime dt2; if (innVakt.end != "" && innVakt.endDato == true) { end = innVakt.end + " " + innVakt.endTid; dt2 = DateTime.ParseExact(end, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); } else { end = innVakt.start + " " + innVakt.endTid; dt2 = DateTime.ParseExact(end, "dd.MM.yyyy H:mm", culture, System.Globalization.DateTimeStyles.AssumeLocal); } int result = DateTime.Compare(dt1, dt2); if (result > 0 || result==0) { return false; } var nyVakt = new Vakt() { start = dt1, end = dt2, title = innVakt.title, Beskrivelse = innVakt.Beskrivelse, BrukerId = innVakt.BrukerId, ProsjektId = innVakt.ProsjektId }; if (LedigVakt(innVakt)) { nyVakt.Ledig = true; nyVakt.color = "#5CB85C"; } using (var db = new Dbkontekst()) { try { db.Vakter.Add(nyVakt); db.SaveChanges(); return true; } catch (Exception feil) { return false; } } }
public void Endre_vakt_end_before_start() { // Try finding a product by id Vaktskjema vakt = new Vaktskjema() { start = "22.12.2012", startTid = "16.43", endTid = "15.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; bool ok = this.mockProductRepository.EndreVakt(vakt, "*****@*****.**"); Assert.IsFalse(ok); }
public void Endre_Vakt_Ikke_Admin() { Vaktskjema vakt = new Vaktskjema() { Vaktid = 1, start = "22.12.2012", startTid = "16.43", endTid = "18.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; bool ok = this.mockProductRepository.EndreVakt(vakt, "*****@*****.**"); Assert.IsFalse(ok); }
public void Ikke_Ledig_Vakt() { var dbtv = new DbTransaksjonerVakt(); var innVakt = new Vaktskjema(); innVakt.BrukerId = 1; var actual = dbtv.LedigVakt(innVakt); Assert.AreEqual(false, actual); }
public void Registrer_Vakt_OK_admin() { Vaktskjema vakt = new Vaktskjema() { start = "22.12.2012", startTid = "16.43", endTid = "18.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; bool ok = this.mockProductRepository.RegistrerVakt(vakt, "*****@*****.**"); Assert.IsTrue(ok); }
public void Post_Vakt_NOT_FOUND() { Vaktskjema vakter = new Vaktskjema() { start = "22.12.2012", startTid = "16.43", endTid = "18.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; Vaktskjema vakter1 = new Vaktskjema() { start = "22.12.2012", startTid = "19.43", endTid = "18.43", title = "Dagvakt", Beskrivelse = "Opplæring", BrukerId = 1, ProsjektId = 1 }; var commandBus = new Mock<IVaktLogikk>(); commandBus.Setup(c => c.RegistrerVakt(vakter, It.IsAny<string>())).Returns(true); // Mapper.CreateMap<CategoryFormModel, CreateOrUpdateCategoryCommand>(); var httpConfiguration = new HttpConfiguration(); WebApiConfig.Register(httpConfiguration); var httpRouteData = new HttpRouteData(httpConfiguration.Routes["DefaultApi"], new HttpRouteValueDictionary { { "controller", "VaktApi" } }); var controller = new Jobbplan.Controllers.VaktApiController(commandBus.Object) { Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/VaktApi/") { Properties = { { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration }, { HttpPropertyKeys.HttpRouteDataKey, httpRouteData } } } }; var response = controller.Post(vakter1); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); // Act }
public void PUT_Endre_vakt_NOT_found() { Vaktskjema vakt = new Vaktskjema(); vakt.Vaktid = 0; var commandBus = new Mock<IVaktLogikk>(); commandBus.Setup(c => c.EndreVakt(vakt, It.IsAny<string>())).Returns(false); // Mapper.CreateMap<CategoryFormModel, CreateOrUpdateCategoryCommand>(); var httpConfiguration = new HttpConfiguration(); WebApiConfig.Register(httpConfiguration); var httpRouteData = new HttpRouteData(httpConfiguration.Routes["DefaultApi"], new HttpRouteValueDictionary { { "controller", "VaktApi2" } }); var controller = new VaktApi2Controller(commandBus.Object) { Request = new HttpRequestMessage(HttpMethod.Put, "http://localhost/api/VaktApi2/") { Properties = { { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration }, { HttpPropertyKeys.HttpRouteDataKey, httpRouteData } } } }; var response = controller.Put(vakt); Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode); }
public bool RegistrerVakt(Vaktskjema innVakt, string brukernavn) { return _repository.RegistrerVakt(innVakt, brukernavn); }
public bool LedigVakt(Vaktskjema inn) { return _repository.LedigVakt(inn); }
public bool EndreVakt(Vaktskjema EndreVakt, string brukernavn) { return _repository.EndreVakt(EndreVakt, brukernavn); }