Beispiel #1
0
        public void Post_RegistrerProsjektReq_bad_request()
        {
            var commandBus = new Mock <IProsjektLogikk>();

            commandBus.Setup(c => c.LeggTilBrukerRequest(It.IsAny <ProsjektrequestSkjema>(), 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", "ProsjektreqApi" }
            });
            var controller = new ProsjektreqApiController(commandBus.Object)
            {
                Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/ProsjektreqApi/")
                {
                    Properties =
                    {
                        { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration },
                        { HttpPropertyKeys.HttpRouteDataKey,     httpRouteData     }
                    }
                }
            };
            // Act
            var pros = new ProsjektrequestSkjema();

            pros.TilBruker = "";
            // The ASP.NET pipeline doesn't run, so validation don't run.
            controller.ModelState.AddModelError("TilBruker", "mock error message");
            var response = controller.Post(pros);

            // Assert
            Assert.AreEqual(HttpStatusCode.BadRequest, response.StatusCode);
        }
Beispiel #2
0
        public void Legg_Til_Bruker_Request_OK_Admin()
        {
            ProsjektrequestSkjema p = new ProsjektrequestSkjema();

            p.ProsjektId = 1;
            p.TilBruker  = "*****@*****.**";
            bool testProduct = this.mockProductRepository.LeggTilBrukerRequest(p, "*****@*****.**");

            Assert.IsTrue(testProduct);
        }
Beispiel #3
0
        public void Legg_Til_Bruker_Request_False_Bruker_finnesIkke()
        {
            ProsjektrequestSkjema p = new ProsjektrequestSkjema();

            p.ProsjektId = 1;
            p.TilBruker  = "*****@*****.**";
            bool testProduct = this.mockProductRepository.LeggTilBrukerRequest(p, "*****@*****.**");

            Assert.IsFalse(testProduct);
        }
Beispiel #4
0
        public void Post_RegistrerProsjektReq_NOT_FOUND()
        {
            ProsjektrequestSkjema nyReq = new ProsjektrequestSkjema()
            {
                ProsjektId = 1,
                TilBruker  = "*****@*****.**"
            };
            ProsjektrequestSkjema nyReq1 = new ProsjektrequestSkjema()
            {
                ProsjektId = 1,
                TilBruker  = "*****@*****.**"
            };
            var commandBus = new Mock <IProsjektLogikk>();

            commandBus.Setup(c => c.LeggTilBrukerRequest(nyReq, 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", "ProsjektreqApi" }
            });
            var controller = new ProsjektreqApiController(commandBus.Object)
            {
                Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/ProsjektreqApi/")
                {
                    Properties =
                    {
                        { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration },
                        { HttpPropertyKeys.HttpRouteDataKey,     httpRouteData     }
                    }
                }
            };

            // Act
            var response = controller.Post(nyReq1);

            // Assert
            Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode);
        }
Beispiel #5
0
      public HttpResponseMessage Post(ProsjektrequestSkjema reqInn)
      {
          string UserName = User.Identity.Name;

          if (ModelState.IsValid)
          {
              bool ok = _ProsjektBLL.LeggTilBrukerRequest(reqInn, UserName);
              if (ok)
              {
                  var    response = Request.CreateResponse(HttpStatusCode.Created, reqInn);
                  string uri      = Url.Link("DefaultApi", null);
                  response.Headers.Location = new Uri(uri);
                  return(response);
              }
              return(new HttpResponseMessage()
                {
                    StatusCode = HttpStatusCode.NotFound,
                    Content = new StringContent("Kunne ikke sende melding")
                });
          }
          return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState));
      }
Beispiel #6
0
        public bool LeggTilBrukerRequest(ProsjektrequestSkjema pReq, string brukernavn)
        {
            int bId    = BrukerId(brukernavn);
            int bIdTil = BrukerId(pReq.TilBruker);
            int pId    = pReq.ProsjektId;

            if (!ErAdmin(brukernavn, pReq.ProsjektId) && !ErEier(brukernavn, pReq.ProsjektId))
            {
                return(false);
            }

            if (bIdTil == 0)
            {
                return(false);
            }
            var nyRequest = new Prosjektrequest()
            {
                BrukerIdFra = bId,
                BrukerIdTil = bIdTil,
                ProsjektId  = pId,
                Akseptert   = false,
                Sendt       = DateTime.Now
            };

            using (var db = new Dbkontekst())
            {
                try
                {
                    db.Prosjektrequester.Add(nyRequest);
                    db.SaveChanges();
                    return(true);
                }
                catch (Exception feil)
                {
                    return(false);
                }
            }
        }
Beispiel #7
0
        public void Post_RegistrerProsjektReq_Ok()
        {
            ProsjektrequestSkjema nyReq = new ProsjektrequestSkjema()
            {
                ProsjektId = 1,
                TilBruker  = "*****@*****.**"
            };
            var commandBus = new Mock <IProsjektLogikk>();

            commandBus.Setup(c => c.LeggTilBrukerRequest(It.IsAny <ProsjektrequestSkjema>(), 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", "ProsjektreqApi" }
            });
            var controller = new ProsjektreqApiController(commandBus.Object)
            {
                Request = new HttpRequestMessage(HttpMethod.Post, "http://localhost/api/ProsjektreqApi/")
                {
                    Properties =
                    {
                        { HttpPropertyKeys.HttpConfigurationKey, httpConfiguration },
                        { HttpPropertyKeys.HttpRouteDataKey,     httpRouteData     }
                    }
                }
            };
            // Act
            var response = controller.Post(nyReq);

            // Assert
            Assert.AreEqual(HttpStatusCode.Created, response.StatusCode);
            // var newCategory = JsonConvert.DeserializeObject<CategoryModel>(response.Content.ReadAsStringAsync().Result);
            Assert.AreEqual(string.Format("http://localhost/api/ProsjektreqApi"), response.Headers.Location.ToString());
        }
Beispiel #8
0
 public bool LeggTilBrukerRequest(ProsjektrequestSkjema pReq, string brukernavn)
 {
     return(_repository.LeggTilBrukerRequest(pReq, brukernavn));
 }