コード例 #1
0
        public void When_GetById_not_existing_Should_return_Null()
        {
            var channelId          = "rtp1";
            var programServiceMock = new Mock <IProgramsService>();

            programServiceMock.Setup(c => c.GetAll()).Returns(GetProgramsList(channelId));

            var manager = new ProgramsManager(programServiceMock.Object);

            var result = manager.GetById("program10");

            Assert.IsNull(result);
        }
コード例 #2
0
        public void When_GetProgramsGrouped_Should_return_GroupPrograms()
        {
            var channelId          = "rtp1";
            var programServiceMock = new Mock <IProgramsService>();

            programServiceMock.Setup(c => c.GetAll()).Returns(GetProgramsList(channelId));

            var manager = new ProgramsManager(programServiceMock.Object);

            var result = manager.GetAllGroupByChannel();

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Count() == 2);
        }
コード例 #3
0
        public void When_GetById_Should_return_Program()
        {
            var channelId          = "rtp1";
            var programServiceMock = new Mock <IProgramsService>();

            programServiceMock.Setup(c => c.GetAll()).Returns(GetProgramsList(channelId));

            var manager = new ProgramsManager(programServiceMock.Object);

            var result = manager.GetById("program3");

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Id.Equals("program3"));
        }
コード例 #4
0
        public void When_GetByChannel_with_SkipTake_Should_return_all_programs_from_Channel_filtered()
        {
            var channelId          = "rtp1";
            var programServiceMock = new Mock <IProgramsService>();

            programServiceMock.Setup(c => c.GetAll()).Returns(GetProgramsList(channelId));

            var manager = new ProgramsManager(programServiceMock.Object);

            var result = manager.GetByChannelId(channelId, 0, 1);

            Assert.IsNotNull(result);
            Assert.IsTrue(result.Count == 1);
            Assert.IsTrue(result.First().ChannelId.Equals(channelId));
        }
コード例 #5
0
        public TestData[] GetTests()
        {
            var tokenString = Request.Headers["Authorization"];
            var token       = new TokenData(tokenString);

            if (!AuthManager.ValidateAuthToken(token))
            {
                Response.StatusCode = (int)HttpStatusCode.NetworkAuthenticationRequired;
                return(null);
            }
            if (!UsersManager.GetUser(token).HasRoot(RootEnum.Candidate))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return(null);
            }

            var candidateId = UsersManager.GetUser(token).Id;

            return(ProgramsManager.GetCandidateTests(candidateId));
        }
コード例 #6
0
        public void CreateTest([FromBody] TestData testData)
        {
            var tokenString = Request.Headers["Authorization"];
            var token       = new TokenData(tokenString);

            if (!AuthManager.ValidateAuthToken(token))
            {
                Response.StatusCode = (int)HttpStatusCode.NetworkAuthenticationRequired;
                return;
            }
            if (!UsersManager.GetUser(token).HasRoot(RootEnum.Manager))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return;
            }


            TestsManager.CreateTest(testData);
            var assigningData = new TestAssigningData();

            assigningData.ProgramId = testData.ProgramId;
            assigningData.TestId    = testData.TestId;
            ProgramsManager.AssignTestToProgram(assigningData);
        }
コード例 #7
0
        public void Test()
        {
            //Default Test User Creation
            {
                var token = AuthManager.RegisterUser(new RegistrationData("user", "password")
                {
                    RootType = RootEnum.Candidate
                });

                TestsManager.CreateTest(new TestData
                {
                    Name      = "English",
                    Questions = new TestData.Question[2]
                    {
                        new TestData.Question
                        {
                            Answers = new TestData.Question.Answer[3]
                            {
                                new TestData.Question.Answer
                                {
                                    AnswerText = "A or b",
                                    IsCorrect  = true
                                },
                                new TestData.Question.Answer
                                {
                                    AnswerText = "nor A , nor b",
                                    IsCorrect  = true
                                },
                                new TestData.Question.Answer
                                {
                                    AnswerText = "A and B",
                                    IsCorrect  = false
                                }
                            },
                            QuestionText = "A or B is good letters?"
                        },
                        new TestData.Question
                        {
                            Answers = new TestData.Question.Answer[3]
                            {
                                new TestData.Question.Answer
                                {
                                    AnswerText = "A or C",
                                    IsCorrect  = true
                                },
                                new TestData.Question.Answer
                                {
                                    AnswerText = "nor A , nor C",
                                    IsCorrect  = true
                                },
                                new TestData.Question.Answer
                                {
                                    AnswerText = "A and C",
                                    IsCorrect  = false
                                }
                            },
                            QuestionText = "A or C is good letters?"
                        },
                    }
                });

                ProgramsManager.CreateProgram(new Model.Programs.ProgramData()
                {
                    Name   = "Bachelor 1st year",
                    Course = "Bachelor",
                });

                ProgramsManager.AssignTestToProgram(new TestAssigningData()
                {
                    ProgramId = ProgramsManager.Instance._programs.First().Id,
                    TestId    = TestsManager.Instance.Tests.First().TestId,
                });

                token = AuthManager.AuthUser(new AuthData("user", "password"));

                ProgramsManager.AssignCandidateToProgram(new UserAssigningData()
                {
                    CandidateId = UsersManager.GetUser(token).Id,
                    ProgramId   = ProgramsManager.Instance._programs.First().Id,
                });

                AuthManager.LogOutUser(token);
            }


            //Admin Creation
            {
                var token = AuthManager.RegisterUser(new RegistrationData("admin", "admin")
                {
                    RootType = RootEnum.Admin
                });

                AuthManager.LogOutUser(token);
            }

            //Manager Creation
            {
                var token = AuthManager.RegisterUser(new RegistrationData("manager", "manager")
                {
                    RootType = RootEnum.Manager
                });

                AuthManager.LogOutUser(token);
            }

            //Interviewer Creation
            {
                var token = AuthManager.RegisterUser(new RegistrationData("interviewer", "interviewer")
                {
                    RootType = RootEnum.Interviewer
                });

                AuthManager.LogOutUser(token);
            }
        }