Beispiel #1
0
        public async void DeleteAppliedReservationAsync_failed_to_unlock_device()
        {
            // Arrange
            var unlockedDevice = Device1;

            unlockedDevice.Available      = false;
            unlockedDevice.AppiumEndpoint = "";

            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Find(_reservationApplied1.Id)).Returns(_reservationApplied1);

            var mockHttp = new MockHttpMessageHandler();

            mockHttp.When(HttpMethod.Put, $"{_httpLocalhost}/api/v1/device/{Device1.Id}")
            .Respond("application/json", JsonConvert.SerializeObject(unlockedDevice));
            mockHttp.When(HttpMethod.Get, $"{_httpLocalhost}/api/v1/device/{Device1.Id}")
            .Respond("application/json", JsonConvert.SerializeObject(Device1));

            var controller = new ReservationsAppliedController(mockRepository.Object,
                                                               new RestClient(_config.Object, new HttpClient(mockHttp), Logger), _appiumService, Logger,
                                                               _externalProcesses);

            // Act
            var result = await controller.DeleteAsync(_reservationApplied1.Id);

            // Assert
            var viewResult = Assert.IsType <ObjectResult>(result);

            Assert.Equal(500, viewResult.StatusCode);
            Assert.Equal("Failed to unlock device id: " + Device1.Id + " from reservation.", viewResult.Value);
        }
Beispiel #2
0
        public async void DeleteAppliedReservationAsync()
        {
            // Arrange
            var unlockedDevice = Device1;

            unlockedDevice.Available      = true;
            unlockedDevice.AppiumEndpoint = "";

            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Find(_reservationApplied1.Id)).Returns(_reservationApplied1);

            var mockHttp = new MockHttpMessageHandler();

            mockHttp.When(HttpMethod.Put, $"{_httpLocalhost}/api/v1/device/{Device1.Id}")
            .Respond("application/json", JsonConvert.SerializeObject(unlockedDevice));
            mockHttp.When(HttpMethod.Get, $"{_httpLocalhost}/api/v1/device/{Device1.Id}")
            .Respond("application/json", JsonConvert.SerializeObject(Device1));

            var mockAppiumService = new Mock <IAppiumService>();

            mockAppiumService.Setup(appiumService => appiumService.StopAppiumForDeviceIdAsync(Device1.Id))
            .Returns(Task.FromResult(true));

            var controller = new ReservationsAppliedController(mockRepository.Object,
                                                               new RestClient(_config.Object, new HttpClient(mockHttp), Logger), mockAppiumService.Object, Logger,
                                                               _externalProcesses);

            // Act
            var result = await controller.DeleteAsync(_reservationApplied1.Id);

            // Assert
            Assert.IsType <OkResult>(result);
        }
Beispiel #3
0
        public void GetAllAppliedReservations_empty()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.GetAll()).Returns(new List <ReservationApplied>());

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = controller.GetAllAppliedReservations();

            // Assert
            var viewResult = Assert.IsType <List <ReservationApplied> >(result);

            Assert.Empty(viewResult);
        }
Beispiel #4
0
        public async void DeleteAppliedReservationAsync_id_notFound()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Find(_reservationApplied1.Id)).Returns((ReservationApplied)null);

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = await controller.DeleteAsync(_reservationApplied1.Id);

            // Assert
            var viewResult = Assert.IsType <NotFoundObjectResult>(result);

            Assert.Equal("Reservation not found in database.", viewResult.Value);
        }
Beispiel #5
0
        public void CreateAppliedReservation_empty()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Add((ReservationApplied)null));

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = controller.Create(null);

            // Assert
            var viewResult = Assert.IsType <BadRequestObjectResult>(result);

            Assert.Equal("Reservation is empty.", viewResult.Value);
        }
Beispiel #6
0
        public void CreateAppliedReservation()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Add(_reservationApplied1));

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = controller.Create(_reservationApplied1);

            // Assert
            var viewResult = Assert.IsType <CreatedAtRouteResult>(result);

            Assert.Equal(_reservationApplied1, viewResult.Value);
        }
Beispiel #7
0
        public void GetAppliedReservationsById()
        {
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.Find(_reservationApplied1.Id)).Returns(_reservationApplied1);

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = controller.GetById(_reservationApplied1.Id);

            // Assert
            var viewResult = Assert.IsType <JsonResult>(result);

            Assert.Equal(_reservationApplied1, viewResult.Value);
        }
Beispiel #8
0
        public void GetAllAppliedReservations()
        {
            var appliedReservations = new List <ReservationApplied> {
                _reservationApplied1, _reservationApplied2
            };
            // Arrange
            var mockRepository = new Mock <IRepository <ReservationApplied> >();

            mockRepository.Setup(mpr => mpr.GetAll()).Returns(appliedReservations);

            var controller =
                new ReservationsAppliedController(mockRepository.Object, _restClient, _appiumService, Logger,
                                                  _externalProcesses);

            // Act
            var result = controller.GetAllAppliedReservations();

            // Assert
            var viewResult = Assert.IsType <List <ReservationApplied> >(result);

            Assert.Equal(2, result.Count());
            Assert.Contains(_reservationApplied1, viewResult);
            Assert.Contains(_reservationApplied2, viewResult);
        }