예제 #1
0
        public void RemainingTimeTest()
        {
            var brainstormingDalMock = BrainstormingDalMock(1);

            brainstormingDalMock.SetupSequence(req => req.GetRemainingTime(It.IsAny <string>(), It.IsAny <string>()))
            .Returns(TimeSpan.FromSeconds(10))
            .Returns(TimeSpan.FromSeconds(5));
            var teamDalMock = TeamDalMock();

            var dalMock = new Mock <IDalService>();

            dalMock.Setup(serv => serv.BrainstormingDalService).Returns(brainstormingDalMock.Object);
            dalMock.Setup(serv => serv.TeamDalService).Returns(teamDalMock.Object);

            var brainstormingService = new BrainstormingService(
                _logMock,
                dalMock.Object,
                BrainstormingModelFactory.CreateContext(1),
                new BrainstormingModel());

            brainstormingService.StartBusinessService();
            Thread.Sleep(1100);
            var remainingTime = brainstormingService.RemainingTime;

            Thread.Sleep(1100);
            Assert.IsTrue(remainingTime > brainstormingService.RemainingTime);
        }
예제 #2
0
        public void TestBrainstormingDto()
        {
            var targetFinding = new BrainstormingFinding()
            {
                Id                 = "123",
                BaseRoundTime      = 1,
                BrainSheets        = BrainstormingModelFactory.CreateBrainSheets(),
                CurrentRound       = 1,
                Name               = "TestFinding",
                NrOfIdeas          = 4,
                ProblemDescription = "Alterpalaber",
                TeamId             = "abc"
            };
            var inputFinding = new BrainstormingFindingDto()
            {
                Id                 = "123",
                BaseRoundTime      = 1,
                BrainSheets        = new List <BrainSheetDto>(),
                CurrentRound       = 1,
                Name               = "TestFinding",
                NrOfIdeas          = 4,
                ProblemDescription = "Alterpalaber",
                TeamId             = "abc"
            };

            var outputBo = _mapper.Map <BrainstormingFinding>(inputFinding);

            Assert.AreEqual(targetFinding.Id, outputBo.Id);
            Assert.AreEqual(targetFinding.BaseRoundTime, outputBo.BaseRoundTime);
            Assert.AreEqual(targetFinding.CurrentRound, outputBo.CurrentRound);
            Assert.AreEqual(targetFinding.Name, outputBo.Name);
            Assert.AreEqual(targetFinding.NrOfIdeas, outputBo.NrOfIdeas);
            Assert.AreEqual(targetFinding.ProblemDescription, outputBo.ProblemDescription);
            Assert.AreEqual(targetFinding.TeamId, outputBo.TeamId);
        }
예제 #3
0
        private static Mock <IBrainstormingDalService> BrainstormingDalMock(int initRound)
        {
            var brainstormingDalMock = new Mock <IBrainstormingDalService>();

            brainstormingDalMock.SetupSequence(request => request.GetFinding(It.IsAny <string>())).
            Returns(BrainstormingModelFactory.CreateFinding(initRound));
            return(brainstormingDalMock);
        }
예제 #4
0
        private static Mock <ITeamDalService> TeamDalMock()
        {
            var teamDalMock = new Mock <ITeamDalService>();

            teamDalMock.Setup(req => req.GetModeratorByTeamId(It.IsAny <string>()))
            .Returns(BrainstormingModelFactory.CreateModerator());
            return(teamDalMock);
        }
예제 #5
0
        public void EndedStateTest()
        {
            var brainstormingDalMock = BrainstormingDalMock(-1);
            var teamDalMock          = TeamDalMock();

            var dalMock = new Mock <IDalService>();

            dalMock.Setup(serv => serv.BrainstormingDalService).Returns(brainstormingDalMock.Object);
            dalMock.Setup(serv => serv.TeamDalService).Returns(teamDalMock.Object);

            var brainstormingService = new BrainstormingService(
                _logMock,
                dalMock.Object,
                BrainstormingModelFactory.CreateContext(-1),
                new BrainstormingModel());

            brainstormingService.StartBusinessService();
            Assert.IsTrue(brainstormingService.IsEnded);
            Assert.IsFalse(brainstormingService.IsWaiting);
            Assert.IsFalse(brainstormingService.IsRunning);
        }
예제 #6
0
        public void StartRoundTest()
        {
            var brainstormingDalMock = BrainstormingDalMock(1);
            var teamDalMock          = TeamDalMock();

            var dalMock = new Mock <IDalService>();

            dalMock.Setup(serv => serv.BrainstormingDalService).Returns(brainstormingDalMock.Object);
            dalMock.Setup(serv => serv.TeamDalService).Returns(teamDalMock.Object);

            var brainstormingService = new BrainstormingService(
                _logMock,
                dalMock.Object,
                BrainstormingModelFactory.CreateContext(0),
                new BrainstormingModel());

            brainstormingService.StartBusinessService();
            Assert.IsTrue(brainstormingService.IsWaiting);
            Thread.Sleep(4500);
            Assert.IsTrue(brainstormingService.IsRunning);
        }
예제 #7
0
        private BrainstormingService BasicServiceSetup()
        {
            var brainstormingDalMock = new Mock <IBrainstormingDalService>();

            brainstormingDalMock.SetupSequence(request => request.GetFinding(It.IsAny <string>()))
            .Returns(BrainstormingModelFactory.CreateFinding(1))
            .Returns(BrainstormingModelFactory.CreateFinding(-1));

            brainstormingDalMock.Setup(req => req.UpdateSheet(It.IsAny <string>(), It.IsAny <BrainSheet>()))
            .Returns(true);

            var participantDalMock = new Mock <IParticipantDalService>();
            var teamDalMock        = TeamDalMock();

            var model = new BrainstormingModel()
            {
                BrainSheets = new ObservableCollection <BrainSheet>()
            };
            var context = BrainstormingModelFactory.CreateContext(1);

            context.CurrentFinding.BrainSheets = new List <BrainSheet>()
            {
                new BrainSheet()
            };

            var dalMock = new Mock <IDalService>();

            dalMock.Setup(s => s.BrainstormingDalService).Returns(brainstormingDalMock.Object);
            dalMock.Setup(s => s.ParticipantDalService).Returns(participantDalMock.Object);
            dalMock.Setup(s => s.TeamDalService).Returns(teamDalMock.Object);

            var brainstormingService = new BrainstormingService(
                _logMock,
                dalMock.Object,
                context,
                model
                );

            return(brainstormingService);
        }