Пример #1
0
        public void Setup()
        {
            _mocker               = AutoMock.GetLoose();
            _memoryCache          = new MemoryCache(new MemoryCacheOptions());
            _conferenceCache      = new ConferenceCache(_memoryCache);
            _eventComponentHelper = new EventComponentHelper();
            var claimsPrincipal = new ClaimsPrincipalBuilder().Build();

            _testConference = _eventComponentHelper.BuildConferenceForTest();

            var context = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = claimsPrincipal
                }
            };

            var eventHandlerFactory = new EventHandlerFactory(_eventComponentHelper.GetHandlers());

            _sut = _mocker.Create <ParticipantsController>(new TypedParameter(typeof(IEventHandlerFactory), eventHandlerFactory), new TypedParameter(typeof(IConferenceCache), _conferenceCache));
            _sut.ControllerContext = context;

            _eventComponentHelper.Cache.Set(_testConference.Id, _testConference);
            _eventComponentHelper.RegisterUsersForHubContext(_testConference.Participants);
        }
Пример #2
0
        private static async Task Listen()
        {
            HttpListener listener = new HttpListener();

            listener.Prefixes.Add("http://localhost:8881/");
            listener.Start();
            Console.WriteLine("Ожидание подключений...");

            while (listener.IsListening)
            {
                HttpListenerContext context = await listener.GetContextAsync();

                HttpListenerRequest request = context.Request;
                BaseController      targetController;

                if (request.Url.LocalPath.Contains("vote"))
                {
                    targetController = new VoteController(Service, Logger);
                }
                else
                {
                    if (request.Url.LocalPath.Contains("participants"))
                    {
                        targetController = new ParticipantsController(Service, Logger);
                    }
                    else
                    {
                        targetController = new IndexController(Logger);
                    }
                }

                targetController.Handle(context);
            }
        }
Пример #3
0
        public void TestParticipantsControllerInscriptions()
        {
            var participantController = new ParticipantsController();
            var resultat = participantController.Inscriptions() as ViewResult;

            Assert.AreEqual("", resultat.ViewName);
        }
Пример #4
0
        public void Setup()
        {
            _memoryCache          = new MemoryCache(new MemoryCacheOptions());
            _conferenceCache      = new ConferenceCache(_memoryCache);
            _eventComponentHelper = new EventComponentHelper();
            _videoApiClientMock   = new Mock <IVideoApiClient>();
            var claimsPrincipal = new ClaimsPrincipalBuilder().Build();

            _testConference = _eventComponentHelper.BuildConferenceForTest();
            _mockLogger     = new Mock <ILogger <ParticipantsController> >();

            var context = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = claimsPrincipal
                }
            };

            var eventHandlerFactory = new EventHandlerFactory(_eventComponentHelper.GetHandlers());

            _controller = new ParticipantsController(_videoApiClientMock.Object, eventHandlerFactory, _conferenceCache,
                                                     _mockLogger.Object)
            {
                ControllerContext = context
            };
            _eventComponentHelper.Cache.Set(_testConference.Id, _testConference);
            _eventComponentHelper.RegisterUsersForHubContext(_testConference.Participants);
        }
Пример #5
0
        public void Setup()
        {
            _mocker = AutoMock.GetLoose();
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <UpdateParticipantDisplayNameRequest, UpdateParticipantRequest>()).Returns(_mocker.Create <UpdateParticipantRequestMapper>());
            var eventHandlerMock = _mocker.Mock <IEventHandler>();

            _mocker.Mock <IEventHandlerFactory>().Setup(x => x.Get(It.IsAny <EventHubEventType>())).Returns(eventHandlerMock.Object);

            var claimsPrincipal = new ClaimsPrincipalBuilder().Build();

            var eventComponentHelper = new EventComponentHelper();

            _testConference = eventComponentHelper.BuildConferenceForTest();
            _testConference.Participants[0].Username = ClaimsPrincipalBuilder.Username;

            var context = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = claimsPrincipal
                }
            };

            _sut = _mocker.Create <ParticipantsController>();
            _sut.ControllerContext = context;
        }
