コード例 #1
0
        public CategoryControl(MissionGeneratorCategory category, int yPosition, Action RefreshUITotal, Action RefreshLabels)
        {
            this.RefreshUI = RefreshUITotal;
            Title          = new Label()
            {
                Text      = category.CategoryName,
                Location  = new Point(5, yPosition),
                Font      = new Font("Arial", 16),
                AutoSize  = true,
                Cursor    = Cursors.Hand,
                ForeColor = Color.FromArgb(51, 51, 51),
            };
            Title.Click += (s, e) =>
            {
                if (Hidden)
                {
                    Show();
                }
                else
                {
                    Hide();
                }
            };

            yPosition += intervalBetweenRaws;

            foreach (var item in category.Missions)
            {
                yPosition += intervalBetweenRaws;
                RawControls.Add(new RawControls(item, yPosition));
                RawControls.Last().Numeric.ValueChanged += (s, e) => RefreshLabels();
                RawControls.Last().CheckBox.CheckedChanged += (s, e) => RefreshLabels();
            }
        }
コード例 #2
0
        public void MissionGenerator()
        {
            MissionGenerateExample generator = new MissionGenerateExample();

            #region check mission
            Assert.AreEqual(0, generator.NumOfMission);
            Assert.AreEqual(120, generator.TimeToSolveMission);
            Assert.AreEqual(MissionType.Theory, generator.TypeOfMission);
            Assert.AreEqual(5, generator.MaxNumInTest);
            #endregion
            MissionGeneratorCategory missionGeneratorCatagory = new MissionGeneratorCategory("Название категории заданий", new MissionGenerator[]
            {
                generator
            });
            TextMission generatedMission = missionGeneratorCatagory.Missions[0].Generate() as TextMission;

            Assert.AreEqual("Вопрос", generatedMission.Question);
            Assert.AreEqual("Ответ", generatedMission.Answer);
        }