Example #1
0
 public TestsController(
     ApplicationContext db,
     IWebHostEnvironment env,
     UserManager <ApplicationUser> userManager,
     TestsManager testsManager)
 {
     _db           = db;
     _env          = env;
     _userManager  = userManager;
     _testsManager = testsManager;
 }
Example #2
0
 /// <summary>
 /// При запуске Activity
 /// </summary>
 protected override void OnStart()
 {
     base.OnStart();
     new Task(() =>
     {
         System.Threading.Thread.Sleep(1000);
         TestsManager.Initialize(this);
         StartActivity(typeof(ActivityMain));
         Finish();
     }).Start();
 }
Example #3
0
        private void загрузитьТестToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                curTest    = TestsManager.GetTest(ofd.FileName);
                curQNumber = 0;
                refreshHeader();
                refreshProgress();
                refreshQuestion();
            }
        }
Example #4
0
        public static void DeleteTestFromProgram(TestAssigningData data)
        {
            if (!TestsManager.IsTestExist(data.TestId))
            {
                throw new Exception("Test doesn't exists!");
            }


            if (Instance._testAssigningToPrograms.ContainsKey(data.ProgramId))
            {
                Instance._testAssigningToPrograms[data.ProgramId].Remove(data);
            }
        }
        public static void Main(string[] args)
        {
            //Load specs
            (FileInfo, FileInfo)? s = SpecificationsManager.GetSpecification("test-002");
            FileStream ts = s.Value.Item1.OpenRead();
            FileStream gs = s.Value.Item2.OpenRead();

            //Parse tokens
            TokenSchemeCollection t = new TokenSchemeCollection();

            t.ReadFromStream(ts);

            //Parse grammar
            GrammarSchemeCollection g = new GrammarSchemeCollection();

            g.ReadFromStream(gs);

            //Load test
            FileInfo   test       = TestsManager.GetTest("test_ast");
            FileStream testStream = test.OpenRead();

            //Parse test File
            Parser1 p1 = new Parser1()
            {
                BaseTokens = t, BaseGrammar = g
            };
            TokenCollection    tokens  = p1.ParseTokensFromStream(testStream);
            Stack <int>        history = p1.ParseHistory(tokens);
            AbstractSyntaxTree ast     = new AbstractSyntaxTree();

            ast.CreateTree(g, tokens, ReverseHistory(history));

            Console.WriteLine(ast);
            ast.BreakDownLists();
            Console.WriteLine(ast);

            //Parse to abstract
            CFLRuntime     rt      = new CFLRuntime();
            ProgramBuilder builder = new ProgramBuilder(rt);
            Container      cnt     = builder.BuildFromTree(ast);

            //Console.WriteLine("Calculate sum of n squares with CFL [Enter integer]:");
            //object n = Console.ReadLine().EvaluateMathExpression();
            //Console.WriteLine(rt.Execute("sum_n_squares", ("n", n)));

            Console.WriteLine("Count number of prime numbers below n with CFL [Enter integer n]:");
            object n = Console.ReadLine().EvaluateMathExpression();

            Console.WriteLine(rt.Execute("primes_below_n", ("n", n)));
        }
        private void btnAutorization_Click(object sender, EventArgs e)
        {
            User user = TestsManager.Autorization(txtLogin.Text, txtPassword.Text);

            if (user != null)
            {
                this.Hide();
                frmMain fMain = new frmMain(user);
                fMain.ShowDialog();
            }
            else
            {
                MessageBox.Show("Неверное имя пользователя или пароль!",
                                "Ошибка входа", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #7
0
        public static void AssignTestToProgram(TestAssigningData data)
        {
            if (!TestsManager.IsTestExist(data.TestId))
            {
                throw new Exception("Test doesn't exists!");
            }

            if (!Instance._testAssigningToPrograms.ContainsKey(data.ProgramId))
            {
                Instance._testAssigningToPrograms.Add(data.ProgramId, new List <TestAssigningData>());
            }

            if (!Instance._testAssigningToPrograms[data.ProgramId].Contains(data))
            {
                Instance._testAssigningToPrograms[data.ProgramId].Add(data);
            }
        }
Example #8
0
    // INITIALIZE: -----------------------------------------------------------------------------------------------------

    public void Awake()
    {
        TestsManager._instance = this;

        this.AddMessage("Console");

        SimpleGesture.OnTap(this.CallbackTap);
        SimpleGesture.OnDoubleTap(this.CallbackDoubleTap);

        SimpleGesture.On4AxisSwipeDown(this.CallbackSwipeDown);
        SimpleGesture.On4AxisSwipeUp(this.CallbackSwipeUp);

        SimpleGesture.WhilePanning(this.CallbackPanning);
        SimpleGesture.WhilePinching(this.CallbackPinching);

        SimpleGesture.WhileStretching(this.CallbackStretching);
        SimpleGesture.WhileTwisting(this.CallbackTwisting);
    }
Example #9
0
    // INITIALIZE: -----------------------------------------------------------------------------------------------------

    public void Awake()
    {
        TestsManager._instance      = this;
        Application.targetFrameRate = 60;

        this.AddMessage("Console");
        SimpleGesture.OnTap(this.CallbackTap);
        SimpleGesture.On4AxisFlickSwipeUp(this.CallbackSwipeUp);
        SimpleGesture.On4AxisFlickSwipeDown(this.CallbackSwipeDown);
        SimpleGesture.On4AxisFlickSwipeLeft(this.CallbackSwipeLeft);
        SimpleGesture.OnCircle(this.CallbackCircle);
        SimpleGesture.OnZigZag(this.CallbackZigZag);

        SimpleGesture.WhilePanning(this.CallbackPanning);
        SimpleGesture.WhilePinching(this.CallbackPinching);
        SimpleGesture.WhileStretching(this.CallbackStretching);
        SimpleGesture.WhileTwisting(this.CallbackTwisting);
    }
        public void SubmitAnswers([FromBody] TestResultsData testResults)
        {
            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.Candidate))
            {
                Response.StatusCode = (int)HttpStatusCode.Forbidden;
                return;
            }

            TestsManager.SubmitTestResult(UsersManager.GetUser(token).Id, testResults);
        }
Example #11
0
        /// <summary>
        /// Выполнить начальную инициализацию
        /// </summary>
        public static void Initialize([NotNull] Activity activity)
        {
            if (_single == null)
            {
                _single = new TestsManager(activity);
            }
            var currentBook = Helpers.ReadDiscContent(CURRENT_BOOK_FILE);

            if (currentBook != null)
            {
                _single.SetCurrentBookByCaption(currentBook, false);
                var currentChapter = Helpers.ReadDiscContent(CURRENT_CHAPTER_FILE);
                if (currentChapter != null)
                {
                    _single.CurrentBook.SetCurrentChapterByCaption(currentChapter, false);
                }
            }
            _single.SetCurrentTestKind(int.TryParse(Helpers.ReadDiscContent(CURRENT_TEST_KIND_FILE), out var testKindValue) ?
                                       (TestKind)testKindValue : default(TestKind), false);
        }
Example #12
0
 private void btnRegister_Click(object sender, EventArgs e)
 {
     if (string.IsNullOrEmpty(txtUserName.Text))
     {
         MessageBox.Show("Заполните имя пользователя!");
     }
     else if (string.IsNullOrEmpty(txtUserLogin.Text))
     {
         MessageBox.Show("Заполните логин пользователя!");
     }
     else if (string.IsNullOrEmpty(txtUserPassword.Text))
     {
         MessageBox.Show("Заполните пароль!");
     }
     else
     {
         User newUser = new User(
             txtUserLogin.Text,
             txtUserName.Text,
             txtUserPassword.Text);
         if (TestsManager.RegisterUser(newUser))
         {
             foreach (Control ctr in grbRegister.Controls)
             {
                 if (ctr is TextBox)
                 {
                     (ctr as TextBox).Text = string.Empty;
                 }
             }
             MessageBox.Show("Пользователь успешно зарегистрирован!",
                             "Регистрация успешна", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
         else
         {
             MessageBox.Show("Такой пользователь уже существует!\n" +
                             "Войдите с телефоном и паролем!", "Пользователь есть",
                             MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
        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);
        }
        static void Main(string[] args)
        {
            //Load specs
            (FileInfo, FileInfo)? s = SpecificationsManager.GetSpecification("test-002");
            FileStream ts = s.Value.Item1.OpenRead();
            FileStream gs = s.Value.Item2.OpenRead();

            //Parse tokens
            TokenSchemeCollection t = new TokenSchemeCollection();

            t.ReadFromStream(ts);

            //Parse grammar
            GrammarSchemeCollection g = new GrammarSchemeCollection();

            g.ReadFromStream(gs);

            //Load test
            FileInfo   test       = TestsManager.GetTest("test_ast");
            FileStream testStream = test.OpenRead();

            //Parse test File
            Parser1 p1 = new Parser1()
            {
                BaseTokens = t, BaseGrammar = g
            };
            TokenCollection    tokens  = p1.ParseTokensFromStream(testStream);
            Stack <int>        history = p1.ParseHistory(tokens);
            AbstractSyntaxTree ast     = new AbstractSyntaxTree();

            ast.CreateTree(g, tokens, ReverseHistory(history));

            Console.WriteLine(ast);
            ast.BreakDownLists();
            Console.WriteLine(ast);
        }
Example #15
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                GrabUserInput();
                var manager = new TestsManager();
                if (Mode == FormMode.CreateNew)
                {
                    manager.Create(Tests);
                }
                else
                {
                    manager.Update(Tests);
                }

                MyForms.GetForm <TestListForm>().LoadData();//This code instantly refreshes data everytime users hit save button
                MessageBox.Show("Saved!");
                Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #16
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="manager"></param>
 public MyTestService(TestsManager manager)
 {
     _manager = manager;
 }
Example #17
0
 public static TestData[] GetTests(int programId)
 => TestsManager.GetTests(Instance._testAssigningToPrograms[programId].Select(n => n.TestId).ToArray());
Example #18
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="manager"></param>
 public TestController(TestsManager manager)
 {
     _manager = manager;
 }
Example #19
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);
            }
        }
Example #20
0
 public TestsController(LimsContext db, TestsManager tests, ILoggerFactory loggerFactory)
 {
     this.Db     = db;
     this.tests  = tests;
     this.logger = loggerFactory.CreateLogger("TestsController Log");
 }