Пример #6
0
        public void Setup()
        {
            _mocker = AutoMock.GetLoose();
            var eventHandlerMock = _mocker.Mock <IEventHandler>();

            _mocker.Mock <IEventHandlerFactory>().Setup(x => x.Get(It.IsAny <EventHubEventType>())).Returns(eventHandlerMock.Object);

            var claimsPrincipal      = new ClaimsPrincipalBuilder().Build();
            var eventComponentHelper = new EventComponentHelper();

            _testConference = eventComponentHelper.BuildConferenceForTest();
            _testConference.Participants[0].Username = ClaimsPrincipalBuilder.Username;

            var context = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = claimsPrincipal
                }
            };

            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <Conference, IEnumerable <JudgeInHearingResponse>, IEnumerable <ParticipantContactDetailsResponseVho> >()).Returns(_mocker.Create <ParticipantStatusResponseForVhoMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <EventType, string>()).Returns(_mocker.Create <EventTypeReasonMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <ConferenceEventRequest, Conference, CallbackEvent>()).Returns(_mocker.Create <CallbackEventMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <IEnumerable <ParticipantSummaryResponse>, List <ParticipantForUserResponse> >()).Returns(_mocker.Create <ParticipantForUserResponseMapper>());

            _sut = _mocker.Create <ParticipantsController>();
            _sut.ControllerContext = context;
        }
Пример #7
0
        public async void Can_Use_Repository()
        {
            // Triple A
            // Arrange
            Participant participant = new Participant {
                Login = "******", Password = "******", Participant_Type = Models.ParticipantType.Doctor
            };
            List <ParticipantDto> participants = new List <ParticipantDto>();

            participants.Add(new ParticipantDto {
                Login = "******", Password = "******", ConfirmPassword = "******", Participant_Type = Models.ParticipantType.Doctor
            });
            participants.Add(new ParticipantDto {
                Login = "******", Password = "******", ConfirmPassword = "******", Participant_Type = Models.ParticipantType.Establishment
            });
            Mock <IParticipantsRepository> mockRepo = new Mock <IParticipantsRepository>();

            mockRepo.Setup(m => m.GetParticipantsAsync()).Returns(Task.FromResult(participants));
            Mock <JWTSettings> mockJWT = new Mock <JWTSettings>();

            ParticipantsController controller = new ParticipantsController(mockRepo.Object, mockJWT.Object);

            //ACT
            ActionResult <IEnumerable <ParticipantDto> > result = await controller.GetParticipants();

            IEnumerable <ParticipantDto> created = result.Value;

            //Assert
            Assert.Equal(created, participants);
        }
Пример #8
0
        public void Setup()
        {
            _conferenceCacheMock     = new Mock <IConferenceCache>();
            _videoApiClientMock      = new Mock <IVideoApiClient>();
            _eventHandlerFactoryMock = new Mock <IEventHandlerFactory>();
            _eventHandlerMock        = new Mock <IEventHandler>();
            _mockLogger = new Mock <ILogger <ParticipantsController> >();

            _eventHandlerFactoryMock.Setup(x => x.Get(It.IsAny <EventHubEventType>())).Returns(_eventHandlerMock.Object);

            var claimsPrincipal = new ClaimsPrincipalBuilder().Build();

            _testConference = _eventComponentHelper.BuildConferenceForTest();
            _testConference.Participants[0].Username = ClaimsPrincipalBuilder.Username;

            var context = new ControllerContext
            {
                HttpContext = new DefaultHttpContext
                {
                    User = claimsPrincipal
                }
            };

            _controller = new ParticipantsController(_videoApiClientMock.Object, _eventHandlerFactoryMock.Object,
                                                     _conferenceCacheMock.Object, _mockLogger.Object)
            {
                ControllerContext = context
            };
        }
        public void Setup()
        {
            _mocker = AutoMock.GetLoose();
            _eventComponentHelper = new EventComponentHelper();

            var judge          = CreateParticipant("Judge", "Judge");
            var individual     = CreateParticipant("Individual", "Claimant");
            var interpreter    = CreateParticipant("Interpreter", "Claimant");
            var representative = CreateParticipant("Representative", "Defendant");

            individual.LinkedParticipants.Add(new LinkedParticipant {
                LinkedId = interpreter.Id, LinkType = LinkType.Interpreter
            });
            interpreter.LinkedParticipants.Add(new LinkedParticipant {
                LinkedId = individual.Id, LinkType = LinkType.Interpreter
            });

            _participants = new List <Participant>
            {
                judge, individual, representative, interpreter
            };

            var claimsPrincipal = new ClaimsPrincipalBuilder().WithRole(AppRoles.VhOfficerRole).Build();

            _sut = SetupControllerWithClaims(claimsPrincipal);
        }
