Пример #1
0
        public async Task <bool> OppdaterAvgang(Avreisetid nyAvreisetid)
        {
            try
            {
                Avganger gammelAvgang = await _db.Avganger.FindAsync(nyAvreisetid.Id);

                DateTime nyAvreise = _hjelp.StringTilDateTime(nyAvreisetid.Dato, nyAvreisetid.Tidspunkt);
                gammelAvgang.Avreise = nyAvreise;
                await _db.SaveChangesAsync();

                return(true);
            }
            catch (Exception e)
            {
                _log.LogInformation(e.Message);
                return(false);
            }
        }
Пример #2
0
        public async Task OppdaterAvgang_IkkeFunnet()
        {
            // Arrange
            Avreisetid avreise = new Avreisetid
            {
                Id        = 1,
                Dato      = "2020-11-12",
                Tidspunkt = "12:00"
            };

            mockRepo.Setup(br => br.OppdaterAvgang(avreise)).ReturnsAsync(false);
            // Act
            SimulerInnlogget();
            var resultat = await avgangController.OppdaterAvgang(avreise) as NotFoundObjectResult;


            // Assert
            Assert.Equal((int)HttpStatusCode.NotFound, resultat.StatusCode);
            Assert.Equal($"Endring av Avgang kunne ikke utføres med verdiene: { avreise}", resultat.Value);
        }
Пример #3
0
        public async Task OppdaterAvgang_IkkeTilgang()
        {
            // Arrange
            Avreisetid avreise = new Avreisetid
            {
                Id        = 1,
                Dato      = "2020-11-12",
                Tidspunkt = "12:00"
            };

            mockRepo.Setup(br => br.OppdaterAvgang(avreise)).ReturnsAsync(true);
            // Act
            SimulerUtlogget();
            var resultat = await avgangController.OppdaterAvgang(avreise) as UnauthorizedObjectResult;


            // Assert
            Assert.Equal((int)HttpStatusCode.Unauthorized, resultat.StatusCode);
            Assert.Equal("Ikke innlogget", resultat.Value);
        }
Пример #4
0
        public async Task OppdaterAvgang_Regex()
        {
            // Arrange
            Avreisetid avreise = new Avreisetid
            {
                Id        = 1,
                Dato      = "2020-11-12",
                Tidspunkt = "12:00"
            };

            mockRepo.Setup(br => br.OppdaterAvgang(avreise)).ReturnsAsync(true);
            avgangController.ModelState.AddModelError("Dato", "Feil i inputvalideringen på server");
            // Act
            SimulerInnlogget();
            var resultat = await avgangController.OppdaterAvgang(avreise) as BadRequestObjectResult;


            // Assert
            Assert.Equal((int)HttpStatusCode.BadRequest, resultat.StatusCode);
            Assert.Equal("Feil i inputvalideringen på server", resultat.Value);
        }
Пример #5
0
        public async Task <ActionResult> OppdaterAvgang(Avreisetid avreisetid)
        {
            if (string.IsNullOrEmpty(HttpContext.Session.GetString(_innlogget)))
            {
                return(Unauthorized("Ikke innlogget"));
            }
            if (ModelState.IsValid)
            {
                bool returOK = await _db.OppdaterAvgang(avreisetid);

                if (!returOK)
                {
                    melding = $"Endring av Avgang kunne ikke utføres med verdiene: {avreisetid}";
                    _log.LogWarning(melding);
                    return(NotFound(melding));
                }
                melding = $"Endring av Avgang ble utført med verdiene: {avreisetid}";
                _log.LogInformation(melding);
                return(Ok(melding));
            }
            _log.LogWarning(ugyldigValidering);
            return(BadRequest(ugyldigValidering));
        }