Пример #10
0
        public async Task <IActionResult> Edit(int id, Case _case, List <Participant> participants, MotorClaim motorClaim, Basic basic, Repetytorium repetytorium, string varover, string overlap)
        {
            if (id != _case.ID)
            {
                ViewData["Error"] = "Wyst¹pi³ b³¹d Nie zgadzaj¹ siê numery spraw.";
                return(View("Error"));
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _case.UserId = UserID();
                    _context.Update(_case);
                    _context.Basics.Update(basic);
                    if (motorClaim.CaseID == _case.ID)
                    {
                        _context.MotorClaims.Update(motorClaim);
                    }
                    _context.Repetytoriums.Update(repetytorium);
                    foreach (Participant participant in participants)
                    {
                        _context.Update(participant);
                    }
                    _case.repetytorium = repetytorium;
                    await new CalendarController(_context).AddEventFromCase(_case);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException ex)
                {
                    if (!CaseExists(_case.ID))
                    {
                        ViewData["Error"] = ex.Message;
                        return(View("Error"));
                    }
                    else
                    {
                        ViewData["Error"] = ex.Message;
                        return(View("Error"));
                    }
                }
                id = _case.ID;

                if (overlap == null)
                {
                    overlap = varover;
                }

                if (overlap == "participants")
                {
                    ParticipantsController.AddParticipant(_case.ID, _context);
                }

                return(RedirectToAction("Edit", new { id, overlap }));
            }
            return(View(_case));
        }
        public void Setup()
        {
            _conferenceCacheMock     = new Mock <IConferenceCache>();
            _videoApiClientMock      = new Mock <IVideoApiClient>();
            _eventHandlerFactoryMock = new Mock <IEventHandlerFactory>();
            _mockLogger = new Mock <ILogger <ParticipantsController> >();

            _controller = new ParticipantsController(_videoApiClientMock.Object, _eventHandlerFactoryMock.Object,
                                                     _conferenceCacheMock.Object, _mockLogger.Object);
        }
Пример #12
0
        public void Setup()
        {
            _mocker = AutoMock.GetLoose();

            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <Conference, IEnumerable <JudgeInHearingResponse>, IEnumerable <ParticipantContactDetailsResponseVho> >()).Returns(_mocker.Create <ParticipantStatusResponseForVhoMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <EventType, string>()).Returns(_mocker.Create <EventTypeReasonMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <ConferenceEventRequest, Conference, CallbackEvent>()).Returns(_mocker.Create <CallbackEventMapper>());
            _mocker.Mock <IMapperFactory>().Setup(x => x.Get <IEnumerable <ParticipantSummaryResponse>, List <ParticipantForUserResponse> >()).Returns(_mocker.Create <ParticipantForUserResponseMapper>());

            _sut = _mocker.Create <ParticipantsController>();
        }
Пример #13
0
        public void TestInit()
        {
            userProvider = new Mock <IUserProvider>();
            serviceMock  = new Mock <IParticipantService>();
            serviceMock.Setup(x => x.GetParticipantsAsync(It.IsAny <QueryableOperator <SimpleParticipantDTO> >()))
            .ReturnsAsync(new PagedQueryResults <SimpleParticipantDTO>(1, new List <SimpleParticipantDTO>()));

            serviceMock.Setup(x => x.GetParticipantsByProjectIdAsync(It.IsAny <int>(), It.IsAny <QueryableOperator <SimpleParticipantDTO> >())).
            ReturnsAsync(new PagedQueryResults <SimpleParticipantDTO>(1, new List <SimpleParticipantDTO>()));

            controller = new ParticipantsController(serviceMock.Object, userProvider.Object);
        }
Пример #14
0
        public void Listen()
        {
            var context  = HttpListener.GetContext();
            var request  = context.Request;
            var response = context.Response;

            var logger     = new Logger();
            var repository = new ParticipantsRepository();
            var service    = new ParticipantsService(repository);

            var indexController        = new IndexController(service, logger);
            var voteController         = new VoteController(service, logger);
            var participantsController = new ParticipantsController(service, logger);

            if (context.Request.IsWebSocketRequest)
            {
                HandleWebsocket(context);
            }
            else
            {
                try
                {
                    var fileName = request.RawUrl.Substring(1);
                    fileName = string.IsNullOrWhiteSpace(fileName) ? "index.html" : fileName;
                    Console.WriteLine($"Client is looking for {fileName}");

                    switch (fileName)
                    {
                    case "index.html":
                        indexController.Handle(context);
                        break;

                    case "vote.html":
                        voteController.Handle(context);
                        break;

                    case "participants.html":
                        participantsController.Handle(context);
                        break;

                    default:
                        HandleStaticFile(context);
                        break;
                    }
                }
                finally
                {
                    response.OutputStream.Close();
                }
            }
        }
Пример #15
0
        public async Task FindParticipantAsync_ShouldBeNotFoundObjectResult()
        {
            // Arrange
            TestMock.ParticipantQuery.Setup(participantQuery => participantQuery.FindParticipantAsync(It.IsAny <ParticipantId>())).Verifiable();

            var controller = new ParticipantsController(TestMock.ParticipantQuery.Object, TestMapper);

            // Act
            var result = await controller.FindParticipantAsync(new ParticipantId());

            // Assert
            result.Should().BeOfType <NotFoundObjectResult>();

            TestMock.ParticipantQuery.Verify(participantQuery => participantQuery.FindParticipantAsync(It.IsAny <ParticipantId>()), Times.Once);
        }
        public void Setup()
        {
            MockQueryHandler         = new Mock <IQueryHandler>();
            MockCommandHandler       = new Mock <ICommandHandler>();
            MockVideoPlatformService = new Mock <IVideoPlatformService>();
            _mockLogger = new Mock <ILogger <ParticipantsController> >();

            TestConference = new ConferenceBuilder()
                             .WithParticipant(UserRole.Judge, null)
                             .WithParticipant(UserRole.Individual, "Claimant", null, null, RoomType.ConsultationRoom1)
                             .WithParticipant(UserRole.Representative, "Claimant")
                             .WithParticipant(UserRole.Individual, "Defendant")
                             .WithParticipant(UserRole.Representative, "Defendant")
                             .Build();

            Controller = new ParticipantsController(MockCommandHandler.Object, MockQueryHandler.Object,
                                                    MockVideoPlatformService.Object, _mockLogger.Object);
        }
Пример #17
0
        private void WriteToClient(HttpListenerContext context)
        {
            try
            {
                BaseController      targetController;
                HttpListenerRequest request = context.Request;

                if (request.Url.AbsolutePath == "/vote.html" || request.Url.AbsolutePath == "/vote")
                {
                    if (request.Url.AbsolutePath == "/vote")
                    {
                        dateModificat = DateTime.Now;
                    }
                    targetController = container.Resolve("Vote") as BaseController;
                }
                else if (request.Url.AbsolutePath == "/participants.html" || request.Url.AbsolutePath == "/participants_list")
                {
                    targetController = new ParticipantsController(participantsService, logger, dateModificat);
                }
                else if (request.Url.AbsolutePath == "/index.html" || request.Url.AbsolutePath == "/")
                {
                    targetController = container.Resolve("Index") as BaseController;
                }
                else
                {
                    context.Response.StatusCode = 404;
                    return;
                }

                targetController.Handle(context);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                if (context != null)
                {
                    context.Response.OutputStream.Close();
                }
            }
        }
Пример #18
0
        public void Setup()
        {
            _eventComponentHelper = new EventComponentHelper();
            _videoApiClientMock   = new Mock <IVideoApiClient>();
            _mockLogger           = new Mock <ILogger <ParticipantsController> >(MockBehavior.Loose);
            _mockConferenceCache  = new Mock <IConferenceCache>();

            var judge          = CreateParticipant("Judge", "Judge");
            var individual     = CreateParticipant("Individual", "Claimant");
            var representative = CreateParticipant("Representative", "Defendant");

            _participants = new List <Participant>
            {
                judge, individual, representative
            };

            var claimsPrincipal = new ClaimsPrincipalBuilder().WithRole(AppRoles.VhOfficerRole).Build();

            _controller = SetupControllerWithClaims(claimsPrincipal);
        }
Пример #19
0
        public static void HttpWebServer()
        {
            ServiceLocator.Register <IParticipantsRepository, ParticipantsRepository>();
            ServiceLocator.Register <IParticipantsService, ParticipantsService>();
            ServiceLocator.Register <ILogger, Logger>();

            HttpListener listener = new HttpListener();

            listener.Prefixes.Add("http://localhost:8881/");
            listener.Start();

            BaseController targetController;

            ParticipantsService service = (ParticipantsService)ServiceLocator.Resolve(typeof(IParticipantsService));
            Logger logger = (Logger)ServiceLocator.Resolve(typeof(ILogger));

            while (listener.IsListening)
            {
                HttpListenerContext  context  = listener.GetContext();
                HttpListenerRequest  request  = context.Request;
                HttpListenerResponse response = context.Response;

                string requestPath = ROOT_PATH + request.Url.LocalPath;

                if (requestPath.Contains("participants"))
                {
                    targetController = new ParticipantsController(service, logger);
                }
                else if (requestPath.Contains("vote"))
                {
                    targetController = new VoteController(service, logger);
                }
                else
                {
                    targetController = new IndexController(service, logger);
                }
                targetController.Handle(context);
            }
        }
Пример #20
0
        public async Task FindParticipantAsync_ShouldBeOkObjectResult()
        {
            // Arrange
            var challengeFaker = TestData.FakerFactory.CreateChallengeFaker(95632852, Game.LeagueOfLegends, ChallengeState.InProgress);

            var challenge = challengeFaker.FakeChallenge();

            var participants = challenge.Participants;

            TestMock.ParticipantQuery.Setup(participantQuery => participantQuery.FindParticipantAsync(It.IsAny <ParticipantId>()))
            .ReturnsAsync(participants.First())
            .Verifiable();

            var controller = new ParticipantsController(TestMock.ParticipantQuery.Object, TestMapper);

            // Act
            var result = await controller.FindParticipantAsync(new ParticipantId());

            // Assert
            result.Should().BeOfType <OkObjectResult>();

            TestMock.ParticipantQuery.Verify(participantQuery => participantQuery.FindParticipantAsync(It.IsAny <ParticipantId>()), Times.Once);
        }
Пример #21
0
        public async void BadConfirmPassword()
        {
            // Triple A
            // Arrange
            Mock <IParticipantsRepository> mockRepo = new Mock <IParticipantsRepository>();
            Mock <JWTSettings>             mockJWT  = new Mock <JWTSettings>();

            ParticipantsController controller = new ParticipantsController(mockRepo.Object, mockJWT.Object);

            var model = new ParticipantDto
            {
                Login            = "******",
                Password         = "******",
                ConfirmPassword  = "******",
                Participant_Type = ParticipantType.Doctor
            };

            //ACT
            var result = await controller.PostParticipant(model);

            //ASSERT
            Assert.IsType <StatusCodeResult>(result.Result);
        }
Пример #22
0
        public async void InvalidModelTest()
        {
            // Triple A
            // Arrange
            Mock <IParticipantsRepository> mockRepo = new Mock <IParticipantsRepository>();
            Mock <JWTSettings>             mockJWT  = new Mock <JWTSettings>();
            Mock <IMapper> mockMapper = new Mock <IMapper>();

            ParticipantsController controller = new ParticipantsController(mockRepo.Object, mockJWT.Object);

            controller.ModelState.AddModelError("Login", "Required"); // need to manually simulate the model state error because the model state validation is only triggered during runtime.
            var model = new ParticipantDto
            {
                Password         = "******",
                ConfirmPassword  = "******",
                Participant_Type = ParticipantType.Doctor
            };

            //ACT
            ActionResult <ParticipantDto> result = await controller.PostParticipant(model);

            //ASSERT
            Assert.IsType <BadRequestObjectResult>(result.Result);
        }
Пример #23
0
 public void Setup()
 {
     _queryHandlerMock = new Mock <IQueryHandler>();
     _controller       = new ParticipantsController(_queryHandlerMock.Object);
 }
 public ParticipantsControllerTests()
 {
     mockRepo   = new MockParticipantRepository();
     controller = new ParticipantsController(mockRepo);
 }